Регистрация Правила Главная форума Поиск |
0
- 17.01.2019 - 18:18
|
1С:Предприятие 8.3 (8.3.10.2561) Бухгалтерия для Украины, редакция 2.0. (2.0.13.1) управляемые формы (конфигурация на поддержке). Сделал внешнюю печатную форму. Подключил к конфигурации. При выполнении выдает ошибку {ОбщийМодуль.ДополнительныеОтчетыИОбработкиКлиент. Модуль(439)**: Ошибка при вызове метода контекста (ПолучитьФорму) ФормаОбработки = ПолучитьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма", ПараметрыОбработки, Форма); по причине: Ошибка инициализации модуля: ВнешняяОбработка.СчетНаОплатуПокупателюПечатьСКода миУКТЗЕД.Форма.Форма.Форма по причине: {ВнешняяОбработка.СчетНаОплатуПокупателюПечатьСКод амиУКТЗЕД.Форма.Форма.Форма(6,13)**: Процедура или функция с указанным именем не определена (ПечатьДокумента) ПечФорма = <<?>>ПечатьДокумента(ОбъектыНазначения); В модуле объекта есть Функция ПечатьДокумента(МассивОбъектов) Экспорт | |
1
- 17.01.2019 - 18:36
| Может при регистрации впф указан не тот способ вызова обработки,1с хочет открыть форму, а формы нет | |
2
- 17.01.2019 - 18:40
|
В параметрах регистрации заполнил так Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = Новый Структура; МассивНазначений = Новый Массив; МассивНазначений.Добавить("Документ.СчетНаОплатуПо купателю"); ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); ПараметрыРегистрации.Вставить("Назначение", МассивНазначений); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок ПараметрыРегистрации.Вставить("Наименование", НСтр("ru='Счет на оплату с кодами УКТВЭД';uk='Рахунок на оплату з кодами УКТЗЄД'")); ПараметрыРегистрации.Вставить("БезопасныйРежим", ЛОЖЬ); ПараметрыРегистрации.Вставить("Версия", "1.0"); ПараметрыРегистрации.Вставить("Информация", "Внешняя печатная форма Счет на оплату покупателю с кодами УКТВЭД"); ТаблицаКоманд = Новый ТаблицаЗначений; ТаблицаКоманд.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); ТаблицаКоманд.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); ТаблицаКоманд.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); ТаблицаКоманд.Колонки.Добавить("ПоказыватьОповещен ие", Новый ОписаниеТипов("Булево")); ТаблицаКоманд.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка")); НоваяКоманда = ТаблицаКоманд.Добавить(); НоваяКоманда.Представление = НСтр("ru='Счет на оплату с кодами УКТВЭД';uk='Рахунок на оплату з кодами УКТЗЄД'"); НоваяКоманда.Идентификатор = "ПФ_MXL_СчетЗаказ_УКТВЭД"; НоваяКоманда.Использование = "ВызовКлиентскогоМетода"; НоваяКоманда.ПоказыватьОповещение = Истина; НоваяКоманда.Модификатор = "ПечатьMXL"; ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд); Возврат ПараметрыРегистрации; КонецФункции | |
3
- 17.01.2019 - 18:58
|
Выше описаную ошибку поборол Спасибо USSR за подсказку НоваяКоманда.Использование = "ВызовКлиентскогоМетода"; вызываеться процедура печать из Формы НоваяКоманда.Использование = "ВызовСерверногоМетода"; вызываеться процедура печать из МодуляОбъекта | |
4
- 17.01.2019 - 19:00
|
при этом появилась другая ошибка {ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль (233)**: В обработчике печати не был сформирован табличный документ для: СчетЗаказ_УКТВЭД ВызватьИсключение(ТекстСообщенияОбОшибке); | |
5
- 17.01.2019 - 19:31
| (2)Ваша функция печати в модуле обработки должна возвращать сформированный табличный документ. Я не в курсе украинских конфигураций, в российских она называется просто "Печать" | |
6
- 17.01.2019 - 19:32
| Вы найдите и посмотрите работающую обработку для этой конфигурации | |
7
- 17.01.2019 - 21:24
|
6-USSR > Так она его возвращает, по крайней мере должна. Вот текст процедуры печать и функции ПечатьДокумента Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт УправлениеПечатью.ВывестиТабличныйДокументВКоллекц ию( КоллекцияПечатныхФорм, НСтр("ru='Счет на оплату с кодами УКТВЭД';uk='Рахунок на оплату з кодами УКТЗЄД'"), НСтр("ru='Счет на оплату с кодами УКТВЭД';uk='Рахунок на оплату з кодами УКТЗЄД'"), ПечатьДокумента(МассивОбъектов) ); КонецПроцедуры Функция ПечатьДокумента(МассивОбъектов) Экспорт ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказПокупателя_СчетЗаказ"; ..... ОбластьМакета.Параметры.Заполнить(Шапка); ТабДокумент.Вывести(ОбластьМакета); Возврат ТабДокумент; КонецФункции | |
8
- 18.01.2019 - 02:31
|
(7)а такая строчка у Вас есть ?) Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПеча тныхФорм, <ИмяМакета>) Тогда Если есть, то внимательно смотрите на нее )) | |
9
- 18.01.2019 - 10:53
|
8-USSR > Такой строчки нет... Но такая Функция в общем модуле УправлениеПечатью есть... | |
10
- 18.01.2019 - 12:06
| (9)ну вот и смотри что у тебя делается, у тебя табличный документ не добавляется в коллекцию печатных форм. Поставь точку прерывания в этом модуле. Но обычно проверка идет там, где я написал, в модуле ВПФ | |
11
- 18.01.2019 - 12:13
|
10-USSR > Только не это внешняя печатная форма и точку останова не могу поставить, вернее ставил, не останавливаеться на ней. | |
12
- 18.01.2019 - 12:44
| в впф то понятно не поставить) хотя можно, но это отдельная песня. Смотри проверки на включение в коллекцию печатных форм по имени макета | |
13
- 18.01.2019 - 14:55
|
12-USSR > Спасибо за помощь Пошел другим путем скачал шаблон для ВПФ и сделал на его основе. Все получилось. | |
14
- 18.01.2019 - 15:07
| Так надо же причину понять, разве цель впы слепить, цель научиться | |
15
- 18.01.2019 - 15:44
|
14-USSR > Давно не захаживал на этот форум. Даже пришлось заново региться. Подскажи где можно тебе в карму плюсануть? Чего-то не нашел... А вроде когда то было. | |
16
- 18.01.2019 - 15:51
| (15) это лишнее. Я ж не корысти ради. Хороших выходных. Кстати, попробуй ту же впф сделать как обработку в контексте расширения | |
17
- 18.01.2019 - 16:08
|
16-USSR > Спасибо, тебе тоже хорошо отдохнуть на выходных. | |
| Интернет-форум Краснодарского края и Краснодара |