Имя: Пароль:
1C
1С v8
Ошибка при создании внешней печатной формы 1С 8.3
0 Margarita_Irk
 
21.05.18
05:19
Добрый день. При формировании макета внешней печатной формы выходит ошибка: {ОбщийМодуль.УправлениеПечатью.Модуль(1214)}: В обработчике печати не был сформирован табличный документ для: СоглашениеОНеразглашенииНов            ВызватьИсключение(ТекстСообщенияОбОшибке);

В чем может быть ошибка?

Код прилагаю:


Функция СведенияОВнешнейОбработке() Экспорт
    

    ПараметрыРегистрации = Новый Структура;
    МассивНазначений = Новый Массив;
    МассивНазначений.Добавить("Документ.ПриемНаРаботу");
    ПараметрыРегистрации.Вставить("Вид",            "ПечатнаяФорма");
    ПараметрыРегистрации.Вставить("Назначение",     МассивНазначений);
    ПараметрыРегистрации.Вставить("Наименование",   "Соглашение о неразглашении информации");
    ПараметрыРегистрации.Вставить("БезопасныйРежим",ЛОЖЬ);
    ПараметрыРегистрации.Вставить("Информация",     "Печать Соглашения о неразглашении информации");
    ПараметрыРегистрации.Вставить("Версия",         "1.0");  
    
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    ДобавитьКоманду(ТаблицаКоманд, "Соглашение о неразглашении информации", "СоглашениеОНеразглашенииНов", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);

    Возврат ПараметрыРегистрации;
    
КонецФункции

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

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")

    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;

КонецПроцедуры


Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "Соглашение о неразглашении информации", "Соглашение о неразглашении информации", ПечатьСоглашения( МассивОбъектов[0], ОбъектыПечати));

КонецПроцедуры


Функция ПечатьСоглашения(СсылкаНаДокумент, ОбъектыПечати) Экспорт
    
             ТабДокумент = Новый ТабличныйДокумент;
             //ТабДокумент.АвтоМасштаб    = Истина;
             //ТабДокумент.ЭкземпляровНаСтранице = 1;
             //ТабДокумент.ПолеСверху= 8;
             ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Документ_ПриемНаРаботу";
        
             Макет = ПолучитьМакет("Макет");
             Страница1=Макет.ПолучитьОбласть("Страница1");
             Страница2=Макет.ПолучитьОбласть("Страница2");
             Страница3=Макет.ПолучитьОбласть("Страница3");
             Страница4=Макет.ПолучитьОбласть("Страница4");
              Страница5=Макет.ПолучитьОбласть("Страница5");
            
             Ссылка = СсылкаНаДокумент.Ссылка;

              Запрос = Новый запрос;
             Запрос.Текст = "ВЫБРАТЬ
                |    ФизическиеЛица.Ссылка КАК Ссылка,
                |    ФизическиеЛица.ДатаРождения КАК ДатаРождения,
                |    ФизическиеЛица.ИНН КАК ИНН,
                |    ФизическиеЛица.СтраховойНомерПФР КАК СтраховойНомерПФР,
                |    ФизическиеЛица.ФИО КАК ФИО,
                |    ФизическиеЛица.ДатаРегистрации КАК ДатаРегистрации,
                |    ДокументыФизическихЛицСрезПоследних.Представление КАК Представление,
                |    ПриемНаРаботу.ДатаПриема КАК ДатаПриема,
                |    ПриемНаРаботу.Номер КАК Номер,
                |    ПриемНаРаботу.Руководитель КАК Руководитель,
                |    ПриемНаРаботу.Организация.ИНН КАК ОрганизацияИНН,
                |    ПриемНаРаботу.Организация.РегистрацияВНалоговомОргане.КПП КАК ОрганизацияРегистрацияВНалоговомОрганеКПП,
                |    ПриемНаРаботу.Организация.НаименованиеПолное КАК ОрганизацияНаименованиеПолное,
                |    ПриемНаРаботу.Организация.НаименованиеСокращенное КАК ОрганизацияНаименованиеСокращенное,
                |    ОрганизацииКонтактнаяИнформация.Представление КАК Представление1,
                |    ЗарплатныеПроекты.РасчетныйСчет КАК РасчетныйСчет,
                |    ЗарплатныеПроекты.Банк.Код КАК БанкКод
                |    ИЗ
                |    РегистрСведений.ДокументыФизическихЛиц.СрезПоследних КАК ДокументыФизическихЛицСрезПоследних
                |            ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица
                |                ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриемНаРаботу КАК ПриемНаРаботу
                |                    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Организации.КонтактнаяИнформация КАК ОрганизацииКонтактнаяИнформация
                |                    ПО (ПриемНаРаботу.Организация = ОрганизацииКонтактнаяИнформация.Ссылка)
                |                    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЗарплатныеПроекты КАК ЗарплатныеПроекты
                |                    ПО (ЗарплатныеПроекты.Организация.Ссылка = ПриемНаРаботу.Организация.Ссылка)
                |                ПО (ФизическиеЛица.Ссылка = ПриемНаРаботу.ФизическоеЛицо.Ссылка)
                |            ПО (ДокументыФизическихЛицСрезПоследних.Физлицо = ФизическиеЛица.Ссылка)
                |    ГДЕ
                |        ПриемНаРаботу.ФизическоеЛицо.Ссылка = &Ссылка";
            
             Запрос.УстановитьПараметр("Ссылка", Ссылка);
             ВыборкаП = Запрос.Выполнить().Выбрать();
            
            Пока ВыборкаП.Следующий() Цикл
              Страница1.Параметры.НомерПр=ВыборкаП.Номер;
             Страница1.Параметры.ДатаПр=ВыборкаП.ДатаПриема;
             Страница1.Параметры.ДатаПр1=ВыборкаП.ДатаПриема;
              Страница5.Параметры.ОрганизацияПолн=ВыборкаП.ОрганизацияНаименованиеПолное;
              Страница5.Параметры.ОрганизацияКрат=ВыборкаП.ОрганизацияНаименованиеСокращенное;
             Страница5.Параметры.ЮАдрес=ВыборкаП.Представление1;
             Страница5.Параметры.ПАдрес=ВыборкаП.Представление1;
             Страница5.Параметры.Счет=ВыборкаП.РасчетныйСчет;
             Страница5.Параметры.БИК=ВыборкаП.БанкКод;
             Страница5.Параметры.ИНН=ВыборкаП.ОрганизацияИНН;
             Страница5.Параметры.КПП=ВыборкаП.КПП;
                Страница5.Параметры.ГенДиректор=ВыборкаП.Руководитель;
             Страница5.Параметры.Сотрудник=ВыборкаП.ФИО;
             Страница5.Параметры.ДатаРождения=ВыборкаП.ДатаРождения;
             Страница5.Параметры.Паспорт=ВыборкаП.Представление;
             Страница5.Параметры.ИНН1=ВыборкаП.ИНН;
             Страница5.Параметры.Страховой=ВыборкаП.СтраховойНомерПФР;
             Страница5.Параметры.Сотрудник1=ВыборкаП.ФИО;

           КонецЦикла;            
          
            ТабДокумент.Вывести(Страница1);
            ТабДокумент.Вывести(Страница2);
            ТабДокумент.Вывести(Страница3);
            ТабДокумент.Вывести(Страница4);
            ТабДокумент.Вывести(Страница5);
            
            Возврат ТабДокумент;
     КонецФункции
1 SleepyHead
 
гуру
21.05.18
05:21
(0)В первой строке процедуры "Печать" у вас ошибка.
2 Margarita_Irk
 
21.05.18
05:28
В чем именно заключается ошибка?
3 SleepyHead
 
гуру
21.05.18
05:46
(1) Значение второго параметра неверное. Необходимо передать идентификатор печатной формы "СоглашениеОНеразглашенииНов", который вы указали при формировании таблицы команд.
4 Margarita_Irk
 
21.05.18
05:47
Заработало) спасибо огромное!)
5 SleepyHead
 
гуру
21.05.18
05:56
(4) Спасибо в стакан не нальешь!
Программист всегда исправляет последнюю ошибку.