Проблема с сохранением полей в открытой заявке при вызове удалённого действия
Коллеги, добрый день Нашел, что в 2021 году у кого-то была похожая проблема, правда сообщения из чата не сильно помогли решить её мне) Вызываю удаленное действие в ДО
В удаленном действии у меня открывается форма с полем для комментария и кнопкой "Отправить"
Проблема в том, что у меня не сохраняются поля в открытой заявке. Пробовал делать отдельный open_doc по id заявки - ничего не случается. Решили, что проблема с окружением (карточка уже открыта, мы открываем её еще раз и она сама себя перезаписывает). Сейчас через curObject пытаюсь сделать, но тоже результат нулевой
Вроде и понятно, в чем проблема, но как решить - не получается)
Как я понимаю - основная проблема в том, что здесь для УД - окружение это действие ДО, потому что alert(OBJECT_ID) возвращает мне код действия ДО, но при этом почему тогда не работает сохранение полей?
Буду очень благодарен за подсказку
Код:
var iRequestID = OptInt(curObjectID, 0);
var oOpenRequest = tools.open_doc(iRequestID);
var teRequest = oOpenRequest.TopElem;
var iInitiatorID = OptInt(curObject.person_id, 0);
switch (command) {
case "eval":
oResult = getFormComment();
break;
case "submit_form":
var arFlds = [];
if (form_fields != undefined) {
arFlds = ParseJson(form_fields);
}
submitType = ArrayOptFind(arFlds, "This.name == '__submit_type__'")
if (submitType != undefined) {
// Если нажать "Отклонить"
if (submitType.value == 'cancel_form') {
_formFieldArray = ParseJson(SCOPE_WVARS.form_fields);
_oNewComment = ArrayOptFind(_formFieldArray, "This.name == 'comment'");
if (_oNewComment != undefined) {
if (String(_oNewComment.value) != "") {
_sNewComment = _oNewComment.value;
// curObject.status_id = 'ignore';
// curObject.workflow_state = 'onetime_bonus_rejected';
// curObject.close_date = Date()
teRequest.status_id = 'ignore';
oOpenRequest.Save();
tools.create_notification('onetime_bonus_reject', iInitiatorID, _sNewComment, iRequestID);
oResult = {
command: "alert",
msg: "Заявителю отправлено уведомление об отклонении заявки",
confirm_result: {
command: "reload_page"
}
};
}
else {
oResult = getFormNoComment();
}
}
}
}
break;
}
RESULT = oResult;
