Ниже приведен пример использования операции SetScheduler для изменения параметров задачи. В запросе передается моникёр контейнера запланированных задач и шаблон, указывающий необходимость изменить свойства задач. Также передается задача с новым периодом выполнения.
{
"SetScheduler" :
{
"tScheduler" :
{
"id" : "S1!M!6445"
},
"tArg" :
{
"pattern" :
{
"obInst" : "true",
"tasks" : "Change",
"task" :
{
"properties" : "true"
}
},
"meta" :
{
"tasks" :
{
"its" :
{
"it" :
[
{
"k" : "6449",
"id" : "RUN_MODULE",
"type" : "Unknown",
"properties" :
{
"period" :
{
"type" : "Daily",
"startDateTime" : "2000-01-01T00:00:00",
"stopDateTime" : "2010-01-01T00:00:00"
},
"active" : "false"
}
}
]
}
}
}
}
}
}
{
"SetSchedulerResult" :
{
"id" :
{
"id" : "S1!M!6445"
}
}
}
public static SetSchedulerResult ChangeTaskProperty(SchedulerId moniker, SchedulerTask task)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операции
//Параметры выполнения операции
var tSet = new SetScheduler()
{
tScheduler = moniker,
tArg = new SetSchedulerArg()
{
//Шаблон, указывающий необходимость изменить задачи
pattern = new SchedulerMdPattern
{
tasks = ListOperation.Change,
task = new SchedulerTaskPattern()
{
properties = true
}
},
meta = new SchedulerMd()
{
tasks = new SchedulerTasks()
{
its = new SchedulerTask[]
{
new SchedulerTask()
{
id = task.id,
k = task.k,
//Обновляемые свойства задачи
properties = new SchedulerTaskProperties()
{
active = false,
period = new SchedulerTaskPeriod()
{
type = SchedulerTaskPeriodType.Daily,
startDateTime = DateTime.Parse("01.01.2000"),
stopDateTime = DateTime.Parse("01.01.2010")
}
}
}
}
}
}
}
};
//Запуск планировщика задач
var tResult = somClient.SetScheduler(tSet);
return tResult;
}
См. также: