Здравствуйте!
в УТ 11 делаю ВПФ для Возвратов поставщику. Через команду Файл - Открыть эта обработка работает.
Не могу настроить, чтобы при добавлении ее в 1С, она работала.
Пишет Печатная форма недоступна.
Еще делал основываясь на статьеhttp://infostart.me/public/656149/
в этом случае просто открывает пустую форму.
Подскажите, пожалуйста, с решением проблемы.
Заранее спасибо!
в УТ 11 делаю ВПФ для Возвратов поставщику. Через команду Файл - Открыть эта обработка работает.
Не могу настроить, чтобы при добавлении ее в 1С, она работала.
Пишет Печатная форма недоступна.
Еще делал основываясь на статье
в этом случае просто открывает пустую форму.
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
Если ТипЗнч(МассивОбъектов) = Тип("СписокЗначений") Тогда
МассивОбъектов = МассивОбъектов.ВыгрузитьЗначения();
КонецЕсли;
ИмяМакета = "ПФ_MXL_ВозвратПоставщику";
ПараметрыВывода.Вставить("ИмяМакета", ИмяМакета);
ссылкаДок = МассивОбъектов[0];
//управляем именем сохранения файла
имяФСохр = ПрефиксацияОбъектовКлиентСервер.ПолучитьНомерНаПечать(ссылкаДок.Номер) + " " + СокрЛП(ссылкаДок.Метаданные().Синоним) + " " + СокрЛП(ссылкаДок.Контрагент);
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ПФ_MXL_ВозвратПоставщику", НСтр("ru='Возврат товаров'"),
СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати, Неопределено, ПараметрыВывода),,, имяФСохр);
КонецПроцедуры
ПоказатьПодскажите, пожалуйста, с решением проблемы.
Заранее спасибо!
По теме из базы знаний
- Печать непроведенных документов УТ 11, ERP и КА 2 [Расширение]
- Накладная на перемещение для документа "Перемещение товаров" с выводом веса и объема без проведения для УТ 11
- Акт выполненных работ (услуги) для Комплексной автоматизации 2 (2.4.7.141) без проведения документа
- Универсальная внешняя форма документа/справочника (управляемые формы)
- Печать Счета на оплату без проведения документа (с картинками и без)
Найденные решения
(4) в модуле формы поменяй процедуру на эту :
а в модуле объекта переименуй все "СсылкаНаОбъект" на "СсылкаНаОбъект2" чтоб не путать параметры, и добавь эту строку
ну и в конце закрой цикл
зы: подчеркнул только те строки что надо добавить
&НаСервере
Процедура ЗаполнитьНаСервере()
ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
МассивСсылок = Новый Массив;
МассивСсылок.Добавить(объект.СсылкаНаОбъект);
ТабличныйДокумент = ОбработкаОбъект.СформироватьПечатнуюФорму(МассивСсылок, Новый СписокЗначений);
КонецПроцедуры
а в модуле объекта переименуй все "СсылкаНаОбъект" на "СсылкаНаОбъект2" чтоб не путать параметры, и добавь эту строку
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ВозвратТоваровПоставщику_Накладная";
Для Каждого СсылкаНаОбъект2 из МассивОбъектов Цикл
Запрос = Новый Запрос(
ну и в конце закрой цикл
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ДанныеПечати.Ссылка);
КонецЦикла;
КонецЦикла;
Возврат ТабличныйДокумент;
зы: подчеркнул только те строки что надо добавить
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Делал так:
1.Добавить форму, в модуле формы добавить процедуру Печать:
2.В модуле обработки в функции СведенияОВнешнейОбработке() в параметрах вызова функции ДобавитьКоманду указать "ВызовКлиентскогоМетода":
1.Добавить форму, в модуле формы добавить процедуру Печать:
&НаКлиенте
Процедура Печать(ИмяКоманды, МассивОбъектов, ПараметрыПечати = неопределено, КоллекцияПечатныхФорм = неопределено, ОбъектыПечати = неопределено, ПараметрыВывода = неопределено) Экспорт
ВыполняемаяКоманда = Параметры;
ПараметрыОткрытия = Новый Структура("ИсточникДанных, ПараметрыИсточника");
ПараметрыОткрытия.ИсточникДанных = ВыполняемаяКоманда.ДополнительнаяОбработкаСсылка;
ПараметрыОткрытия.ПараметрыИсточника = Новый Структура("ИдентификаторКоманды, ОбъектыНазначения");
ПараметрыОткрытия.ПараметрыИсточника.ИдентификаторКоманды = ВыполняемаяКоманда.ИдентификаторКоманды;
ПараметрыОткрытия.ПараметрыИсточника.ОбъектыНазначения = ВыполняемаяКоманда.ОбъектыНазначения;
ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия);
КонецПроцедуры // Печать()
Показать2.В модуле обработки в функции СведенияОВнешнейОбработке() в параметрах вызова функции ДобавитьКоманду указать "ВызовКлиентскогоМетода":
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = Новый Структура;
МассивНазначений = Новый Массив;
МассивНазначений.Добавить("Документ.ЗаказКлиента"); //Указываем документ к которому делаем внешнюю печ. форму
ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); //может быть - ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов...
ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
ПараметрыРегистрации.Вставить("Наименование", "ЗаказКлиента_СчетНаОплату"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
ПараметрыРегистрации.Вставить("Версия", "1.1");
ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
ПараметрыРегистрации.Вставить("Информация", "Внешняя печатная форма к документу Заказ клиента");//так будет выглядеть описание печ.формы для пользователя
ТаблицаКоманд = ПолучитьТаблицуКоманд();
// Администратор 07.08.2015
//ДобавитьКоманду(ТаблицаКоманд, "ЗаказКлиента_СчетНаОплату", "ЗаказКлиента_СчетНаОплату", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
// Печать непроведенного документа
ДобавитьКоманду(ТаблицаКоманд, "ЗаказКлиента_СчетНаОплату", "ЗаказКлиента_СчетНаОплату", "ВызовКлиентскогоМетода", Истина, "ПечатьMXL");
// Администратор
ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
Возврат ПараметрыРегистрации;
КонецФункции
Показать
(4) в модуле формы поменяй процедуру на эту :
а в модуле объекта переименуй все "СсылкаНаОбъект" на "СсылкаНаОбъект2" чтоб не путать параметры, и добавь эту строку
ну и в конце закрой цикл
зы: подчеркнул только те строки что надо добавить
&НаСервере
Процедура ЗаполнитьНаСервере()
ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
МассивСсылок = Новый Массив;
МассивСсылок.Добавить(объект.СсылкаНаОбъект);
ТабличныйДокумент = ОбработкаОбъект.СформироватьПечатнуюФорму(МассивСсылок, Новый СписокЗначений);
КонецПроцедуры
а в модуле объекта переименуй все "СсылкаНаОбъект" на "СсылкаНаОбъект2" чтоб не путать параметры, и добавь эту строку
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ВозвратТоваровПоставщику_Накладная";
Для Каждого СсылкаНаОбъект2 из МассивОбъектов Цикл
Запрос = Новый Запрос(
ну и в конце закрой цикл
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ДанныеПечати.Ссылка);
КонецЦикла;
КонецЦикла;
Возврат ТабличныйДокумент;
зы: подчеркнул только те строки что надо добавить
Внимание! Тема сдана в архив
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот