Код из модуля объекта #Если Клиент Тогда Функция ПечатьТН(подпись) Если не ЭтотОбъект.Ссылка.Проведен тогда возврат Новый ТабличныйДокумент; конецесли; ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ТН"; Макет = ПолучитьМакет("ТН"); Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос.Текст ="ВЫБРАТЬ | ВложенныйЗапрос.Ссылка.Номер КАК Номер, | ВложенныйЗапрос.Ссылка.Дата КАК Дата, | ВЫБОР | КОГДА ВложенныйЗапрос.Ссылка.Исполнитель = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ИЛИ ВложенныйЗапрос.Ссылка.ВидДокумента = ЗНАЧЕНИЕ(Перечисление.ВидЗаявокНаТранспортноеСредство.ДоговорЗаявка) | ИЛИ ВложенныйЗапрос.Ссылка.ВидДокумента = ЗНАЧЕНИЕ(Перечисление.ВидЗаявокНаТранспортноеСредство.Заявка) | ТОГДА ВложенныйЗапрос.Ссылка.Организация | ИНАЧЕ ВложенныйЗапрос.Ссылка.Исполнитель | КОНЕЦ КАК перевозчик, | ВложенныйЗапрос.Ссылка.Ставка, | ВложенныйЗапрос.Ссылка.Водитель, | ВложенныйЗапрос.ПогрузкаАдрес, | ВложенныйЗапрос.ПогрузкаДата, | ВложенныйЗапрос.ПогрузкаДата2, | ВложенныйЗапрос.ПогрузкаВремя, | ВложенныйЗапрос.ПогрузкаФИО, | ВложенныйЗапрос.ПогрузкаТелефон, | ВложенныйЗапрос.РазгрузкаАдрес, | ВЫБОР | КОГДА ВложенныйЗапрос.РазгрузкаЮрЛицо.ЮрФизЛицо = ЗНАЧЕНИЕ(перечисление.ЮрФизЛицо.ЮрЛицо) | ТОГДА ВложенныйЗапрос.РазгрузкаЮрЛицо | ИНАЧЕ """" | КОНЕЦ КАК РазгрузкаЮрЛицоЮР, | ВЫБОР | КОГДА ВложенныйЗапрос.РазгрузкаЮрЛицо.ЮрФизЛицо = ЗНАЧЕНИЕ(перечисление.ЮрФизЛицо.ФизЛицо) | ТОГДА ВложенныйЗапрос.РазгрузкаЮрЛицо | ИНАЧЕ """" | КОНЕЦ КАК РазгрузкаЮрЛицоФИЗ, | ВложенныйЗапрос.РазгрузкаДата, | ВложенныйЗапрос.РазгрузкаДата2, | ВложенныйЗапрос.РазгрузкаВремя, | ВложенныйЗапрос.РазгрузкаФИО, | ВложенныйЗапрос.РазгрузкаТелефон, | ВложенныйЗапрос.Накладная КАК Накладная, | ВложенныйЗапрос.Доверенность, | ВложенныйЗапрос.Ссылка.Ответственный, | ВложенныйЗапрос.Ссылка.Контрагент, | ВЫБОР | КОГДА ВложенныйЗапрос.Ссылка.Плательщик = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ВложенныйЗапрос.Ссылка.Контрагент | ИНАЧЕ ВложенныйЗапрос.Ссылка.Плательщик | КОНЕЦ КАК Плательщик, | ВложенныйЗапрос.Ссылка.Автомобиль.Автомобиль, | ВложенныйЗапрос.Ссылка.Автомобиль.ГосНомер, | ВложенныйЗапрос.Ссылка.Полуприцеп.ТипКузова, | ВложенныйЗапрос.Ссылка.Полуприцеп.ГосНомер, | ВложенныйЗапрос.ПогрузкаЮрЛицо, | ВЫБОР | КОГДА ВложенныйЗапрос.ПогрузкаЮрЛицо.ЮрФизЛицо = ЗНАЧЕНИЕ(перечисление.ЮрФизЛицо.ЮрЛицо) | ТОГДА ВложенныйЗапрос.ПогрузкаЮрЛицо | ИНАЧЕ """" | КОНЕЦ КАК ПогрузкаЮрЛицоЮР, | ВЫБОР | КОГДА ВложенныйЗапрос.ПогрузкаЮрЛицо.ЮрФизЛицо = ЗНАЧЕНИЕ(перечисление.ЮрФизЛицо.ФизЛицо) | ТОГДА ВложенныйЗапрос.ПогрузкаЮрЛицо | ИНАЧЕ """" | КОНЕЦ КАК ПогрузкаЮрЛицоФИЗ, | ВложенныйЗапрос.ПогрузкаОП, | ВложенныйЗапрос.РазгрузкаОП |ИЗ | (ВЫБРАТЬ | ВЫБОР | КОГДА ВложенныйЗапрос.Ссылка ЕСТЬ NULL | ТОГДА ВложенныйЗапрос1.Ссылка | ИНАЧЕ ВложенныйЗапрос.Ссылка | КОНЕЦ КАК Ссылка, | ВложенныйЗапрос.Адрес КАК ПогрузкаАдрес, | ВложенныйЗапрос.ЮрЛицо КАК ПогрузкаЮрЛицо, | ВложенныйЗапрос.Дата КАК ПогрузкаДата, | ВложенныйЗапрос.Дата2 КАК ПогрузкаДата2, | ВложенныйЗапрос.Время КАК ПогрузкаВремя, | ВложенныйЗапрос.ФИО КАК ПогрузкаФИО, | ВложенныйЗапрос.Телефон КАК ПогрузкаТелефон, | ВложенныйЗапрос1.Адрес КАК РазгрузкаАдрес, | ВложенныйЗапрос1.ЮрЛицо КАК РазгрузкаЮрЛицо, | ВложенныйЗапрос1.Дата КАК РазгрузкаДата, | ВложенныйЗапрос1.Дата2 КАК РазгрузкаДата2, | ВложенныйЗапрос1.Время КАК РазгрузкаВремя, | ВложенныйЗапрос1.ФИО КАК РазгрузкаФИО, | ВложенныйЗапрос1.Телефон КАК РазгрузкаТелефон, | ВЫБОР | КОГДА ВложенныйЗапрос.Накладная ЕСТЬ NULL | ТОГДА ВложенныйЗапрос1.Накладная | ИНАЧЕ ВложенныйЗапрос.Накладная | КОНЕЦ КАК Накладная, | ВЫБОР | КОГДА ВложенныйЗапрос.Доверенность ЕСТЬ NULL | ТОГДА ВложенныйЗапрос1.Доверенность | ИНАЧЕ ВложенныйЗапрос.Доверенность | КОНЕЦ КАК Доверенность, | ВложенныйЗапрос.ОП КАК ПогрузкаОП, | ВложенныйЗапрос1.ОП КАК РазгрузкаОП | ИЗ | (ВЫБРАТЬ | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.НомерСтроки КАК НомерСтроки, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.тип КАК тип, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Накладная = """" | ТОГДА ""б/н"" | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Накладная | КОНЕЦ КАК Накладная, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Адрес КАК Адрес, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП | КОНЕЦ | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец | КОНЕЦ КАК ЮрЛицо, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Дата КАК Дата, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Дата2 КАК Дата2, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Время = """" | ТОГДА ""---"" | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Время | КОНЕЦ КАК Время, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ФИО КАК ФИО, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Телефон КАК Телефон, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Доверенность КАК Доверенность, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Ссылка КАК Ссылка, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец | КОНЕЦ | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП | КОНЕЦ КАК ОП | ИЗ | Документ.ЗаявкаНаТранспортноеСредство.ЗагрузкаВыгрузка КАК ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка | ГДЕ | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Ссылка = &ТекущийДокумент | И ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.тип = ЗНАЧЕНИЕ(Перечисление.ЗагрузкаРазгрузка.Погрузка)) КАК ВложенныйЗапрос | ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.НомерСтроки КАК НомерСтроки, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.тип КАК тип, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Накладная = """" | ТОГДА ""б/н"" | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Накладная | КОНЕЦ КАК Накладная, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Адрес КАК Адрес, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП | КОНЕЦ | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец | КОНЕЦ КАК ЮрЛицо, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Дата КАК Дата, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Дата2 КАК Дата2, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Время = """" | ТОГДА ""---"" | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Время | КОНЕЦ КАК Время, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ФИО КАК ФИО, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Телефон КАК Телефон, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Доверенность КАК Доверенность, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Ссылка КАК Ссылка, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец | КОНЕЦ | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП | КОНЕЦ КАК ОП | ИЗ | Документ.ЗаявкаНаТранспортноеСредство.ЗагрузкаВыгрузка КАК ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка | ГДЕ | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Ссылка = &ТекущийДокумент | И ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.тип = ЗНАЧЕНИЕ(Перечисление.ЗагрузкаРазгрузка.Разгрузка)) КАК ВложенныйЗапрос1 | ПО ВложенныйЗапрос.НомерСтроки <> ВложенныйЗапрос1.НомерСтроки | И ВложенныйЗапрос.Накладная = ВложенныйЗапрос1.Накладная) КАК ВложенныйЗапрос | |УПОРЯДОЧИТЬ ПО | Накладная"; Шапка = Запрос.Выполнить().Выбрать(); первыйраз = истина; Пока Шапка.Следующий() цикл Если не первыйраз тогда ПереводСтрки = Макет.ПолучитьОбласть("ПереводСтрки"); ТабДокумент.Вывести(ПереводСтрки); КонецЕсли; первыйраз = ложь; ОбластьМакета = Макет.ПолучитьОбласть("_01_"); ОбластьМакета.Параметры.Заполнить(Шапка); ДанныеОФизЛице = ОбщегоНазначения.ДанныеФизЛица(справочники.Организации.ПустаяСсылка(),Шапка.СсылкаВодитель, Шапка.Дата); ОбластьМакета.Параметры.ФамилияИмяОтчествоДоверенного =СокрЛП(ДанныеОФизЛице.Фамилия) + " " + СокрЛП(ДанныеОФизЛице.Имя) + " " + СокрЛП(ДанныеОФизЛице.Отчество); Запрос5 = новый запрос; Запрос5.Текст = "ВЫБРАТЬ | ЗаявкаНаТранспортноеСредствоГруз.НаименованиеИХарактерГруза, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.КоличествоМест) КАК КоличествоМест, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.ВесТонн) КАК ВесТонн, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.ОбъемМ) КАК ОбъемМ, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.СтоимостьДоставкиВТН) КАК СтоимостьДоставкиВТН |ИЗ | Документ.ЗаявкаНаТранспортноеСредство.Груз КАК ЗаявкаНаТранспортноеСредствоГруз |ГДЕ | ЗаявкаНаТранспортноеСредствоГруз.Ссылка = &ТекущийДокумент | И ЗаявкаНаТранспортноеСредствоГруз.Накладная = &Накладная | |СГРУППИРОВАТЬ ПО | ЗаявкаНаТранспортноеСредствоГруз.НаименованиеИХарактерГруза"; Запрос5.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос5.УстановитьПараметр("Накладная",Шапка.Накладная ); рез5 = Запрос5.Выполнить().Выбрать(); Если Рез5.Количество() = 0 тогда Запрос5.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос5.УстановитьПараметр("Накладная",""); рез5 = Запрос5.Выполнить().Выбрать(); КонецЕсли; ИмяГруза =""; МестУпаковкаНаПечать =0; ВесНаПечать =0; ОбъемНаПечать =0; СтоимостьТН = 0; Пока рез5.Следующий() цикл ИмяГруза = ИмяГруза + " "+ рез5.НаименованиеИХарактерГруза; МестУпаковкаНаПечать = МестУпаковкаНаПечать + рез5.КоличествоМест; ВесНаПечать = ВесНаПечать + рез5.ВесТонн; ОбъемНаПечать = ОбъемНаПечать + рез5.ОбъемМ; СтоимостьТН = СтоимостьТН + рез5.СтоимостьДоставкиВТН; КонецЦикла; ОбластьМакета.Параметры.ИмяГруза = СокрЛП(ИмяГруза); ОбластьМакета.Параметры.МестУпаковкаНаПечать = ?(МестУпаковкаНаПечать=0,"",МестУпаковкаНаПечать); ОбластьМакета.Параметры.ВесНаПечать = ?(ВесНаПечать=0,"","" + ВесНаПечать + " Т."); ОбластьМакета.Параметры.ОбъемНаПечать = ?(ОбъемНаПечать=0,"","" + ОбъемНаПечать + "М&#179;"); ПогрузкаЮрЛицоФИЗ = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.ПогрузкаЮрЛицоФИЗ, Шапка.Дата); ПогрузкаЮрЛицоЮР = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.ПогрузкаЮрЛицоЮР, Шапка.Дата); РазгрузкаЮрЛицоФИЗ = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.РазгрузкаЮрЛицоФИЗ, Шапка.Дата); РазгрузкаЮрЛицоЮР = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.РазгрузкаЮрЛицоЮР, Шапка.Дата); ПогрузкаОП = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.ПогрузкаОП, Шапка.Дата); РазгрузкаОП = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.РазгрузкаОП, Шапка.Дата); ОбластьМакета.Параметры.ПогрузкаЮрЛицоФИЗ1 = ФормированиеПечатныхФорм.ОписаниеОрганизации(ПогрузкаЮрЛицоФИЗ, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); ОбластьМакета.Параметры.ПогрузкаЮрЛицоЮР1 = ФормированиеПечатныхФорм.ОписаниеОрганизации(ПогрузкаЮрЛицоЮР, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); ОбластьМакета.Параметры.РазгрузкаЮрЛицоФИЗ1 = ФормированиеПечатныхФорм.ОписаниеОрганизации(РазгрузкаЮрЛицоФИЗ, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); ОбластьМакета.Параметры.РазгрузкаЮрЛицоЮР1 = ФормированиеПечатныхФорм.ОписаниеОрганизации(РазгрузкаЮрЛицоЮР, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); ОбластьМакета.Параметры.ПогрузкаОП = ФормированиеПечатныхФорм.ОписаниеОрганизации(ПогрузкаОП, "НаименованиеДляПечатныхФорм"); ОбластьМакета.Параметры.РазгрузкаОП = ФормированиеПечатныхФорм.ОписаниеОрганизации(РазгрузкаОП, "НаименованиеДляПечатныхФорм"); ТабДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("_02_"); ОбластьМакета.Параметры.Заполнить(Шапка); //СведенияООрганизация = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.ДатаДокумента); СведенияОКонтрагент = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.ПогрузкаЮрЛицо, Шапка.Дата); СведенияОИсполнитель = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.перевозчик, Шапка.Дата); СведенияОПлательщик = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Плательщик, Шапка.Дата); Если Шапка.перевозчик.ЮрФизЛицо = перечисления.ЮрФизЛицо.ФизЛицо Тогда ОбластьМакета.Параметры.СведенияОИсполнитель01 = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОИсполнитель, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); Иначе ОбластьМакета.Параметры.СведенияОИсполнитель02 = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОИсполнитель, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); КонецЕсли; //ОбластьМакета.Параметры.СведенияОПлательщик = ФормированиеПечатныхФорм.ОписаниеОрганизации( // СведенияОПлательщик, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); ОбластьМакета.Параметры.СведенияОКонтрагент2 = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОКонтрагент, "НаименованиеДляПечатныхФорм"); ОбластьМакета.Параметры.СведенияОИсполнитель2 = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОИсполнитель, "НаименованиеДляПечатныхФорм"); ДанныеОФизЛице = ОбщегоНазначения.ДанныеФизЛица(справочники.Организации.ПустаяСсылка(),Шапка.СсылкаВодитель, Шапка.Дата); ОбластьМакета.Параметры.ФамилияИмяОтчествоДоверенного =СокрЛП(ДанныеОФизЛице.Фамилия) + " " + СокрЛП(ДанныеОФизЛице.Имя) + " " + СокрЛП(ДанныеОФизЛице.Отчество); Запрос = новый запрос; Запрос.Текст = "ВЫБРАТЬ | КонтактнаяИнформация.Представление |ИЗ | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация |ГДЕ | КонтактнаяИнформация.Объект = &Объект | И КонтактнаяИнформация.Тип = &Тип"; Запрос.Параметры.Вставить("Тип",Перечисления.ТипыКонтактнойИнформации.Телефон); Запрос.Параметры.Вставить("Объект",Шапка.СсылкаВодитель); Рез2 = запрос.Выполнить().Выбрать(); Телефон = ""; Пока рез2.Следующий() цикл Телефон = ?(Телефон="",Телефон,Телефон+"; ") + рез2.Представление; Конеццикла; ОбластьМакета.Параметры.Телефон = Телефон; //Если СтоимостьТН<>0 тогда // ОбластьМакета.Параметры.СсылкаСтавка = СтоимостьТН; //КонецЕсли; ТабДокумент.Вывести(ОбластьМакета); КонецЦикла; Возврат ТабДокумент; КонецФункции // Функция формирует табличный документ с печатной формой накладной, // разработанной методистами // // Возвращаемое значение: // Табличный документ - печатная форма накладной // Функция ПечатьДокумента(подпись) Если не ЭтотОбъект.Ссылка.Проведен тогда возврат Новый ТабличныйДокумент; конецесли; Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос.Текст ="ВЫБРАТЬ | ЗаявкаНаТранспортноеСредство.Номер КАК НомерДокумента, | ЗаявкаНаТранспортноеСредство.Дата КАК ДатаДокумента, | ЗаявкаНаТранспортноеСредство.Организация, | ЗаявкаНаТранспортноеСредство.ОтветственныйМенеджеры, | ЗаявкаНаТранспортноеСредство.Контрагент, | ЗаявкаНаТранспортноеСредство.ДоговорКонтрагента, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредство.Исполнитель = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ИЛИ ЗаявкаНаТранспортноеСредство.ВидДокумента = ЗНАЧЕНИЕ(Перечисление.ВидЗаявокНаТранспортноеСредство.ДоговорЗаявка) | ИЛИ ЗаявкаНаТранспортноеСредство.ВидДокумента = ЗНАЧЕНИЕ(Перечисление.ВидЗаявокНаТранспортноеСредство.Заявка) | ТОГДА ЗаявкаНаТранспортноеСредство.Организация | ИНАЧЕ ЗаявкаНаТранспортноеСредство.Исполнитель | КОНЕЦ КАК Исполнитель, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредство.Плательщик = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ЗаявкаНаТранспортноеСредство.Контрагент | ИНАЧЕ ЗаявкаНаТранспортноеСредство.Плательщик | КОНЕЦ КАК Плательщик, | ЗаявкаНаТранспортноеСредство.ТребуемыйТипТранспорта, | ЗаявкаНаТранспортноеСредство.ВидЗагрузки, | ЗаявкаНаТранспортноеСредство.ВидРазгрузки, | ЗаявкаНаТранспортноеСредство.ОсобыеУсловие, | ЗаявкаНаТранспортноеСредство.Ставка, | ЗаявкаНаТранспортноеСредство.СрокОплаты, | ЗаявкаНаТранспортноеСредство.ЦенаСНДС, | ЗаявкаНаТранспортноеСредство.Автомобиль.Автомобиль КАК ААвтомобиль, | ЗаявкаНаТранспортноеСредство.Автомобиль.Грузоподъемность КАК АГрузоподъемность, | ЗаявкаНаТранспортноеСредство.Автомобиль.ГосНомер КАК АГосНомер, | ЗаявкаНаТранспортноеСредство.Полуприцеп.ТипКузова КАК ПТипКузова, | ЗаявкаНаТранспортноеСредство.Полуприцеп.ОбъемДо КАК ПОбъемДо, | ЗаявкаНаТранспортноеСредство.Полуприцеп.ГосНомер КАК ПГосНомер, | ЗаявкаНаТранспортноеСредство.Водитель, | ЗаявкаНаТранспортноеСредство.ВидДокумента |ИЗ | Документ.ЗаявкаНаТранспортноеСредство КАК ЗаявкаНаТранспортноеСредство |ГДЕ | ЗаявкаНаТранспортноеСредство.Ссылка = &ТекущийДокумент"; Шапка = Запрос.Выполнить().Выбрать(); Шапка.Следующий(); Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.НомерСтроки, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.тип, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Накладная = """" | ТОГДА ""б/н"" | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Накладная | КОНЕЦ КАК Накладная, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Адрес, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ТОГДА """" | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ПокпательПродавец.НаименованиеПолное | КОНЕЦ | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ГрузоОП.НаименованиеПолное | КОНЕЦ КАК ЮрЛицо, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Дата, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Дата2, | ВЫБОР | КОГДА ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Время = """" | ТОГДА ""---"" | ИНАЧЕ ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Время | КОНЕЦ КАК Время, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.ФИО, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Телефон, | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Доверенность |ИЗ | Документ.ЗаявкаНаТранспортноеСредство.ЗагрузкаВыгрузка КАК ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка |ГДЕ | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.Ссылка = &ТекущийДокумент | |УПОРЯДОЧИТЬ ПО | ЗаявкаНаТранспортноеСредствоЗагрузкаВыгрузка.НомерСтроки"; ЗапросПоАдресам = Запрос.Выполнить(); ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Заявканатр_договор"; Макет = ПолучитьМакет("ПечатьД"); СведенияООрганизация = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.ДатаДокумента); СведенияОКонтрагент = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Контрагент, Шапка.ДатаДокумента); СведенияОИсполнитель = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Исполнитель, Шапка.ДатаДокумента); СведенияОПлательщик = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Плательщик, Шапка.ДатаДокумента); ОбластьМакета = Макет.ПолучитьОбласть("Заголовок"); ОбластьМакета.Параметры.СведенияООрганизация = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияООрганизация, "НаименованиеДляПечатныхФорм"); ОбластьМакета.Параметры.СведенияООрганизация2 = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияООрганизация, "ИНН,КПП,ЮридическийАдрес,Телефоны,НомерСчета,Банк,БИК,КоррСчет") + ", ОКПО " + ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияООрганизация, "КодПоОКПО"); ОбластьМакета.Параметры.СведенияОКонтрагент = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОКонтрагент, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); ОбластьМакета.Параметры.СведенияОИсполнитель = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОИсполнитель, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); ОбластьМакета.Параметры.СведенияОПлательщик = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОПлательщик, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны"); //ЗапросТел = Новый Запрос; // //ЗапросТел.УстановитьПараметр("Объект", Шапка.Ответственный.ФизЛицо); //ЗапросТел.УстановитьПараметр("Тип" , Перечисления.ТипыКонтактнойИнформации.Телефон); //ЗапросТел.УстановитьПараметр("Вид" , Справочники.ВидыКонтактнойИнформации.ТелефонФизЛица); // //ЗапросТел.Текст = " //|ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 //| КонтактнаяИнформация.Представление //|ИЗ //| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация //|ГДЕ //| КонтактнаяИнформация.Объект = &Объект //| И //| КонтактнаяИнформация.Тип = &Тип //| И //| КонтактнаяИнформация.Вид = &Вид //|"; // //РезультатЗапросаТел = ЗапросТел.Выполнить(); // //Если РезультатЗапросаТел.Пустой() Тогда // ВозвратТел = ""; //Иначе // ВозвратТел = " Тел:" + РезультатЗапросаТел.Выгрузить()[0].Представление; //КонецЕсли; // //ЗапросТел = Новый Запрос; // //ЗапросТел.УстановитьПараметр("Объект", Шапка.Ответственный.ФизЛицо); //ЗапросТел.УстановитьПараметр("Тип" , Перечисления.ТипыКонтактнойИнформации.Телефон); //ЗапросТел.УстановитьПараметр("Вид" , Справочники.ВидыКонтактнойИнформации.ТелефонСлужебныйФизЛица); // //ЗапросТел.Текст = " //|ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 //| КонтактнаяИнформация.Представление //|ИЗ //| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация //|ГДЕ //| КонтактнаяИнформация.Объект = &Объект //| И //| КонтактнаяИнформация.Тип = &Тип //| И //| КонтактнаяИнформация.Вид = &Вид //|"; // //РезультатЗапросаТел = ЗапросТел.Выполнить(); // //Если РезультатЗапросаТел.Пустой() Тогда // ВозвратТел = ВозвратТел+""; //Иначе // ВозвратТел = ?(ВозвратТел=""," Тел:",ВозвратТел+", ") + РезультатЗапросаТел.Выгрузить()[0].Представление; //КонецЕсли; ОбластьМакета.Параметры.манагерСвед = "Ответственные: "+Шапка.ОтветственныйМенеджеры; ОбластьМакета.Параметры.Заполнить(Шапка); Если Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.Заявка или Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ВходящаяЗаявка тогда ОбластьМакета.Параметры.прм = "Прием заявок осуществляется с 10:00 до 17:00. Все пункты обязательны для заполнения!!!"; КонецЕсли; Если Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ДоговорЗаявка или Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ВходящийДоговорЗаявка тогда ОбластьМакета.Параметры.прм =""; КонецЕсли; ТабДокумент.Вывести(ОбластьМакета); Если Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.Заявка или Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ВходящаяЗаявка тогда ОбластьМакета = Макет.ПолучитьОбласть("Заголовок2"); ОбластьМакета.Параметры.Основание = "" + шапка.ДоговорКонтрагента + " №"+шапка.ДоговорКонтрагента.номер+" от "+Формат(шапка.ДоговорКонтрагента.дата,"ДФ=dd.MM.yyyy"); ТабДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("Заголовок3"); ОбластьМакета.Параметры.ДатаДокумента = Формат(шапка.ДатаДокумента," ДЛФ=DD"); ОбластьМакета.Параметры.НомерДокумента = СтрЗаменить(Формат(шапка.НомерДокумента,"ЧЦ=9; ЧРГ='*'; ЧВН="),"*",""); ОбластьМакета.Параметры.дз = ""; ТабДокумент.Вывести(ОбластьМакета); КонецЕсли; Если Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ДоговорЗаявка или Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ВходящийДоговорЗаявка тогда ОбластьМакета = Макет.ПолучитьОбласть("Заголовок3"); ОбластьМакета.Параметры.ДатаДокумента = Формат(шапка.ДатаДокумента," ДЛФ=DD"); ОбластьМакета.Параметры.НомерДокумента = СтрЗаменить(Формат(шапка.НомерДокумента,"ЧЦ=9; ЧРГ='*'; ЧВН="),"*",""); ОбластьМакета.Параметры.дз = "Договор-"; ТабДокумент.Вывести(ОбластьМакета); КонецЕсли; ОбластьШапка = Макет.ПолучитьОбласть("ШапкаТаблицы"); ТабДокумент.Вывести(ОбластьШапка); // Выведем таблицу N = 0; пустойпрогон = истина; ВыборкаПоСтрокам = ЗапросПоАдресам.Выбрать(); ПНакладнаяПогрузка = ""; ПНакладнаяРазгрузка = ""; ПДоверенность = ""; ПАдрес = ""; ПЮрЛицо = ""; ПДата = ""; ПДата2 = ""; ПВремя = ""; ПФИО = ""; ПТелефон = ""; Пока ВыборкаПоСтрокам.Следующий() Цикл Если ПАдрес = ВыборкаПоСтрокам.Адрес и ПЮрЛицо = ВыборкаПоСтрокам.ЮрЛицо и ПДата = ВыборкаПоСтрокам.Дата и ПДата2 = ВыборкаПоСтрокам.Дата2 и ПВремя = ВыборкаПоСтрокам.Время и ПФИО = ВыборкаПоСтрокам.ФИО и ПТелефон = ВыборкаПоСтрокам.Телефон тогда ПНакладнаяПогрузка = ?(ВыборкаПоСтрокам.тип=перечисления.ЗагрузкаРазгрузка.Погрузка,ПНакладнаяПогрузка + ВыборкаПоСтрокам.Накладная+"; ",ПНакладнаяПогрузка); ПНакладнаяРазгрузка = ?(ВыборкаПоСтрокам.тип=перечисления.ЗагрузкаРазгрузка.Разгрузка,ПНакладнаяРазгрузка + ВыборкаПоСтрокам.Накладная+"; ",ПНакладнаяРазгрузка); ПДоверенность = ?(ВыборкаПоСтрокам.Доверенность<>"",?(Найти(ПДоверенность,ВыборкаПоСтрокам.Доверенность)=0,ПДоверенность + ВыборкаПоСтрокам.Доверенность+"; ",ПДоверенность),ПДоверенность); Иначе Если не пустойпрогон тогда N = N +1; ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); ОбластьСтрока.Параметры.ШапкаСтроки = ?(сокрлп(ПНакладнаяРазгрузка)="","","Разгрузка по накладным №"+ПНакладнаяРазгрузка+ " ")+?(сокрлп(ПНакладнаяПогрузка)="","","Погрузка по наладным №"+ПНакладнаяПогрузка)+?(сокрлп(ПДоверенность)="","","Доверенности: "+ПДоверенность); ОбластьСтрока.Параметры.Адрес = ПАдрес; ОбластьСтрока.Параметры.ЮрЛицо = ПЮрЛицо; Если ПДата2 = Дата("00010101000000") тогда ОбластьСтрока.Параметры.Дата = Формат(ПДата,"ДФ=dd.MM.yyyy"); Иначе ОбластьСтрока.Параметры.Дата = Формат(ПДата,"ДФ=dd.MM") +" - "+Формат(ПДата2,"ДФ=dd.MM.yyyy"); КонецЕсли; ОбластьСтрока.Параметры.Время = ПВремя; ОбластьСтрока.Параметры.ФИО = ПФИО; ОбластьСтрока.Параметры.Телефон = ПТелефон; ОбластьСтрока.Параметры.N = N; ТабДокумент.Вывести(ОбластьСтрока); //вывести строки КонецЕсли; ПАдрес = ВыборкаПоСтрокам.Адрес; ПЮрЛицо = ВыборкаПоСтрокам.ЮрЛицо; ПДата = ВыборкаПоСтрокам.Дата; ПДата2 = ВыборкаПоСтрокам.Дата2; ПВремя = ВыборкаПоСтрокам.Время; ПФИО = ВыборкаПоСтрокам.ФИО; ПТелефон = ВыборкаПоСтрокам.Телефон; ПНакладнаяПогрузка = ?(ВыборкаПоСтрокам.тип=перечисления.ЗагрузкаРазгрузка.Погрузка,ВыборкаПоСтрокам.Накладная+"; ",""); ПНакладнаяРазгрузка = ?(ВыборкаПоСтрокам.тип=перечисления.ЗагрузкаРазгрузка.Разгрузка,ВыборкаПоСтрокам.Накладная+"; ",""); ПДоверенность = ?(ВыборкаПоСтрокам.Доверенность<>"",ВыборкаПоСтрокам.Доверенность+"; ",""); пустойпрогон = ложь; КонецЕсли; КонецЦикла; N = N +1; ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); ОбластьСтрока.Параметры.ШапкаСтроки = ?(сокрлп(ПНакладнаяРазгрузка)="","","Разгрузка по накладным №"+ПНакладнаяРазгрузка+ " ")+?(сокрлп(ПНакладнаяПогрузка)="","","Погрузка по наладным №"+ПНакладнаяПогрузка)+?(сокрлп(ПДоверенность)="","","Доверенности: "+ПДоверенность); ОбластьСтрока.Параметры.Адрес = ПАдрес; ОбластьСтрока.Параметры.ЮрЛицо = ПЮрЛицо; Если ПДата2 = Дата("00010101000000") тогда ОбластьСтрока.Параметры.Дата = Формат(ПДата,"ДФ=dd.MM.yyyy"); Иначе ОбластьСтрока.Параметры.Дата = Формат(ПДата,"ДФ=dd.MM") +" - "+Формат(ПДата2,"ДФ=dd.MM.yyyy"); КонецЕсли; ОбластьСтрока.Параметры.Время = ПВремя; ОбластьСтрока.Параметры.ФИО = ПФИО; ОбластьСтрока.Параметры.Телефон = ПТелефон; ОбластьСтрока.Параметры.N = N; ТабДокумент.Вывести(ОбластьСтрока); Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | ВЫБОР | КОГДА ВложенныйЗапрос.НаименованиеИХарактерГруза = """" | ТОГДА ""---"" | ИНАЧЕ ВложенныйЗапрос.НаименованиеИХарактерГруза | КОНЕЦ КАК НаименованиеИХарактерГруза, | ВЫБОР | КОГДА ВложенныйЗапрос.КоличествоМест = 0 | ТОГДА ""---"" | ИНАЧЕ ВложенныйЗапрос.КоличествоМест | КОНЕЦ КАК КоличествоМест, | ВЫБОР | КОГДА ВложенныйЗапрос.ВесТонн = 0 | ТОГДА ""---"" | ИНАЧЕ ВложенныйЗапрос.ВесТонн | КОНЕЦ КАК ВесТонн, | ВЫБОР | КОГДА ВложенныйЗапрос.ОбъемМ = 0 | ТОГДА ""---"" | ИНАЧЕ ВложенныйЗапрос.ОбъемМ | КОНЕЦ КАК ОбъемМ, | ВЫБОР | КОГДА ВложенныйЗапрос.СтоимостьГруза = 0 | ТОГДА ""---"" | ИНАЧЕ ВложенныйЗапрос.СтоимостьГруза | КОНЕЦ КАК СтоимостьГруза, | ВЫБОР | КОГДА ВложенныйЗапрос.СтраховаяСтоимостьГруза = 0 | ТОГДА ""---"" | ИНАЧЕ ВложенныйЗапрос.СтраховаяСтоимостьГруза | КОНЕЦ КАК СтраховаяСтоимостьГруза |ИЗ | (ВЫБРАТЬ | ЗаявкаНаТранспортноеСредствоГруз.НаименованиеИХарактерГруза КАК НаименованиеИХарактерГруза, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.КоличествоМест) КАК КоличествоМест, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.ВесТонн) КАК ВесТонн, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.ОбъемМ) КАК ОбъемМ, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.СтоимостьГруза) КАК СтоимостьГруза, | СУММА(ЗаявкаНаТранспортноеСредствоГруз.СтраховаяСтоимостьГруза) КАК СтраховаяСтоимостьГруза | ИЗ | Документ.ЗаявкаНаТранспортноеСредство.Груз КАК ЗаявкаНаТранспортноеСредствоГруз | ГДЕ | ЗаявкаНаТранспортноеСредствоГруз.Ссылка = &ТекущийДокумент | | СГРУППИРОВАТЬ ПО | ЗаявкаНаТранспортноеСредствоГруз.НаименованиеИХарактерГруза) КАК ВложенныйЗапрос"; ЗапросПоТоварам = Запрос.Выполнить(); ОбластьШапка = Макет.ПолучитьОбласть("ШапкаТаблицы2"); ТабДокумент.Вывести(ОбластьШапка); // Выведем таблицу N = 0; ВыборкаПоСтрокам = ЗапросПоТоварам.Выбрать(); Пока ВыборкаПоСтрокам.Следующий() Цикл N = N +1; ОбластьСтрока = Макет.ПолучитьОбласть("Строка2"); ОбластьСтрока.Параметры.N = N; ОбластьСтрока.Параметры.Заполнить(ВыборкаПоСтрокам); ТабДокумент.Вывести(ОбластьСтрока); КонецЦикла; // Выведем подвал ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); ОбластьПодвал.Параметры.Заполнить(Шапка); ОбластьПодвал.Параметры.ЦенаСНДСТекст = ?(Шапка.ЦенаСНДС," с НДС"," без НДС"); ОбластьПодвал.Параметры.ОсобыеУсловие = СтрЗаменить(СтрЗаменить(Шапка.ОсобыеУсловие, ";", " ")," "," ") ; ДанныеОФизЛице = ОбщегоНазначения.ДанныеФизЛица(Шапка.Организация, Шапка.Водитель, Шапка.ДатаДокумента); ОбластьПодвал.Параметры.ПаспортСерия = ДанныеОФизЛице.ДокументСерия; ОбластьПодвал.Параметры.ПаспортНомер = ДанныеОФизЛице.ДокументНомер; ОбластьПодвал.Параметры.ПаспортВыдан = ДанныеОФизЛице.ДокументКемВыдан; ОбластьПодвал.Параметры.ПаспортДатаВыдачи = ДанныеОФизЛице.ДокументДатаВыдачи; ОбластьПодвал.Параметры.КодПодразделения =ДанныеОФизЛице.ДокументКодПодразделения; ОбластьПодвал.Параметры.ДатаРождения =Шапка.Водитель.ДатаРождения; ОбластьПодвал.Параметры.ФамилияИмяОтчествоДоверенного =СокрЛП(ДанныеОФизЛице.Фамилия) + " " + СокрЛП(ДанныеОФизЛице.Имя) + " " + СокрЛП(ДанныеОФизЛице.Отчество); Запрос = новый запрос; Запрос.Текст = "ВЫБРАТЬ | КонтактнаяИнформация.Представление |ИЗ | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация |ГДЕ | КонтактнаяИнформация.Объект = &Объект | И КонтактнаяИнформация.Тип = &Тип"; Запрос.Параметры.Вставить("Тип",Перечисления.ТипыКонтактнойИнформации.Телефон); Запрос.Параметры.Вставить("Объект",Шапка.Водитель); Рез2 = запрос.Выполнить().Выбрать(); Телефон = ""; Пока рез2.Следующий() цикл Телефон = ?(Телефон="",Телефон,Телефон+"; ") + рез2.Представление; Конеццикла; ОбластьПодвал.Параметры.Телефон = Телефон; ТабДокумент.Вывести(ОбластьПодвал); Если ""+Шапка.ПГосНомер<>""тогда ОбластьПодвал = Макет.ПолучитьОбласть("ПодвалК"); ОбластьПодвал.Параметры.Заполнить(Шапка); ТабДокумент.Вывести(ОбластьПодвал); КонецЕсли; Если Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.Заявка или Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ВходящаяЗаявка тогда ОбластьПодвал = Макет.ПолучитьОбласть("ВставкаЗ"); ОбластьПодвал.Параметры.СведенияООрганизация = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияООрганизация, "НаименованиеДляПечатныхФорм"); ТабДокумент.Вывести(ОбластьПодвал); КонецЕсли; Если Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ДоговорЗаявка или Шапка.ВидДокумента = перечисления.ВидЗаявокНаТранспортноеСредство.ВходящийДоговорЗаявка тогда ОбластьПодвал = Макет.ПолучитьОбласть("ВставкаДЗ"); ТабДокумент.Вывести(ОбластьПодвал); КонецЕсли; ОбластьПодвал = Макет.ПолучитьОбласть("Подвал2"+подпись); ОбластьПодвал.Параметры.Заполнить(Шапка); ОбластьПодвал.Параметры.СведенияОКонтрагент2 = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОКонтрагент, "НаименованиеДляПечатныхФорм"); ОбластьПодвал.Параметры.СведенияОИсполнитель2 = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОИсполнитель, "НаименованиеДляПечатныхФорм"); Запрос = новый Запрос; Запрос.Текст = "ВЫБРАТЬ | КонтактныеЛица.Наименование |ИЗ | Справочник.КонтактныеЛица КАК КонтактныеЛица |ГДЕ | КонтактныеЛица.ПометкаУдаления = ЛОЖЬ | И КонтактныеЛица.ОбъектВладелец = &ОбъектВладелец | И КонтактныеЛица.Роль = &Роль"; Запрос.Параметры.Вставить("ОбъектВладелец",шапка.Контрагент); Запрос.Параметры.Вставить("Роль",Справочники.РолиКонтактныхЛиц.НайтиПоКоду("000000001")); рез = Запрос.Выполнить().Выбрать(); Если рез.Следующий() тогда ОбластьПодвал.Параметры.Имя1 = рез.Наименование; КонецЕсли; Запрос.Текст = "ВЫБРАТЬ | КонтактныеЛица.Наименование |ИЗ | Справочник.КонтактныеЛица КАК КонтактныеЛица |ГДЕ | КонтактныеЛица.ПометкаУдаления = ЛОЖЬ | И КонтактныеЛица.ОбъектВладелец = &ОбъектВладелец | И КонтактныеЛица.Роль = &Роль"; Запрос.Параметры.Вставить("ОбъектВладелец",шапка.Исполнитель); Запрос.Параметры.Вставить("Роль",Справочники.РолиКонтактныхЛиц.НайтиПоКоду("000000001")); рез = Запрос.Выполнить().Выбрать(); Если рез.Следующий() тогда ОбластьПодвал.Параметры.Имя2 = рез.Наименование; КонецЕсли; Запрос.Текст = "ВЫБРАТЬ | ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо |ИЗ | РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних(&дата, ) КАК ОтветственныеЛицаОрганизацийСрезПоследних |ГДЕ | ОтветственныеЛицаОрганизацийСрезПоследних.СтруктурнаяЕдиница = &СтруктурнаяЕдиница | И ОтветственныеЛицаОрганизацийСрезПоследних.ОтветственноеЛицо = &ОтветственноеЛицо"; Запрос.Параметры.Вставить("дата",шапка.ДатаДокумента); Запрос.Параметры.Вставить("СтруктурнаяЕдиница",шапка.Исполнитель); Запрос.Параметры.Вставить("ОтветственноеЛицо",перечисления.ОтветственныеЛицаОрганизаций.Руководитель); рез = Запрос.Выполнить().Выбрать(); Если рез.Следующий() тогда ОбластьПодвал.Параметры.Имя2 = рез.ФизическоеЛицо; КонецЕсли; ОбластьПодвал.Параметры.ДатаДокумента = Формат(шапка.ДатаДокумента," ДЛФ=DD"); ТабДокумент.Вывести(ОбластьПодвал); Возврат ТабДокумент; КонецФункции // ПечатьДокумента() // Процедура осуществляет печать документа. Можно направить печать на // экран или принтер, а также распечатать необходимое количество копий. // // Название макета печати передается в качестве параметра, // по переданному названию находим имя макета в соответствии. // // Параметры: // НазваниеМакета - строка, название макета. // Процедура Печать(ИмяМакета, КоличествоЭкземпляров = 1, НаПринтер = Ложь, НепосредственнаяПечать = Ложь) Экспорт Если ИмяМакета = "ПечатьД" Тогда ТабДокумент = ПечатьДокумента(""); КонецЕсли; Если ИмяМакета = "ПечатьД1" Тогда ТабДокумент = ПечатьДокумента("1"); КонецЕсли; Если ИмяМакета = "ПечатьД2" Тогда ТабДокумент = ПечатьДокумента("2"); КонецЕсли; Если ИмяМакета = "ПечатьТ" Тогда ТабДокумент = ПечатьТН(""); КонецЕсли; Если ИмяМакета = "ПечатьТ2" Тогда ТабДокумент = ПечатьТН("2"); КонецЕсли; УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОбщегоНазначения.СформироватьЗаголовокДокумента(ЭтотОбъект, ЭтотОбъект.Метаданные().Представление()), НепосредственнаяПечать); ФормированиеПечатныхФорм. КонецПроцедуры // Печать #КонецЕсли // Возвращает доступные варианты печати документа // // Возвращаемое значение: // Структура, каждая строка которой соответствует одному из вариантов печати // Функция ПолучитьСтруктуруПечатныхФорм() Экспорт Струк = Новый Структура; Струк.Вставить("ПечатьД", "Печать документа"); Струк.Вставить("ПечатьД1", "Печать документа с подписью справа"); Струк.Вставить("ПечатьД2", "Печать документа с подписью слева"); Струк.Вставить("ПечатьТ", "Печать транспортной накладной"); //Струк.Вставить("ПечатьТ2", "Печать транспортной накладной с подписью"); Возврат Струк КонецФункции // ПолучитьСтруктуруПечатныхФорм() // Возвращает доступные варианты печати документа // // Возвращаемое значение: // Структура, каждая строка которой соответствует одному из вариантов печати // Функция ПолучитьСтруктуруПечатныхФормВход() Экспорт Струк = Новый Структура; Струк.Вставить("ПечатьД", "Печать документа"); Струк.Вставить("ПечатьД2", "Печать документа с подписью слева"); Струк.Вставить("ПечатьТ", "Печать транспортной накладной"); //Струк.Вставить("ПечатьТ2", "Печать транспортной накладной с подписью"); Возврат Струк КонецФункции // ПолучитьСтруктуруПечатныхФорм() // Возвращает доступные варианты печати документа // // Возвращаемое значение: // Структура, каждая строка которой соответствует одному из вариантов печати // Функция ПолучитьСтруктуруПечатныхФормИсх() Экспорт Струк = Новый Структура; Струк.Вставить("ПечатьД", "Печать документа"); Струк.Вставить("ПечатьД1", "Печать документа с подписью справа"); Струк.Вставить("ПечатьТ", "Печать транспортной накладной"); //Струк.Вставить("ПечатьТ2", "Печать транспортной накладной с подписью"); Возврат Струк КонецФункции // ПолучитьСтруктуруПечатныхФорм() в модуле формы // Процедура устанавливает подменю "Печать" и кнопку "Печать по умолчанию" при необходимости // Процедура УстановитьКнопкиПечати() мДеревоМакетов = УниверсальныеМеханизмы.ПолучитьДеревоМакетовПечати(Ссылка, ПолучитьСтруктуруПечатныхФормИсх(), Новый Действие("ОсновныеДействияФормыПечать"), Новый Действие("ОсновныеДействияФормыУстановитьПечатьПоУмолчанию")); УниверсальныеМеханизмы.УстановитьПодменюПечати (мПодменюПечати, ЭлементыФормы.ОсновныеДействияФормы, мДеревоМакетов.Строки.Количество() > 0); УниверсальныеМеханизмы.УстановитьПечатьПоУмолчанию(мПечатьПоУмолчанию, ЭлементыФормы.ОсновныеДействияФормы, мДеревоМакетов, Метаданные().Имя,Новый Действие("ОсновныеДействияФормыПечатьПоУмолчанию")); Если Не мПодменюПечати = Неопределено Тогда УниверсальныеМеханизмы.СформироватьПодменю(мДеревоМакетов, мПодменюПечати,Истина,Истина); КонецЕсли; КонецПроцедуры // Процедура - обработчик нажатия на кнопку "Печать по умолчанию" // Процедура ОсновныеДействияФормыПечатьПоУмолчанию(Кнопка) УниверсальныеМеханизмы.ПечатьПоДополнительнойКнопке(мДеревоМакетов, ЭтотОбъект, ЭтаФорма, Кнопка.Текст); КонецПроцедуры // Процедура - обработчик нажатия на кнопку "Печать" // Процедура ОсновныеДействияФормыПечать(Кнопка) УниверсальныеМеханизмы.ПечатьПоДополнительнойКнопке(мДеревоМакетов, ЭтотОбъект, ЭтаФорма, Кнопка.Текст); КонецПроцедуры // Процедура - обработчик нажатия на кнопку "Установить печать по умолчанию" // Процедура ОсновныеДействияФормыУстановитьПечатьПоУмолчанию(Кнопка) Если УниверсальныеМеханизмы.НазначитьКнопкуПечатиПоУмолчанию(мДеревоМакетов, Метаданные().Имя) Тогда УстановитьКнопкиПечати(); КонецЕсли; КонецПроцедуры