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

Печать из внешней обработки используя модуль менеджера

Печать из внешней обработки используя модуль менеджера
Я
   TyurinArt
 
29.08.20 - 09:55
Динамический список выводит реализации на форму внешней обработки, пытаюсь добавить кнопку "Печать" - аналогичную (Комплект документов на принтер, УПД и тд), которая есть в документе "Реализация товаров и услуг".

Получаю массив объектов из формы и передаю в процедуру печать в модуль менеджера реализации.
Ошибка: недостаточно параметров "ПараметрыПечати";
1) Что передать в этот параметр?
2) Может не тот способ решения выбрал или есть способ проще?
Ниже код модуля формы внешней обработки:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

   МассивОбъектов = Получить_Массив_Из_ДинамическогоСписка();    
    
   Документы.РеализацияТоваровУслуг.Печать(МассивОбъектов);
    
КонецПроцедуры


&НаСервере
Функция Получить_Массив_Из_ДинамическогоСписка()
    
    Схема = Элементы.Объект.ПолучитьИсполняемуюСхемуКомпоновкиДанных();

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

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

КонецФункции
   ДенисЧ
 
1 - 29.08.20 - 10:09
А посмотреть, как в конфигурации создаётся и передаётся этот ПараметрыПечати?
   TyurinArt
 
2 - 29.08.20 - 16:36
Подкорректирую вопрос: на панели команд (внешняя обработка, динамический список с реализациями) пытаюсь программно вывести кнопку "Печать", следующим кодом:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    ТЗ = УправлениеПечатью.СоздатьКоллекциюКомандПечати();
    
    Документы.РеализацияТоваровУслуг.ДобавитьКомандыПечати(ТЗ);
    
КонецПроцедуры

Обработка открывается, список с реализациями формируется, а кнопки "Печать" нет. В чем ошибка?(
   RomanYS
 
3 - 29.08.20 - 17:24
(2) Твои ожидание, что заполнение некой ТЗ приведет к появлению кнопок на форме беспочвенны.
   TyurinArt
 
4 - 29.08.20 - 18:14
(3) Что курить, куда копать?
   RomanYS
 
5 - 29.08.20 - 18:26
(4) подсистему печати в БСП
   TyurinArt
 
6 - 30.08.20 - 16:51
(5) Вывел на форму печать; теперь пытаюсь передать в параметр источник "ТаблицуФормы", но как её получить из динамического списка?

// Параметры:
//   Форма - УправляемаяФорма - Форма, из которой выполняется команда.

//   Команда - КомандаФормы - Выполняемая команда.
//   Источник - ТаблицаФормы, ДанныеФормыСтруктура - Объект или список формы с полем "Ссылка".

//
Процедура ВыполнитьКоманду(Форма, Команда, Источник)
   TyurinArt
 
7 - 30.08.20 - 17:40
ЗАРАБОТАЛО!!!111 Источник = Элементы.Объект.ТекущиеДанные;
   TyurinArt
 
8 - 30.08.20 - 18:39
(5) Новая проблема( если выделяю несколько реализация и отправляю на печать, выводится только один документ, как передать выделенные?
   ДенисЧ
 
9 - 30.08.20 - 18:43
(8) Тебе в процедуру печати должен прилетать массив
   TyurinArt
 
10 - 31.08.20 - 05:20
Поправил строчку: "Источник = Элементы.Объект.ТекущиеДанные;"
на "Источник = Элементы.Объект;" - заработало, теперь печатаются все выделенные документы.

Первое впечатление о БСП - слишком сложно, разбросано по модулям, бегай по процедурам; не нашёл не карты, не общей схемы, как с ней работать не понятно... я выбрал метод тыка + ф12;

Всем спасибо за помощь.
   PaulBC
 
11 - 31.08.20 - 05:30
Зачем это все? С БСП подключается элементарно через дополнительные отчеты и обработки.

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