Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Не работает внешняя печатная форма.

Не работает внешняя печатная форма.
Я
   Alive
 
24.02.20 - 09:34
Всем доброго времени суток! Очень надеюсь на вашу помочь в решение следующей проблемы. Конфа "Управление учебным центром", платформа 8.3.15.1700.
Создала внешнюю печатную форму, подцепила ее к документу. На форме документ появилась соответствующая кнопка для печати, но когда на нее наживаешь, печать не происходит. Не запускается процедура по печати. Проверяла, указать в процедуре Печать первой строкой Сообщить("Тест"), ничего не выводит.
Прилагаю Код внешней печатной формы:


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

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

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


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

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


Функция ПечатьАкт(МассивОбъектов, ОбъектыПечати)
    
    ТабДокумент = Новый ТабличныйДокумент;
    
    ТабДокумент.КлючПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Акт";
    Макет = ПолучитьМакет("Макет_АктЮрЛицо");
   Alive
 
1 - 24.02.20 - 09:38
В Функции ПечатьАкт указала не то наименование Макета, на самом деле там такое же наименование, как и в Процедуре печать(). (0)
   Dimeric
 
2 - 24.02.20 - 13:29
(0)Причин может быть масса.

Поробуй отладкой пройтись
   Alive
 
3 - 24.02.20 - 15:32
А как запустить отладку, если даже функция Печать не запускается?( Сообщение же не выводится.
   Cthulhu
 
4 - 24.02.20 - 16:37
//ДобавитьКоманду(ТаблицаКоманд, "АктЮрЛицо", "ПФ_MXL_Макет_АктЮрЛицо", "ВызовСерверногоМетода", Истина, "ПечатьMXL"); 

ДобавитьКоманду(ТаблицаКоманд, "АктЮрЛицо", "ПФ_MXL_Макет_АктЮрЛицо", ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода(), Истина, "ПечатьMXL");
   Cthulhu
 
5 - 24.02.20 - 18:36
а не то же самое, пардон...
на второй взгляд - мататень с типами в ТЗ команд - из-за чего она (тз) скорее всего кривая.
БСП же позволяет и параметры регистрации и тз команд получать без рисков ошибиться.
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
ПараметрыРегистрации.Назначение.Добавить("Документ.Акт");
Команда = ПараметрыРегистрации.Команды.Добавить();
//Команда.Представление = ...; Команда.Идентификатор = ...; Команда.Использование = ...; Команда.Модификатор = ; и т.п. ...

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.