Несколько разных команд во внешней обработке

1. user1870982 05.03.24 10:38 Сейчас в теме
Есть внешняя обработка для печати документов, в обработке есть макет.
Можно ли использовать этот же макет как ВПФ, чтобы печатать не только из обработки, но и по кнопке "печать" из документа? Пытался добавить еще одну команду в сведениях об обработке, разобраться не получилось.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user5300 1047 05.03.24 13:27 Сейчас в теме
Примерно так:
#Область СВЕДЕНИЯ_О_ВНЕШНЕЙ_ОБРАБОТКЕ

Функция СведенияОВнешнейОбработке() Экспорт
			    
    РегистрационныеДанные = РегистрационныеДанные();
    РегистрационныеДанные.Вид                 = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
    РегистрационныеДанные.Наименование        = "Синхронизация маркированных товаров УТ 10.3";     
    РегистрационныеДанные.Версия              = "1.0.2";
   // РегистрационныеДанные.БезопасныйРежим     = Ложь;
    РегистрационныеДанные.Информация          = "Синхронизация маркированных товаров УТ 10.3";
	
	// Добавим команду  (Вот первая команда)
    Команда = РегистрационныеДанные.Команды.Добавить();
    Команда.Идентификатор  = "СинхронизацияМаркированныхТоваровУТ10_3_Настройки";
    Команда.Представление  = "Открыть настройки";
    Команда.Использование  = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();   
    Команда.ПоказыватьОповещение  = Истина;
	
    // Добавим команду (Вот вторая команда и тд)
    Команда = РегистрационныеДанные.Команды.Добавить();
    Команда.Идентификатор  = "СинхронизацияМаркированныхТоваровУТ10_3";
    Команда.Представление  = "Синхронизация маркированных товаров УТ 10.3";
    Команда.Использование  = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
    //Команда.ПоказыватьОповещение  = Истина;
    
    // Добавим Разрешения
    Разрешение = РаботаВБезопасномРежиме.РазрешениеНаИспользованиеПривилегированногоРежима();
	РегистрационныеДанные.Разрешения.Добавить(Разрешение);

    Возврат РегистрационныеДанные;
	
КонецФункции	
	
Функция РегистрационныеДанные() 
	ПараметрыРегистрации = Новый Структура;
	
	ПараметрыРегистрации.Вставить("Вид", "");
	ПараметрыРегистрации.Вставить("Версия", "0.0");
	ПараметрыРегистрации.Вставить("Назначение", Новый Массив);
	ПараметрыРегистрации.Вставить("Наименование", Неопределено);
	ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
	ПараметрыРегистрации.Вставить("Информация", Неопределено);
	ПараметрыРегистрации.Вставить("ВерсияБСП", СтандартныеПодсистемыСервер.ВерсияБиблиотеки());
	ПараметрыРегистрации.Вставить("ОпределитьНастройкиФормы", Ложь);
	
	РеквизитыТабличнойЧасти = Метаданные.Справочники.ДополнительныеОтчетыИОбработки.ТабличныеЧасти.Команды.Реквизиты;
	
	ТаблицаКоманд = Новый ТаблицаЗначений;
	ТаблицаКоманд.Колонки.Добавить("Представление", РеквизитыТабличнойЧасти.Представление.Тип);
	ТаблицаКоманд.Колонки.Добавить("Идентификатор", РеквизитыТабличнойЧасти.Идентификатор.Тип);
	ТаблицаКоманд.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
	ТаблицаКоманд.Колонки.Добавить("ПоказыватьОповещение", РеквизитыТабличнойЧасти.ПоказыватьОповещение.Тип);
	ТаблицаКоманд.Колонки.Добавить("Модификатор", РеквизитыТабличнойЧасти.Модификатор.Тип);
	ТаблицаКоманд.Колонки.Добавить("Скрыть",      РеквизитыТабличнойЧасти.Скрыть.Тип);
	ТаблицаКоманд.Колонки.Добавить("ЗаменяемыеКоманды", РеквизитыТабличнойЧасти.ЗаменяемыеКоманды.Тип);
	
	ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
	ПараметрыРегистрации.Вставить("Разрешения", Новый Массив);
	
	Возврат ПараметрыРегистрации;
КонецФункции

Функция ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыКоманды) Экспорт
	
	Если ИдентификаторКоманды = "СинхронизацияМаркированныхТоваровУТ10_3_Настройки" Тогда
		ВыполнитьПервуюКоманду();
        ИначеЕсли ИдентификаторКоманды = "СинхронизацияМаркированныхТоваровУТ10_3" Тогда
		ВыполнитьВторую();
	КонецЕсли;
	
КонецФункции

#КонецОбласти
Показать
Оставьте свое сообщение

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