Имя: Пароль:
1C
1С v8
Печатная форма не работает
0 Vvvvv
 
10.04.14
16:42
Пытаюсь создать внешнюю печатную форму на управляемом приложении. Синтаксических ошибок не обнаружено, Форму подключил, при попытке печати, пишет, что в обработчике печати не был сформирован табличный документ для : ПФ_MXL_Накладная

Вот Код:
Что упустил?


Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

    Сообщить("Сообщаю Печать");
    ПараметрыВывода.ДоступнаПечатьПоКомплектно = Истина;      
    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПФ_MXL_Накладная") Тогда
        //УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "Накладная", "Расходная накладная",
        //    ПечатьДокумента(МассивОбъектов, ОбъектыПечати),,"Документ.РеализацияТоваровУслуг.ПФ_MXL_Накладная");
        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "Накладная", "Расходная накладная",
            ПечатьДокумента(МассивОбъектов, ОбъектыПечати));    
    КонецЕсли;      
    
КонецПроцедуры    


Функция ПечатьДокумента(МассивОбъектов, ОбъектыПечати)

    УстановитьПривилегированныйРежим(Истина);
    
    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.АвтоМасштаб            = Истина;
    ТабличныйДокумент.ОриентацияСтраницы    = ОриентацияСтраницы.Портрет;
    ТабличныйДокумент.ИмяПараметровПечати    = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_Накладная";
    
    ДополнительнаяКолонкаПечатныхФормДокументов = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить();
    Если НЕ ЗначениеЗаполнено(ДополнительнаяКолонкаПечатныхФормДокументов) Тогда
        ДополнительнаяКолонкаПечатныхФормДокументов = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.НеВыводить;
    КонецЕсли;
    ВыводитьКоды = ДополнительнаяКолонкаПечатныхФормДокументов <> Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.НеВыводить;
    
    Запрос = Новый Запрос();
    Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов);
    Запрос.УстановитьПараметр("ДополнительнаяКолонкаПечатныхФормДокументов", ДополнительнаяКолонкаПечатныхФормДокументов);
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ДокументРеализацияТоваровУслуг.Ссылка КАК Ссылка,
    |    ДокументРеализацияТоваровУслуг.Номер КАК Номер,
    |    ДокументРеализацияТоваровУслуг.Дата КАК Дата,
    |    ДокументРеализацияТоваровУслуг.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |    ДокументРеализацияТоваровУслуг.Контрагент КАК Получатель,
    |    ДокументРеализацияТоваровУслуг.Организация КАК Организация,
    |    ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
    |    ДокументРеализацияТоваровУслуг.Организация КАК Поставщик,
    |    ДокументРеализацияТоваровУслуг.Ссылка.Склад КАК Склад,
    |    ДокументРеализацияТоваровУслуг.СуммаДокумента КАК СуммаДокумента,
    |    ДокументРеализацияТоваровУслуг.ВалютаДокумента КАК ВалютаДокумента,
    |    ДокументРеализацияТоваровУслуг.СуммаВключаетНДС КАК СуммаВключаетНДС,
    |    РеализацияТоваровУслуг.Номенклатура КАК Номенклатура,
    |    РеализацияТоваровУслуг.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    |    РеализацияТоваровУслуг.Цена КАК Цена,
    |    РеализацияТоваровУслуг.СтавкаНДС КАК СтавкаНДС,
    |    РеализацияТоваровУслуг.СтранаПроисхождения КАК СтранаПроисхождения,
    |    РеализацияТоваровУслуг.НомерГТД КАК НомерГТД,
    |    СУММА(РеализацияТоваровУслуг.Количество) КАК Количество,
    |    СУММА(РеализацияТоваровУслуг.КоличествоМест) КАК КоличествоМест,
    |    СУММА(РеализацияТоваровУслуг.Сумма) КАК Сумма,
    |    СУММА(РеализацияТоваровУслуг.СуммаНДС) КАК СуммаНДС,
    |    МИНИМУМ(РеализацияТоваровУслуг.НомерСтроки) КАК НомерСтроки
    |ПОМЕСТИТЬ ВТ_ВложенныйЗапросПоТоварам
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
    |    ПРАВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    |    ПО РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка
    |ГДЕ
    |    ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |СГРУППИРОВАТЬ ПО
    |    РеализацияТоваровУслуг.Номенклатура,
    |    РеализацияТоваровУслуг.ЕдиницаИзмерения,
    |    РеализацияТоваровУслуг.Цена,
    |    РеализацияТоваровУслуг.СтавкаНДС,
    |    РеализацияТоваровУслуг.СтранаПроисхождения,
    |    РеализацияТоваровУслуг.НомерГТД,
    |    ДокументРеализацияТоваровУслуг.Ссылка,
    |    ДокументРеализацияТоваровУслуг.Номер,
    |    ДокументРеализацияТоваровУслуг.Дата,
    |    ДокументРеализацияТоваровУслуг.ДоговорКонтрагента,
    |    ДокументРеализацияТоваровУслуг.Контрагент,
    |    ДокументРеализацияТоваровУслуг.Организация,
    |    ДокументРеализацияТоваровУслуг.Склад,
    |    ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    |    ДокументРеализацияТоваровУслуг.СуммаДокумента,
    |    ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    |    ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    |    ДокументРеализацияТоваровУслуг.Организация
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    |    ВложенныйЗапросПоТоварам.Ссылка КАК Ссылка,
    |    ВложенныйЗапросПоТоварам.Номер КАК Номер,
    |    ВложенныйЗапросПоТоварам.Дата КАК Дата,
    |    ВложенныйЗапросПоТоварам.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |    ВложенныйЗапросПоТоварам.Получатель КАК Получатель,
    |    ВложенныйЗапросПоТоварам.Организация КАК Организация,
    |    ВложенныйЗапросПоТоварам.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
    |    ВложенныйЗапросПоТоварам.Организация КАК Поставщик,
    |    ВложенныйЗапросПоТоварам.Ссылка.Склад КАК Склад,
    |    ВложенныйЗапросПоТоварам.СуммаДокумента КАК СуммаДокумента,
    |    ВложенныйЗапросПоТоварам.ВалютаДокумента КАК ВалютаДокумента,
    |    ВложенныйЗапросПоТоварам.СуммаВключаетНДС КАК СуммаВключаетНДС,
    |    ВложенныйЗапросПоТоварам.Номенклатура,
    |    ВложенныйЗапросПоТоварам.Номенклатура.НаименованиеПолное КАК Товар,
    |    ВЫБОР
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    |            ТОГДА ВложенныйЗапросПоТоварам.Номенклатура.Артикул
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Код)
    |            ТОГДА ВложенныйЗапросПоТоварам.Номенклатура.Код
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.НеВыводить)
    |            ТОГДА """"
    |    КОНЕЦ КАК Артикул,
    |    ВложенныйЗапросПоТоварам.Количество,
    |    ВложенныйЗапросПоТоварам.КоличествоМест,
    |    ВложенныйЗапросПоТоварам.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    |    ВложенныйЗапросПоТоварам.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаХранения,
    |    ВложенныйЗапросПоТоварам.Цена,
    |    ВложенныйЗапросПоТоварам.Сумма,
    |    ВложенныйЗапросПоТоварам.СуммаНДС,
    |    ВложенныйЗапросПоТоварам.СтранаПроисхождения КАК СтранаПроисхождения,
    |    ВложенныйЗапросПоТоварам.НомерГТД КАК НомерГТД,
    |    ВложенныйЗапросПоТоварам.НомерСтроки,
    |    1 КАК ID
    |ИЗ
    |    ВТ_ВложенныйЗапросПоТоварам КАК ВложенныйЗапросПоТоварам
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    РеализацияТоваровУслуг.Ссылка,
    |    РеализацияТоваровУслуг.Ссылка.Номер,
    |    РеализацияТоваровУслуг.Ссылка.Дата,
    |    РеализацияТоваровУслуг.Ссылка.ДоговорКонтрагента,
    |    РеализацияТоваровУслуг.Ссылка.Контрагент,
    |    РеализацияТоваровУслуг.Ссылка.Организация,
    |    РеализацияТоваровУслуг.Ссылка.ПодразделениеОрганизации,
    |    РеализацияТоваровУслуг.Ссылка.Организация,
    |    РеализацияТоваровУслуг.Ссылка.Склад,
    |    РеализацияТоваровУслуг.Ссылка.СуммаДокумента,
    |    РеализацияТоваровУслуг.Ссылка.ВалютаДокумента,
    |    РеализацияТоваровУслуг.Ссылка.СуммаВключаетНДС,
    |    РеализацияТоваровУслуг.Номенклатура,
    |    РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    |    ВЫБОР
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Код)
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.Код
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.НеВыводить)
    |            ТОГДА """"
    |    КОНЕЦ,
    |    РеализацияТоваровУслуг.Количество,
    |    NULL,
    |    NULL,
    |    NULL,
    |    РеализацияТоваровУслуг.Цена,
    |    РеализацияТоваровУслуг.Сумма,
    |    0,
    |    NULL,
    |    NULL,
    |    РеализацияТоваровУслуг.НомерСтроки,
    |    2
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.ВозвратнаяТара КАК РеализацияТоваровУслуг
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    РеализацияТоваровУслуг.Ссылка,
    |    РеализацияТоваровУслуг.Ссылка.Номер,
    |    РеализацияТоваровУслуг.Ссылка.Дата,
    |    РеализацияТоваровУслуг.Ссылка.ДоговорКонтрагента,
    |    РеализацияТоваровУслуг.Ссылка.Контрагент,
    |    РеализацияТоваровУслуг.Ссылка.Организация,
    |    РеализацияТоваровУслуг.Ссылка.ПодразделениеОрганизации,
    |    РеализацияТоваровУслуг.Ссылка.Организация,
    |    РеализацияТоваровУслуг.Ссылка.Склад,
    |    РеализацияТоваровУслуг.Ссылка.СуммаДокумента,
    |    РеализацияТоваровУслуг.Ссылка.ВалютаДокумента,
    |    РеализацияТоваровУслуг.Ссылка.СуммаВключаетНДС,
    |    ВЫБОР
    |        КОГДА (НЕ РеализацияТоваровУслуг.Содержание ПОДОБНО """")
    |            ТОГДА РеализацияТоваровУслуг.Содержание
    |        КОГДА (НЕ РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное ПОДОБНО """")
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное
    |        ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Наименование
    |    КОНЕЦ,
    |    ВЫБОР
    |        КОГДА (НЕ РеализацияТоваровУслуг.Содержание ПОДОБНО """")
    |            ТОГДА РеализацияТоваровУслуг.Содержание
    |        КОГДА (НЕ РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное ПОДОБНО """")
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное
    |        ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Наименование
    |    КОНЕЦ,
    |    ВЫБОР
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Код)
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.Код
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.НеВыводить)
    |            ТОГДА """"
    |    КОНЕЦ,
    |    РеализацияТоваровУслуг.Количество,
    |    NULL,
    |    NULL,
    |    РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    |    РеализацияТоваровУслуг.Цена,
    |    РеализацияТоваровУслуг.Сумма,
    |    РеализацияТоваровУслуг.СуммаНДС,
    |    NULL,
    |    NULL,
    |    РеализацияТоваровУслуг.НомерСтроки,
    |    3
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    РеализацияТоваровУслуг.Ссылка,
    |    РеализацияТоваровУслуг.Ссылка.Номер,
    |    РеализацияТоваровУслуг.Ссылка.Дата,
    |    РеализацияТоваровУслуг.Ссылка.ДоговорКонтрагента,
    |    РеализацияТоваровУслуг.Ссылка.Контрагент,
    |    РеализацияТоваровУслуг.Ссылка.Организация,
    |    РеализацияТоваровУслуг.Ссылка.ПодразделениеОрганизации,
    |    РеализацияТоваровУслуг.Ссылка.Организация,
    |    РеализацияТоваровУслуг.Ссылка.Склад,
    |    РеализацияТоваровУслуг.Ссылка.СуммаДокумента,
    |    РеализацияТоваровУслуг.Ссылка.ВалютаДокумента,
    |    РеализацияТоваровУслуг.Ссылка.СуммаВключаетНДС,
    |    ВЫБОР
    |        КОГДА (НЕ РеализацияТоваровУслуг.Содержание ПОДОБНО """")
    |            ТОГДА РеализацияТоваровУслуг.Содержание
    |        КОГДА (НЕ РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное ПОДОБНО """")
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное
    |        ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Наименование
    |    КОНЕЦ,
    |    ВЫБОР
    |        КОГДА (НЕ РеализацияТоваровУслуг.Содержание ПОДОБНО """")
    |            ТОГДА РеализацияТоваровУслуг.Содержание
    |        КОГДА (НЕ РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное ПОДОБНО """")
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное
    |        ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Наименование
    |    КОНЕЦ,
    |    ВЫБОР
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Код)
    |            ТОГДА РеализацияТоваровУслуг.Номенклатура.Код
    |        КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.НеВыводить)
    |            ТОГДА """"
    |    КОНЕЦ,
    |    РеализацияТоваровУслуг.Количество,
    |    NULL,
    |    NULL,
    |    РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    |    РеализацияТоваровУслуг.Цена,
    |    РеализацияТоваровУслуг.Сумма,
    |    РеализацияТоваровУслуг.СуммаНДС,
    |    NULL,
    |    NULL,
    |    РеализацияТоваровУслуг.НомерСтроки,
    |    4
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.АгентскиеУслуги КАК РеализацияТоваровУслуг
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |УПОРЯДОЧИТЬ ПО
    |    Дата,
    |    Ссылка,
    |    ID,
    |    ВложенныйЗапросПоТоварам.НомерСтроки";
    
    Шапка = Запрос.Выполнить().Выбрать();
    
    ПервыйДокумент = Истина;
    
    Пока Шапка.СледующийПоЗначениюПоля("Ссылка") Цикл
        
        //Макет = УправлениеПечатью.МакетПечатнойФормы("Документ.РеализацияТоваровУслуг.ПФ_MXL_Накладная");
        Макет = ЭтотОбъект.ПолучитьМакет("ПФ_MXL_Накладная");

        
        
        Если НЕ ПервыйДокумент Тогда
            ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
        КонецЕсли;
        
        ПервыйДокумент = Ложь;
        // Запомним номер строки, с которой начали выводить текущий документ.
        НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
        
        // Выводим шапку накладной

        ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
        ОбластьМакета.Параметры.ТекстЗаголовка = ОбщегоНазначенияБПВызовСервера.СформироватьЗаголовокДокумента(Шапка.Ссылка, "Расходная накладная");
        ТабличныйДокумент.Вывести(ОбластьМакета);

        ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
        СведенияОбОрганизации   = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата);
        ПредставлениеПоставщика = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,");
        ОбластьМакета.Параметры.ПредставлениеПоставщика = ПредставлениеПоставщика;
        ОбластьМакета.Параметры.Поставщик                 = Шапка.Поставщик;
        ТабличныйДокумент.Вывести(ОбластьМакета);

        ОбластьМакета = Макет.ПолучитьОбласть("Покупатель");
        СведенияОКонтрагенте    = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата);
        ПредставлениеПолучателя = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОКонтрагенте, "НаименованиеДляПечатныхФорм,");
        ОбластьМакета.Параметры.ПредставлениеПолучателя = ПредставлениеПолучателя;
        ОбластьМакета.Параметры.Получатель = Шапка.Получатель;
        ТабличныйДокумент.Вывести(ОбластьМакета);

        ЕстьСкидки = Ложь;

        ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы|НомерСтроки");
        ОбластьКодов  = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов");
        ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицы|Данные");
        ОбластьСуммы  = Макет.ПолучитьОбласть("ШапкаТаблицы|Сумма");

        ТабличныйДокумент.Вывести(ОбластьНомера);
        Если ВыводитьКоды Тогда
            Если ДополнительнаяКолонкаПечатныхФормДокументов = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
                ОбластьКодов.Параметры.ИмяКолонкиКодов = "Артикул";
            ИначеЕсли ДополнительнаяКолонкаПечатныхФормДокументов = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Код Тогда
                ОбластьКодов.Параметры.ИмяКолонкиКодов = "Код";
            КонецЕсли;
            ТабличныйДокумент.Присоединить(ОбластьКодов);
        КонецЕсли;
        ТабличныйДокумент.Присоединить(ОбластьДанных);
        ТабличныйДокумент.Присоединить(ОбластьСуммы);

        ОбластьКолонкаТовар = Макет.Область("Товар");

        Если НЕ ВыводитьКоды Тогда
            ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
                                                Макет.Область("КолонкаКодов").ШиринаКолонки;
        КонецЕсли;
        
        Если НЕ ЕстьСкидки Тогда
            ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
                                                Макет.Область("СуммаБезСкидки").ШиринаКолонки +
                                                Макет.Область("СуммаСкидки").ШиринаКолонки;
        КонецЕсли;

        ОбластьНомера = Макет.ПолучитьОбласть("Строка|НомерСтроки");
        ОбластьКодов  = Макет.ПолучитьОбласть("Строка|КолонкаКодов");
        ОбластьДанных = Макет.ПолучитьОбласть("Строка|Данные");
        ОбластьСуммы  = Макет.ПолучитьОбласть("Строка|Сумма");

        Сумма    = 0;
        СуммаНДС = 0;
        ВсегоСкидок    = 0;
        ВсегоБезСкидок = 0;
        КоличествоСтрок = 0;

        НомерСтроки = 0;

        Пока Шапка.Следующий() Цикл
            
            Если Шапка.Номенклатура = Null Тогда
                Продолжить;
            КонецЕсли;
            
            НомерСтроки = НомерСтроки + 1;

            ОбластьНомера.Параметры.НомерСтроки = НомерСтроки;
            ТабличныйДокумент.Вывести(ОбластьНомера);

            Если ВыводитьКоды Тогда
                ОбластьКодов.Параметры.Заполнить(Шапка);
                ТабличныйДокумент.Присоединить(ОбластьКодов);
            КонецЕсли;
            
            ОбластьДанных.Параметры.Заполнить(Шапка);
            ОбластьДанных.Параметры.Товар = СокрЛП(Шапка.Товар);
            ТабличныйДокумент.Присоединить(ОбластьДанных);

            Скидка = 0;
            
            ОбластьСуммы.Параметры.Заполнить(Шапка);
            ТабличныйДокумент.Присоединить(ОбластьСуммы);
            Сумма          = Сумма       + ?(ЗначениеЗаполнено(Шапка.Сумма), Шапка.Сумма, 0);
            СуммаНДС       = СуммаНДС    + ?(ЗначениеЗаполнено(Шапка.СуммаНДС), Шапка.СуммаНДС, 0);
            ВсегоСкидок    = ВсегоСкидок + Скидка;
            ВсегоБезСкидок = Сумма       + ВсегоСкидок;
            
            КоличествоСтрок = КоличествоСтрок + 1;

        КонецЦикла;

        // Вывести Итого
        ОбластьНомера = Макет.ПолучитьОбласть("Итого|НомерСтроки");
        ОбластьКодов  = Макет.ПолучитьОбласть("Итого|КолонкаКодов");
        ОбластьДанных = Макет.ПолучитьОбласть("Итого|Данные");
        ОбластьСуммы  = Макет.ПолучитьОбласть("Итого|Сумма");

        ТабличныйДокумент.Вывести(ОбластьНомера);
        Если ВыводитьКоды Тогда
            ТабличныйДокумент.Присоединить(ОбластьКодов);
        КонецЕсли;
        ТабличныйДокумент.Присоединить(ОбластьДанных);
        ОбластьСуммы.Параметры.Всего = ОбщегоНазначенияБПВызовСервера.ФорматСумм(Сумма);
        ТабличныйДокумент.Присоединить(ОбластьСуммы);
        
        // Вывести ИтогоНДС
        ОбластьНомера = Макет.ПолучитьОбласть("ИтогоНДС|НомерСтроки");
        ОбластьКодов  = Макет.ПолучитьОбласть("ИтогоНДС|КолонкаКодов");
        ОбластьДанных = Макет.ПолучитьОбласть("ИтогоНДС|Данные");
        ОбластьСуммы  = Макет.ПолучитьОбласть("ИтогоНДС|Сумма");
        
        ТабличныйДокумент.Вывести(ОбластьНомера);
        Если ВыводитьКоды Тогда
            ТабличныйДокумент.Присоединить(ОбластьКодов);
        КонецЕсли;
        
        Если СуммаНДС <> 0 Тогда
            ОбластьСуммы.Параметры.ВсегоНДС  = ОбщегоНазначенияБПВызовСервера.ФорматСумм(СуммаНДС);
            ОбластьДанных.Параметры.НДС      = ?(Шапка.СуммаВключаетНДС, "В том числе НДС", " Сумма НДС");
        Иначе
            ОбластьСуммы.Параметры.ВсегоНДС  = "-";
            ОбластьДанных.Параметры.НДС      = "Без налога (НДС)";
        КонецЕсли;
        
        ТабличныйДокумент.Присоединить(ОбластьДанных);
        ТабличныйДокумент.Присоединить(ОбластьСуммы);
                
        // Вывести Сумму прописью
        ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью");
        СуммаКПрописи = Сумма + ?(Шапка.СуммаВключаетНДС, 0, СуммаНДС);
        ОбластьМакета.Параметры.ИтоговаяСтрока ="Всего наименований " + КоличествоСтрок
            + ", на сумму " + ОбщегоНазначенияБПВызовСервера.ФорматСумм(СуммаКПрописи, Шапка.ВалютаДокумента);
        ОбластьМакета.Параметры.СуммаПрописью = ОбщегоНазначенияБПВызовСервера.СформироватьСуммуПрописью(СуммаКПрописи, Шапка.ВалютаДокумента);
        ТабличныйДокумент.Вывести(ОбластьМакета);

        // Вывести подписи
        ОбластьМакета = Макет.ПолучитьОбласть("Подписи");
        ОбластьМакета.Параметры.Заполнить(Шапка);
        
        Если Шапка.Склад <> Справочники.Склады.ПустаяСсылка() Тогда
            МОЛ = ОтветственныеЛицаБП.ОтветственноеЛицоНаСкладе(Шапка.Склад, Шапка.Дата);
            ДанныеФизЛица = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, МОЛ, Шапка.Дата);
            Представление = ?(ЗначениеЗаполнено(ДанныеФизЛица.Должность), Строка(ДанныеФизЛица.Должность) + " ", "");
            Представление = Представление + ?(ЗначениеЗаполнено(ДанныеФизЛица.Представление), Строка(ДанныеФизЛица.Представление), "");
            ОбластьМакета.Параметры.ОтветственныйПредставление = Представление;
        КонецЕсли;

        ТабличныйДокумент.Вывести(ОбластьМакета);

        
        // В табличном документе зададим имя области, в которую был
        // выведен объект. Нужно для возможности печати покомплектно.
        УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент,
            НомерСтрокиНачало, ОбъектыПечати, Шапка.Ссылка);

    КонецЦикла;

    Возврат ТабличныйДокумент;

КонецФункции
1 Wobland
 
10.04.14
16:47
а почему оно такое пишет?
2 Vvvvv
 
10.04.14
16:49
(1) смотрел в точке останова, в общем модуле не видит табличный документ
3 Vvvvv
 
10.04.14
17:00
в модуле для печати все есть, запрос, табличныйДокумент, функция печати, вроде все
4 Wobland
 
10.04.14
17:02
(2) а почему оно его не видит?
5 Vvvvv
 
10.04.14
17:14
(4) я бы хотел услышать подсказку.
ПечатьДокумента в ней табличный документ. Но она его не видит, почему?
6 Wobland
 
10.04.14
17:37
(5) чем не подсказка? найдёшь ответ - получишь +100 к опыту
7 Wobland
 
10.04.14
17:42
а я минут через 15-20 перестану лениться, и тогда можешь давать её мне. если твоя конфигурация меня устроит
8 Wobland
 
10.04.14
17:52
глянуть, не?
9 Vvvvv
 
10.04.14
17:54
а по коду, который я выслал, там не видно чего не хватает?
С этой печатной формой со вчерашнего вечера занимаюсь, а сегодня целый день уделил.
10 Wobland
 
10.04.14
17:54
(9) не видно. я вообще слабо себе представляю внутренности механизма ВПФ в БСП
11 Kookish
 
10.04.14
18:04
Подозреваю, что ТС что-то от нас утаивает. А именно, сведения о своей конфигурации и платформе. Вернее, с его-то конфигурацией более-менее понятно. А вот о конфигурации базы...
12 Kookish
 
10.04.14
18:18
Начинаю гадать на костях степного тушканчика: дело в команде, указанной в функции "СведенияОВнешнейОбработке()", которую ТС от нас, опять же, старательно утаивает.
13 Wobland
 
10.04.14
18:21
он уже полчаса игнорирует просьбу показать всё. +100 к опыту зарабатывает, наверное
14 banco
 
10.04.14
18:25
(0)   УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ПФ_MXL_Накладная"
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс