![]() |
|
ВызовСерверногоМетода во внешней обработке | ☑ | ||
---|---|---|---|---|
0
dchumak
04.08.15
✎
05:42
|
Добрый день.
Для УТ 11.1 создаю внешнюю обработку, чтобы запускалась по расписанию. Для этого в сведениях о внешней обработке вызываю серверный метод, там можно настроить расписание. Код модуля обработки: Функция СведенияОВнешнейОбработке() Экспорт РегистрационныеДанные = Новый Структура; РегистрационныеДанные.Вставить("Наименование", "Авто"); РегистрационныеДанные.Вставить("БезопасныйРежим", Ложь); РегистрационныеДанные.Вставить("Версия", "1.0.0.1"); РегистрационныеДанные.Вставить("Вид", "ДополнительнаяОбработка"); РегистрационныеДанные.Вставить("Информация", "Авто"); ТЗКоманд = Новый ТаблицаЗначений; ТЗКоманд.Колонки.Добавить("Идентификатор"); ТЗКоманд.Колонки.Добавить("Представление"); ТЗКоманд.Колонки.Добавить("Модификатор"); ТЗКоманд.Колонки.Добавить("ПоказыватьОповещение"); ТЗКоманд.Колонки.Добавить("Использование"); СтрокаКоманды = тзКоманд.Добавить(); СтрокаКоманды.Идентификатор = Новый УникальныйИдентификатор; СтрокаКоманды.Представление = "Авто"; СтрокаКоманды.ПоказыватьОповещение = Истина; СтрокаКоманды.Использование = "ВызовСерверногоМетода"; РегистрационныеДанные.Вставить("Команды", ТЗКоманд); Возврат РегистрационныеДанные; КонецФункции Далее в модуле обработки создаю функцию, которая будет выполняться по расписанию. Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт ТФ = Новый ТекстовыйДокумент; ТФ.ДобавитьСтроку(СокрЛП(ТекущаяДата())); ТФ.Записать("C:\Выгрузка\Авто.txt"); КонецПроцедуры вношу в нее например, такой код. При попытке выполнить в журнале регистрации ошибка Команда fb92f961-d081-40d9-9917-99502d802f49: Ошибка выполнения: {ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль(2370)}: Команда fb92f961-d081-40d9-9917-99502d802f49 не обнаружена! ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Что я делаю не так? |
|||
1
MaxS
04.08.15
✎
06:29
|
Если УТ 11.1.10 и выше, то Функция СведенияОВнешнейОбработке() уже давно не так заполняется.
|
|||
2
dchumak
04.08.15
✎
08:04
|
УТ 11.1.7.49.
Подключается обработка нормально, ошибок нет. Ошибки именно при выполнении команды. |
|||
3
MaxS
04.08.15
✎
08:46
|
(2) Это может не работать:
РегистрационныеДанные.Вставить("БезопасныйРежим", Ложь); Из-за чего возникает ошибка при выполнении "опасной" команды. пмсм |
|||
4
PaulBC
04.08.15
✎
08:52
|
Идентификатор – идентификатор команды; любая строка, уникальная в пределах данной обработки (отчета)
УникальныйИдентификатор - НЕ строка |
|||
5
MaxS
04.08.15
✎
09:08
|
Например, в УТ 11.1.7.67 используется БСП 2.2.3.41.
Значит нужно заморачиваться профилями безопасности, либо писать примерно так: Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.1.7.1"); ПараметрыРегистрации.БезопасныйРежим = Ложь; //... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |