|
ЗУП 3.1 Внешняя печатная форма не видит документ, к которому должна подключаться. | ☑ | ||
---|---|---|---|---|
0
Vasiliy2018
26.01.18
✎
11:45
|
ЗУП 3.1.4.120
Возникла необходимость перенести печатные формы с 2.5. Соответственно была создана новая внешняя обработка с реквизитом «СсылкаНаОбъект» с типом ДокументСсылка.НужныйДокумент. Перенесет макет. Оформлена процедура «СведенияОВнешнейОбработке» и все сопутствующее. Но возникла проблема, обработка не видит «СсылкаНаОбъект», соответственно отрисовывает голый макет без параметров. В чем может быть проблема? |
|||
1
Alexandr_U1982
26.01.18
✎
11:49
|
||||
2
Alexandr_U1982
26.01.18
✎
11:51
|
Реквизит "СсылкаНаОбъект" не нужен.
Объект(ы), к которому привязана печатная форма, в процедуру печати передается другим способом. |
|||
3
Darych
26.01.18
✎
11:54
|
в 3.1 другая парадигма.. кури БСП
|
|||
4
Vasiliy2018
26.01.18
✎
14:16
|
(2) но как?
Глянул описание, расписаны СведенияОВнешнейОбработке(), но не понятно к чему обращаться. Назначение документа указано. |
|||
5
Alexandr_U1982
26.01.18
✎
14:22
|
(4)Для особо одаренных и тех, кто не умеет читать до конца:
Пример: внешняя печатная форма Обработка с одной печатной формой: Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.3.1.73"); ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма(); ПараметрыРегистрации.Версия = "1.3"; // Определение объектов, к которым подключается эта обработка. ПараметрыРегистрации.Назначение.Добавить("Документ._ДемоСчетНаОплатуПокупателю"); // Добавление команды печати "Счет на оплату". НоваяКоманда = ПараметрыРегистрации.Команды.Добавить(); НоваяКоманда.Представление = НСтр("ru = 'Счет на оплату (внешняя печатная форма)'"); НоваяКоманда.Идентификатор = "СчетНаОплату"; НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода(); НоваяКоманда.Модификатор = "ПечатьMXL"; Возврат ПараметрыРегистрации; КонецФункции Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт ПечатнаяФорма = УправлениеПечатью.СведенияОПечатнойФорме(КоллекцияПечатныхФорм, "СчетНаОплату"); Если ПечатнаяФорма <> Неопределено Тогда ПечатнаяФорма.ТабличныйДокумент = СформироватьСчетНаОплатуПокупателю(МассивОбъектов, ОбъектыПечати); ПечатнаяФорма.СинонимМакета = НСтр("ru = 'Счет на оплату'"); КонецЕсли; КонецПроцедуры Функция СформироватьСчетНаОплатуПокупателю(МассивОбъектов, ОбъектыПечати) ТабличныйДокумент = Новый ТабличныйДокумент; .... Возврат ТабличныйДокумент; КонецФункции |
|||
6
Alexandr_U1982
26.01.18
✎
14:23
|
Для назначаемых обработок типа ПечатнаяФорма реализовать экспортную процедуру Печать с параметрами МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати и ПараметрыВывода. Описание параметров см. в разделе «Печать». При этом в структуре ПараметрыВывода содержится свойство ДополнительнаяОбработкаСсылка (ссылка на элемент справочника ДополнительныеОтчетыИОбработки, который связан с данной дополнительной обработкой).
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт // Реализация логики команды печати Если ИдентификаторКоманды = ... Тогда ... ИначеЕсли ... КонецПроцедуры |
|||
7
Alexandr_U1982
26.01.18
✎
14:24
|
Вариант запуска «Вызов клиентского метода»
Для назначаемых обработок типа ПечатнаяФорма реализовать экспортную процедуру Печать с двумя параметрами: ИдентификаторКоманды и ОбъектыНазначенияМассив, где ИдентификаторКоманды – строка, идентификатор команды; ОбъектыНазначенияМассив – массив ссылок на объекты информационной базы, для которых выполняется дополнительная обработка: &НаКлиенте Процедура Печать(ИдентификаторКоманды, ОбъектыНазначенияМассив) // Реализация логики команды печати // ... КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |