Имя: Пароль:
1C
 
В обработчике печати не был сформирован табличный документ
0 LivingStar
 
06.06.19
09:29
Подскажите пожалуйста, из за чего эта ошибка. Что я не так сделал?


{ОбщийМодуль.УправлениеПечатью.Модуль(1522)}: В обработчике печати не был сформирован табличный документ для: ЗаказПоставшику
            ВызватьИсключение(ТекстСообщенияОбОшибке);



//
//Функция СведенияОВнешнейОбработке() Экспорт
//    ПараметрыРегистрации                 = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("0.0.0.0");
//    ПараметрыРегистрации.Информация      = НСтр("ru = 'Печатная форма ""Заказ поставщика""'");
//    ПараметрыРегистрации.Вид             = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
//    ПараметрыРегистрации.Версия          = "1.0";
//    ПараметрыРегистрации.БезопасныйРежим = Истина;
//    //
//    МассивНазначений = Новый Массив;
//    МассивНазначений.Добавить("Документ.ЗаказПоставщика");
//    //
//    ПараметрыРегистрации.Назначение = МассивНазначений;
//    Команда                         = ПараметрыРегистрации.Команды.Добавить();
//    Команда.Представление           = НСтр("ru = 'Заказ поставщика'");
//    Команда.Идентификатор           = "ЗаказПоставщика";
//    Команда.Использование           = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
//    Команда.ПоказыватьОповещение    = Истина;
//    Возврат ПараметрыРегистрации
//КонецФункции
//
//Процедура Печать(МассивОбъектовНазначения, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
//    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ЗаказПоставщика") Тогда
//        ТабличныйДокумент = СформироватьПечатнуюФорму(МассивОбъектовНазначения, ОбъектыПечати);
//        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
//            КоллекцияПечатныхФорм,
//            "ЗаказПоставщика",
//            "Заказ поставщика",
//            ТабличныйДокумент)
//    КонецЕсли
//КонецПроцедуры
//
Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати)
    //
    ТабличныйДокумент                     = Новый ТабличныйДокумент;
    ТабличныйДокумент.ПолеСверху         = 10;
    ТабличныйДокумент.ПолеСлева             = 20;
    ТабличныйДокумент.ПолеСнизу             = 5;
    ТабличныйДокумент.ПолеСправа         = 10;
    ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;
    //
    Макет        = ПолучитьМакет("Макет");
    Запрос       = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
                   |    ЗаказПоставщикуТовары.Ссылка КАК Ссылка,
                   |    ЗаказПоставщикуТовары.Номенклатура.Наименование КАК НоменклатураНаименование,
                   |    ЗаказПоставщикуТовары.Номенклатура.Артикул КАК НоменклатураАртикул,
                   |    ЗаказПоставщикуТовары.КоличествоУпаковок КАК КоличествоУпаковок,
                   |    ЗаказПоставщикуТовары.Количество КАК Количество
                   |ИЗ
                   |    Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
                   |ГДЕ
                   |    ЗаказПоставщикуТовары.Ссылка = &Ссылка";
    Сообщить(МассивОбъектов);
    Запрос.УстановитьПараметр("Ссылка", МассивОбъектов);
    РезультатЗапроса = Запрос.Выполнить();
    Если РезультатЗапроса.Пустой() Тогда
        Возврат ТабличныйДокумент
    КонецЕсли;
    Выборка = РезультатЗапроса.Выбрать();
    Выборка.Следующий();
    
    // СЕКЦИЯ 1: Договор ->
    ОбластьШапка                            = Макет.ПолучитьОбласть("Шапка");
    ОбластьШапка.Параметры.ЗаказПоставщику = МассивОбъектов.Ссылка;
    ТабличныйДокумент.Вывести(ОбластьШапка);
    // <-
    
    // СЕКЦИЯ 2: Приложение1 ->
    //ОбластьПриложение1 = Макет.ПолучитьОбласть("Приложение1");
    //ЗаполнитьЗначенияСвойств(ОбластьПриложение1.Параметры, Выборка);
    //ОбластьПриложение1.Параметры.
    //ТабличныйДокумент.Вывести(ОбластьПриложение1);
    // <-
    Возврат ТабличныйДокумент;
КонецФункции // СформироватьПечатнуюФормуТоварногоЧека()
//

////
Функция СведенияОВнешнейОбработке() Экспорт
    ПараметрыРегистрации = Новый Структура;
    МассивНазначений = Новый Массив;
    МассивНазначений.Добавить("Документ.ЗаказПоставщику");
    //
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма");
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
    ПараметрыРегистрации.Вставить("Наименование", "Заказ поставщику ПФ");
    ПараметрыРегистрации.Вставить("Версия", "1.1");
    ПараметрыРегистрации.Вставить("БезопасныйРежим", ЛОЖЬ);
    ПараметрыРегистрации.Вставить("Информация", "Печать заказа поставщику из документа ");
    //
    ТаблицаКоманд = Новый ТаблицаЗначений;
    ТаблицаКоманд.Колонки.Добавить("Представление");
    ТаблицаКоманд.Колонки.Добавить("Идентификатор");
    ТаблицаКоманд.Колонки.Добавить("Использование");
    ТаблицаКоманд.Колонки.Добавить("ПоказыватьОповещение");
    ТаблицаКоманд.Колонки.Добавить("Модификатор");
    //
    НоваяКоманда = ТаблицаКоманд.Добавить();
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    ДобавитьКоманду(ТаблицаКоманд, "Заказ поставщику ПФ", "ЗаказПоставшику", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    Возврат ПараметрыРегистрации;
КонецФункции //СведенияОВнешнейОбработке
////
Функция ПолучитьТаблицуКоманд()
  Команды = Новый ТаблицаЗначений;
  Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
  Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
  Возврат Команды;
КонецФункции //ПолучитьТаблицуКоманд
////
Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
  НоваяКоманда = ТаблицаКоманд.Добавить();
  НоваяКоманда.Представление = Представление;  
  НоваяКоманда.Идентификатор = Идентификатор;
  НоваяКоманда.Использование = Использование;
  НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
  НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры //ДобавитьКоманду
////
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    ИмяМакета = "Макет";
    Макет     = ПолучитьМакет(ИмяМакета);
    ТабличныйДокумент = СформироватьПечатнуюФорму(МассивОбъектов[0], ИмяМакета);
    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ЗаказПоставщику", "Заказ поставщику ПФ", ТабличныйДокумент);
КонецПроцедуры //Печать
////
1 LivingStar
 
06.06.19
09:56
Что не так, подскажите пожалуйста?
Вроде все так.
2 unbred
 
06.06.19
10:13
(1) управление печатью контролДжи 1522. там всё написано
3 LivingStar
 
06.06.19
10:18
(2) По коду же все правильно. Должна вывестись шапка печатной формы. Что не так?* Подскажите пожалуйста!
4 unbred
 
06.06.19
10:20
(3) скорее всего вот в этой переменной КоллекцияПечатныхФорм  у тебя пусто. без отладчика не обойтись.
5 sqr4
 
06.06.19
10:29
(3) а я нашел)
6 sqr4
 
06.06.19
10:30
ДобавитьКоманду(ТаблицаКоманд, "Заказ поставщику ПФ", "ЗаказПоставшику", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ЗаказПоставщику", "Заказ поставщику ПФ", ТабличныйДокумент);
7 sqr4
 
06.06.19
10:30
Круто да
8 unbred
 
06.06.19
12:29
(7) ))
9 LivingStar
 
06.06.19
15:35
(6) А что это ?
10 LivingStar
 
06.06.19
16:20
(4) Внешняя обработка, подключаемая к документу.
Как её отлаживать?

В чем причина не понятно?
11 sqr4
 
06.06.19
16:44
(9) а это разница между буквами ш и щ
12 sqr4
 
06.06.19
16:45
(10) ее не надо отлаживать, отлаживать модули
13 Happy Bear
 
06.06.19
16:52
(11) глазастый какой)))
14 LivingStar
 
06.06.19
17:46
(6) Спасибо друг!
(7) Круто!!!
(11) Спасибо!
(13) Спасибо!