Здравствуйте, подскажите как можно из бизнес - процесса при создании задачи создать и напоминание о этой задаче.
Нравится
Но в случае, если использовать этот метод, напоминания создаются только при условии, когда задание выполнено! Если переместить функцию в блок try, то напоминание создается, если задачу потом открыть еще раз.. почему такое может быть не понятно, но при дебаге видно, что датасет при вызове это функции еще пустой.
Николай, есть два варианта решения. Первый - если Вы перемещаете создание напоминания в блок try, необходимо перед его созданием проверять, существует ли в БД напоминание по этой задаче для текущего пользователя (неплохо было бы также применять фильтр по тексту напоминания, так как по одной и той же задаче может быть несколько разных напоминаний), и создавать его только в случае, если подобного напоминания нет.
Второй вариант (опять же, с предварительной проверкой) - создавать напоминание в обработчике btnOKOnClick карточки редактирования задачи (скрипт scr_TaskEdit). Создавать его необходимо после выполнения базового обработчика (блок, содержащий if (!scr_BaseDBEdit.btnOKOnClick(Control)) {...}), но перед блоком
if ((!TaskEdit.StatusChanged) || (!IsFinished) || (IsEmptyGUID(WorkflowItemID))) { return; }
,
так как после этого блока карточка задачи закрывается, если состояние не конечное.