#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
Если ДанныеЗаполнения <> Неопределено Тогда
ДокументыОснованияМассив = Новый Массив;
Если ТипЗнч(ДанныеЗаполнения) = Тип("Структура") И ДанныеЗаполнения.Свойство("ДокументОснование") Тогда
ДокументыОснованияМассив.Добавить(ДанныеЗаполнения.ДокументОснование);
Иначе
ДокументыОснованияМассив.Добавить(ДанныеЗаполнения);
КонецЕсли;
Документы.ТранспортнаяНакладная.СоздатьТранспортныеНакладные(ДокументыОснованияМассив,,ЭтотОбъект);
КонецЕсли;
ИнициализироватьДокумент(ДанныеЗаполнения);
КонецПроцедуры
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
ОбщегоНазначенияУТ.ПроверитьНаличиеДублейСтрокТЧ(ЭтотОбъект, "ДокументыОснования", "ДокументОснование", Отказ);
РезультатПроверки = Документы.ТранспортнаяНакладная.ПроверитьДокументыОснования(ЭтотОбъект);
Если РезультатПроверки.ОбъектыПоКоторымСоздаватьТранспортныеНакладныеНельзя.Количество() > 0 Тогда
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(ЭтотОбъект);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#Область ИнициализацияИЗаполнение
Процедура ИнициализироватьДокумент(ДанныеЗаполнения = Неопределено)
Если Не ЗначениеЗаполнено(Дата) Тогда
Дата = ТекущаяДатаСеанса();
КонецЕсли;
Если Не ЗначениеЗаполнено(Перевозчик)
И ЗначениеЗаполнено(ПеревозчикПартнер) Тогда
Перевозчик = ПартнерыИКонтрагенты.ПолучитьКонтрагентаПартнераПоУмолчанию(
ПеревозчикПартнер);
КонецЕсли;
Если Не ЗначениеЗаполнено(БанковскийСчетЗаказчикаПеревозки) Тогда
Если ЗначениеЗаполнено(ЗаказчикПеревозки) Тогда
Если ТипЗнч(ЗаказчикПеревозки) = Тип("СправочникСсылка.Контрагенты") Тогда
БанковскийСчетЗаказчикаПеревозки = Справочники.БанковскиеСчетаКонтрагентов.ПолучитьБанковскийСчетПоУмолчанию(ЗаказчикПеревозки);
Иначе
СтруктураПараметров = ДенежныеСредстваСервер.ПараметрыЗаполненияБанковскогоСчетаОрганизацииПоУмолчанию();
СтруктураПараметров.Организация = ЗаказчикПеревозки;
БанковскийСчетЗаказчикаПеревозки = ЗначениеНастроекПовтИсп.ПолучитьБанковскийСчетОрганизацииПоУмолчанию(СтруктураПараметров);
КонецЕсли;
КонецЕсли;
КонецЕсли;
Если Не ЗначениеЗаполнено(БанковскийСчетПлательщика) Тогда
Если ЗначениеЗаполнено(Плательщик) Тогда
Если ТипЗнч(Плательщик) = Тип("СправочникСсылка.Контрагенты") Тогда
БанковскийСчетПлательщика = Справочники.БанковскиеСчетаКонтрагентов.ПолучитьБанковскийСчетПоУмолчанию(Плательщик);
Иначе
СтруктураПараметров = ДенежныеСредстваСервер.ПараметрыЗаполненияБанковскогоСчетаОрганизацииПоУмолчанию();
СтруктураПараметров.Организация = Плательщик;
БанковскийСчетПлательщика = ЗначениеНастроекПовтИсп.ПолучитьБанковскийСчетОрганизацииПоУмолчанию(СтруктураПараметров);
КонецЕсли;
КонецЕсли;
КонецЕсли;
Если Не ЗначениеЗаполнено(БанковскийСчетПеревозчика) Тогда
Если ЗначениеЗаполнено(Перевозчик) Тогда
БанковскийСчетПеревозчика = Справочники.БанковскиеСчетаКонтрагентов.ПолучитьБанковскийСчетПоУмолчанию(Перевозчик);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#КонецОбласти
#КонецЕсли