2.6.2.6. Через скриптовий модуль.

Спливаючу форму можна викликати по таким подіям:

  • натисканні кнопки на формі документа/завдання, користувацькому довіднику

async form_77_click(event) {    //77 – ID кнопки

const popupResult = await event.openPopupForm(‘f1’, {  //f1 – код спливаючої форми
title: 
‘Форма1’,   // Заголовок форми
height: 
‘400px’//висота форми, можна вказати undefined, тоді буде використовуватись налаштування з конструктора форм
width: 
‘400px’,  //ширина форми, можна вказати undefined, тоді буде використовуватись налаштування з конструктора форм
attrValues: {
attr1: event.document.getAttribute(
‘attr2’),  // attr1, який розміщено на формі отримає значення атрибута attr2 з документа.
}
})

if (popupResult) {      //при натисканні кнопки «Ок» на формі, значення атрибуту attr1 з форми буде встановлено, як значення атрибуту attr3 на документі
const enteredValues = popupResult.attrValues
event.document.setAttribute(
‘attr3’, enteredValues.attr1)
}
}

  • при виконанні дії в документі

async action_beforeExecute_d1(event) {  //викликаємо форму перед виконанням дії d1
event.skipStandardConfirmDialog()  
//відміняємо стандартне вікно підтвердження

const popupResult = await showPopupForm(‘approveActionPopup’, {  //approveActionPopup  – код форми із довідника “Спливаючі форми”
title: 
‘Результат согласования’,  // Заголовок форми
height: 
undefined,  //висота форми, не задана – буде встановлена з параметрів конструктора форм
width: 
undefined,   //ширина , не задана – буде встановлена з параметрів конструктора форм
attrValues: {
additionalInfo: event.document.getAttribute(
‘additionalInfo’)
}
})

if (!popupResult) {   //при нажатии кнопки “Відмінити” нічого не робимо
event.cancelAction()
return
}

const additionalInfo2 = popupResult.attrValues   //при натисканні «Oк» записуємо значення атрибута з форми в документ
event.document.setAttribute(
‘additionalInfo’, additionalInfo2.additionalInfo)
},

 

  • перед збереженням документа/завдання

async beforeSave(event) {  // викликаємо форму перед збереженням документу
//  event.skipStandardConfirmDialog()          // відміняємо стандартне вікно підтвердження

const popupResult5 = await showPopupForm(‘f5’, {
title: 
‘Проверка дубликатов’,
height: 
undefined,
width: 
undefined,
attrValues: {
sd01: event.document.getNativeAttribute(
‘subject’),
sd06: event.document.getAttribute(
‘sd06’),
}
})

if (!popupResult5) {
event.cancelSave()
return
}

const additionalInfo3 = popupResult5.attrValues
event.document.setNativeAttribute(
‘subject’, additionalInfo3.sd01)
event.document.setAttribute(
‘sd06’, additionalInfo3.sd06)
}

Отримайте персональну пропозицію

    Цей сайт захищено reCAPTCHA, а також застосовуються Політика конфіденційності та Умови надання послуг Google.
    +38 (044) 323 00 86