Как можно передать параметры печати для внешней печатной формы?

1. Gok9 09.01.23 07:47 Сейчас в теме
Здравствуйте, как можно передать параметры печати для внешней печатной формы? Создал новую обработку для внешней печатной формы КоммерческоеПредложениеКлиенту и надо передать параметры печати, код для скопировал с менеджера документа КоммерческоеПредложениеКлиенту, в параметры печати учитывается отобразить скидку или нет, во внешнюю печатную форму нельзя передать параметры в процедуре Печать() БСП, поэтому не знаю как передать этот параметр... Можно ли объявить новую переменную ПараметрыПечати и создать новую структуру в этой процедуре сработает ли так?

Из-за того что ПараметрыПечати не могу передать неправильно формируется табличная часть печатной формы, можете подсказать как правильно передать ПараметрыПечати? Чтобы не ругался написал ПараметрыПечати = Новая Структура

Хотел бы добиться результата как на последнем фото
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
29. DBV 10.01.23 12:57 Сейчас в теме
(1) есть что то в данной процедуре?

На основании чего должны группироваться строки?
Прикрепленные файлы:
30. Gok9 10.01.23 13:33 Сейчас в теме
(29) В процедуре насколько по отладке понял при каждой итерации группируются товары, в массиве товаров в строке где приходиться разделитель строка пустая и в этой процедуре тоже строка пустой проходить...

В типовом коде "ДанныеОбъекта.Товары" массив товаров заполнен иначе, почему так происходить тоже не могу понянь код одинаковый в ВПФ и в типовом коде...
Прикрепленные файлы:
31. DBV 10.01.23 14:10 Сейчас в теме
(30) непонятные пустые строки

Тогда надо плясать с самого начала, какой результат получается у второго запроса? (по табличной части документа)
32. Gok9 10.01.23 14:57 Сейчас в теме
(31) Хорошо, буду попытаться найти момент где заполняется так как в типовом коде, второй запрос это запрос который происходить в ВПФ?
35. Gok9 11.01.23 07:07 Сейчас в теме
(31) Нашел почему массив товаров не заполняется как в типовом коде, при выполнении "ЗаполнитьТабличныйДокументКоммерческоеПредложениеКлиенту(ТабличныйДокумент, ДанныеОбъекта, ПараметрыПечати);" в типовом коде вызывается процедура "ПроизвольноеНаименованиеНоменклатуры" из расширения, а через внешнюю печатную форму это процедура не вызывается, как можно вызвать эту процедуру? Можно ли этот код перенести в ОбщийМодуль конфигурации? Или в саму внешнюю печатную форму?
Прикрепленные файлы:
37. DBV 11.01.23 13:37 Сейчас в теме
(35) Можно эту часть добавить в вашу внешнюю печатную форму
36. Gok9 11.01.23 09:22 Сейчас в теме
(31) В дальнейшем в УправлениеПечати, типовая печатная форма и ВПФ идут по разным процедурам и поэтому в ВПФ не печатается разделитель и итоги по разделителю. Можете подсказать как в самой конфигурации реализовать эту печатную форму в модуль менеджера документа КоммерческоеПредложениеКлиенту или после создания новой обработки на ветке конфигурации, хотел бы скопировать код и макет ПФ в обработку? Думаю если реализовать в саму конфигурацию то сработает...
Прикрепленные файлы:
2. Kilka_v_Kepke 09.01.23 08:39 Сейчас в теме
а что изменилось от того что вы переопределили явно Параметры печати как новую структуру, потом пытаетесь что-то найти(В пустой структуре!), и меняете какую-то переменную в функции, использование которой в дальнейшем я не вижу
3. Gok9 09.01.23 09:57 Сейчас в теме
(2) Как можно передать вот такие параметры в ПараметрыПечати на фото? Такие параметры передаются в стандартной печатной форме, как мне передать эти параметры?
Прикрепленные файлы:
4. Kilka_v_Kepke 09.01.23 10:07 Сейчас в теме
ну вставьте явно если вам там всегда нужна ложь
5. Gok9 09.01.23 10:25 Сейчас в теме
(4) Вставил но результат не поменялся
6. Kilka_v_Kepke 09.01.23 12:02 Сейчас в теме
Ну по крайней мере вы вставили не на скрине
ПараметрыПечати.Вставить("Отображать", Ложь);
7. Gok9 09.01.23 13:11 Сейчас в теме
(6) Имею ввиду параметры передал но строковая часть не изменилась, не могу найти в отладке где происходить ошибка все вроде подставляет нормально с начала, но потом при выводе не показывает разделители и итоги, в тупик попал не понимаю почему так происходить...
Прикрепленные файлы:
8. teplova_ok 09.01.23 13:53 Сейчас в теме
У вас явно что-то лишнее выводится при выводе строк. Вы уверены, что дело в параметре "Отображать скидки?"
9. Gok9 09.01.23 14:18 Сейчас в теме
(8) Думаю проблема в том что после передачи данных в управление печати там с внешней печатной формы не передаётся эти параметры, а именно НомерВарианта = 1, проблема в этом параметре, конфигурация ERP+CRM в документе КоммерческоеПредложениеКлиенту особенно в табличной части товаров очень много доработок от CRM, по моим предположениям проблема в этом лежит. В типовом коде после передачи в управление печати этот параметр используется при выводе на печать, теперь думаю реализовать эту печатную форму в обработке на дерево конфигурации.
14. teplova_ok 09.01.23 14:41 Сейчас в теме
(9) Вставьте в структуру еще "номер варианта" и проверьте предположение)
15. Gok9 09.01.23 14:46 Сейчас в теме
(14) Написал не помогает))
Прикрепленные файлы:
10. soft_wind 09.01.23 14:19 Сейчас в теме
В вашей процедуре явно надо задать параметр

ПараметрыПечати = Новый Структура;
ПараметрыПечати.Вставить("ОтображатьСкидки",Ложь);
11. Gok9 09.01.23 14:23 Сейчас в теме
(10)
ПараметрыПечати = Новый Структура;
ПараметрыПечати.Вставить("ОтображатьСкидки",Ложь);


Ну я же задал параметры...
Прикрепленные файлы:
12. soft_wind 09.01.23 14:34 Сейчас в теме
нет.
там где у вас, в ВПФ процедура Печать

Процедура Печать(...)

//добавить это
ПараметрыПечати = Новый Структура;
ПараметрыПечати.Вставить("ОтображатьСкидки",Ложь);

....


//а это, ПолучитьПараметрыПечати - уберите
13. Gok9 09.01.23 14:40 Сейчас в теме
(10) Сделал но ничего не изменился))
Прикрепленные файлы:
16. soft_wind 09.01.23 14:46 Сейчас в теме
хм
Хотел бы добиться результата как на последнем фото


так у вас и получился результат - без колонки Скидка !
(что же вам еще надо?)
17. Gok9 09.01.23 14:49 Сейчас в теме
(16) В табличной части не заполняется разделители и итоги по разделителю)
18. soft_wind 09.01.23 14:58 Сейчас в теме
(17)
(16) В табличной части не заполняется разделители и итоги по разделителю)

а это уже к Параметрам не относится!

проверяйте вывод таблицы, с пом. ПроверитьВывод()
программно вставляйте разделитель страниц (для примера в своих старых печатных формах посмотрите как там сделано)
19. Gok9 09.01.23 15:15 Сейчас в теме
(18) Как проверить с помощью ПроверитьВывод()?
20. teplova_ok 09.01.23 15:17 Сейчас в теме
(16) их нужно заполнять отдельно, посмотрите, как у вас происходит заполнение. Разделитель - это группа номенклатуры? или это отдельная строка в ТЧ документа? можете скинуть обработку? посмотрела бы
21. Gok9 10.01.23 05:13 Сейчас в теме
(20) Доброе утро, разделители это отдельная строка в табличной части
Прикрепленные файлы:
КПКвнешняя.epf
22. teplova_ok 10.01.23 07:51 Сейчас в теме
(21) У вас нет вывода данных по разделителю. Я бы сортировала таблицу по ним, собирала в цикле вывода строк сумму по разделителю и выводила отдельной строкой, которую необходимо еще и в макет добавить)
23. Gok9 10.01.23 08:02 Сейчас в теме
(22) Как можно это реализовать?))
24. Gok9 10.01.23 10:26 Сейчас в теме
(22) Хотел бы попробовать реализовать эту печатную форму в "Обработки" на дереве конфигурации и проверить свои некоторые предположения, создал обработку прописал в модуль менеджера добавление команды печати для документа КоммерческоеПредложениеКлиенту перезапускаю конфигурацию, а там не добавляется команда для печати, что делаю не так?
Прикрепленные файлы:
25. teplova_ok 10.01.23 10:54 Сейчас в теме
(24) команду печати необходимо прописывать в модуле менеджера объекта, из которого Вы хотите вызывать печать документа

(23) Реализовать примерно так:
Разделитель = неопределено;
СуммаПоРазделителю = 0;

Для каждого строка из Строки Цикл
       Если *Строка.Номенклатура = Разделитель Тогда      //проверяем разделитель это или нет (я не знаю как у вас в базе реализовано)
               Если Строка.Номенклатура <> Разделитель тогда
                      //   Выводим строку в итоговой суммой для текущего разделителя
                     //    Выводим разделитель
                     Разделитель = Строка.Номенклатура;
                     СуммаПоРазделителю = 0;
               КонецЕсли;
               
       Иначе
                    // выводим типовую строку с номенклатурой
                   
                   СуммаПоРазделителю = СуммаПоРазделителю + Строка.Сумма;
       КонецЕсли;
КонецЦикла;       
Показать
26. Gok9 10.01.23 11:32 Сейчас в теме
(25) Конфигурация объединенная ERP + CRM, разделитель, вариант утверждения по моим предположениям добавка от CRM.
Переписал команду печати в модуль менеджера созданной обработки КПКвнутреняя сохранил запустил, список команд не заполнился))
Прикрепленные файлы:
27. teplova_ok 10.01.23 11:47 Сейчас в теме
(26) так правильно, добавить нужно в модуль менеджера объекта) то есть самого документа, из которого хотите печатать.
28. Gok9 10.01.23 11:51 Сейчас в теме
(27) а через модуль менеджера обработки нельзя?))
33. пользователь 10.01.23 15:07
Сообщение было скрыто модератором.
...
34. Gok9 11.01.23 05:10 Сейчас в теме
(33) Имеется ввиду модуль менеджера обработки на ветке конфигурации...
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот