Карточка создания новой задачи (НТФ)
При переходе на новый НТФ для работы с карточкой создания новой задачи с использованием JS-вставки обязательно должно быть использовано событие NewTaskLoadFinished:
"(window).addEventListener('NewTaskLoadFinished', onDestroy)
{
...
}"
Без использования события 'NewTaskLoadFinished', при переходе в новый НТФ, JS-вставки корректно работать не будут! |
---|
Пример JS-вставки скрывающей ДП в зависимости от значения другого ДП window.addEventListener('NewTaskLoadFinished', function() { console.log('123'); var ep29581 = new ExtParam(29581); ep29581.val('Исходящее письмо'); ep29581.hide();
var ep29221 = new ExtParam(29221); ep29221.change(function() { console.log('change'); ep29581.show(); });
window.addEventListener('NewTaskDestroyed', e => { console.log('clean up destroy'); ep29221.change(null); }, { once: true }); }); |
Карточка задачи (МТФ)
При переходе на новый МТФ для работы с карточкой задачи с использованием JS-вставки обязательно должно быть использовано событие MTFMainDestroyed, которое позволяет очищать память при изменении контекста задачи (закрытие задачи, переключение на другую задачу, смена taskId и т.д.):
"(window).addEventListener('MTFMainDestroyed', onDestroy)
{
...
}"
Без использования события 'MTFMainDestroyed', при переходе в новый МТФ, JS-вставки корректно работать не будут! |
---|
Пример JS-вставки скрывающей ДП в зависимости от значения другого ДП ... var ep30601, ep72670; function check() { const ep30601Val = ep30601?.val(); console.log(ep30601Val) if (ep30601Val?.value == "test") { ep72670.show() } else { ep72670.hide() } }; // Срабатывает на открытии и обновлении МТФ function onLoad() { console.log('js') ep30601 = new ExtParam(30601); ep72670 = new ExtParam(72670);
check();
ep30601.change(() => check());
} // function onDestroy() { window.removeEventListener('MTFMainLoadFinished', onLoad); // Чтобы change не вызывался после нового открытия, // т.к. глобально в памяти ep30601 еще есть ep30601?.destroy(); ep72670?.destroy(); }
window.addEventListener('MTFMainLoadFinished', onLoad); window.addEventListener('MTFMainDestroyed', onDestroy);
} |