Программное управление задачами

Здравствуйте. У меня CRM X15 версии 3.2.0.11 стандартной конфигурации. Стоят следующии задачи:
1) при создании новой задачи автоматически запускать таймер (аналогично "действия->запустить таймер", только делать это программно).
2) при закрытии задачи сделать обязательным поле "подробный результат". То есть чтобы пользователь не мог закрыть задачу, не заполнив это поле.
Как мне это сделать? Заранее большое спасибо за помощь!

Нравится

4 комментария

1)var Timer = System.CreateObject('TSWindowLibrary.Timer');
зачем его создавать , я понять немогу
2) в окне редактирования задач , на событии OnDatasetDataChange

function dlDataOnDatasetDataChange(DataField) {
if (!Assigned(DataField)) {
return;
}
var DataFieldName = DataField.Name;
if (DataFieldName == 'StatusID'){
if (DataField.Value == 'айдишник состояния выполнено' ){
dlData.Dataset.DataFields('ResultID').IsRequired = true;
} else {
dlData.Dataset.DataFields('ResultID').IsRequired = false;
}

}
}

Вместо последнего if я бы написал

dlData.Dataset.DataFields('ResultID').IsRequired = (DataField.Value == 'айдишник состояния выполнено');

Спасибо, со 2-м пунктом разобрался, а вот с первым нет. Имелось ввиду что менеджеры, когда создают задачу (чаще всего они создают ее себе сами) часто забывают запутить таймер ее выполнения со всеми вытекающими отсюда последствиями.
Руководитель отдела попросил меня, чтобы это делалось автоматически, т.к. в 90% случаев факт того, что менеджер завел задачу ознает что он уже начал ее выполнять, то есть логично было бы запускать его автоматически, а не совершать дополнительное ручное действие.

Заранее спасибо за помощь!

можно попробовать изменить под себя функцию StartTimer()
которая находится в scr_TasksWorkspace
но она может неработать для вновь созданых задачь

Показать все комментарии