OneScript.Web icon indicating copy to clipboard operation
OneScript.Web copied to clipboard

Нет возможности узнать идентификатор регл. задания.

Open dvakor opened this issue 6 years ago • 2 comments

В данный момент нет возможности узнать какое рег.задание скрывается за идентификатором.

Например я добавил 2 задания. После этого я не смогу понять какое рег. задание под каким айди существует

метод СоздатьПериодическоеЗаданиеПоРасписанию, принимает на входе только модуль, метод и крон, ИД он не возвращает.

ПолучитьИдентификаторыПериодическихЗаданий возвращает только массив идентификаторов.

Метода получить инфу по рег. заданию по ИД не реализован.

dvakor avatar Oct 04 '19 16:10 dvakor

Предлагаю хотя бы дополнить метод СоздатьПериодическоеЗаданиеПоРасписанию дополнительным, необязательным параметром id, так же сменить void на string, т.е. возвращать ид рег задания.

https://github.com/EvilBeaver/OneScript.Web/blob/master/src/OneScript/BackgroundJobs/ScheduledJobsManagerContext.cs#L36-L44

Получиться что-то типа такого

[ContextMethod("СоздатьПериодическоеЗаданиеПоРасписанию")]
        public string CreateRecurringSheduledTask(string module, string method, CronWrapper cron, string id = null)
        {

            if (string.IsNullOrEmpty(id))
                id = Guid.NewGuid().ToString();

            RecurringJob.AddOrUpdate(id,
                ()=>PerformAction(module, method),
                cron.CronString);

            return id;

        }

dvakor avatar Oct 04 '19 16:10 dvakor

Предлагаю вообще зарефакторить регламентные задания в пользу АПИ, предоставляемого 1С

EvilBeaver avatar Oct 08 '19 06:10 EvilBeaver