Как прогнать внешнюю обработку через Обновлятор

Если требуется выполнить внешнюю обработку в базах через Обновлятор 1С, ее код должен выполняться в модуле обработки.

Форма может выглядеть так:


&НаСервере
Процедура ВыполнитьНаСервере()
	ОО = РеквизитФормыВЗначение("Объект");
	ОО.ВыполнитьНаСервере();
КонецПроцедуры

&НаКлиенте
Процедура ВыполнитьИзменения(Команда)
	ВыполнитьНаСервере();
КонецПроцедуры

А модуль обработки так:

Функция ВыполнитьНаСервере() Экспорт
	... //Тут полезный код	
	Возврат Истина; //или результат работы
КонецФункции

Процедура Главная выглядит так:

Процедура Главная()

	//==========================================================================================
	//  З А П У С К   О Б Р А Б О Т К И   В   Б А З А Х
	//==========================================================================================

	//=========== ИСХОДНЫЕ ДАННЫЕ ==========
	ИмяФайлаОбработки = "C:\Users\User\Desktop\ОтражатьЛокументыВНУИстина.epf";
	//============================
	

	Ф = v8.NewObject("Файл", ИмяФайлаОбработки);
	
	ЗОД = v8.NewObject("ОписаниеЗащитыОтОпасныхДействий");
	ЗОД.ПредупреждатьОбОпасныхДействиях = ложь;
	
	ВО = v8.ВнешниеОбработки.Создать(ИмяФайлаОбработки, ложь, ЗОД);
	
	Результат = ВО.ВыполнитьНаСервере()
	
КонецПроцедуры

Выполняется так:

image_pdfimage_print

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Вам может также понравиться...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *