Предположим, что у нас существует некоторое регламентное задание, параметры которого мы ходим изменить в 1с. Ниже пример того, как можно изменить имя пользователя регламентного задания:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
Процедура УстановитьПользователяРегламентногоЗадания() // Формируем структуру под параметры рег. задания СвойстваРегЗадания = Новый Структура(); //СвойстваРегЗадания.Вставить(«Ключ»); //СвойстваРегЗадания.Вставить(«Предопределенное»); //СвойстваРегЗадания.Вставить(«Использование»); //СвойстваРегЗадания.Вставить(«Наименование»); СвойстваРегЗадания.Вставить(«ИмяПользователя»); //СвойстваРегЗадания.Вставить(«ИнтервалПовтораПриАварийномЗавершении»); //СвойстваРегЗадания.Вставить(«КоличествоПовторовПриАварийномЗавершении»); // Это ваша функция получения регл. задания по некоторому принципу, // не будем описывать это здесь для упрощения листинга РеглЗадание = ПолучитьНеобходимоеРегламентноеЗадание(); // Это также пользовательская функция. Предположим, что она возвращает // код пользователя, которого нам необходимо установить // в качестве пользователя рег. задания КодНовогоПользователя = ПолучитьКодНовогоПользователя(); // В качестве примера изменим пользователя, получим нового НовыйПользовательРегЗадания = Справочники.Пользователи.НайтиПоКоду(КодНовогоПользователя); // Выбрасываем исключение если не нашли нужного пользователя Если НовыйПользовательРегЗадания = Справочники.Пользователи.ПустаяСсылка() Тогда ВызватьИсключение «Пользователь с кодом ««» + КодНовогоПользователя + «»» не найден!»; КонецЕсли; СвойстваРегЗадания.Вставить(«ИмяПользователя», НовыйПользовательРегЗадания.Наименование); // Данная процедура в конце тела записывает регламентное задание, что // вызывает его перезапуск. Имейте это ввиду при ее вызове из самого рег. задания, // т.к. можно попасть в рекурсию. РегламентныеЗаданияСервер.ИзменитьЗадание(РеглЗадание.УникальныйИдентификатор, СвойстваРегЗадания); КонецПроцедуры |
Меня зовут Лорян Карен. Я разработчик 1С и сделал этот сайт в первую очередь для себя, как место, в котором я могу копить собственную базу знаний. Я рад, если этот сайт оказался полезным и для вас 🙂