Skip to main content
Version: 51.0.0

2.7.4. Шаблони електронних листів

Шаблони електронних листів — це функціональність для налаштування автоматизованих повідомлень у системі без необхідності програмування. Ця функціональність прийшла на заміну застарілому механізму Шаблони звітів та пропонує більш гнучкі можливості для налаштування комунікацій.

2.7.4.1. Створити шаблон електронних листів

  1. У панелі навігації, виберіть робочий стіл Студія 1.

  2. Виберіть групу ярликів Форми та шаблони 2, а потім виберіть ярлик Шаблони електронних листів 3.

  3. У панелі інструментів, виберіть "+" 4.

    Screenshot
  4. Заповніть поля 1, використовуючи підказки в таблиці нижче, а потім у панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити 2.

    Screenshot
ПолеОпис
Код*Унікальний код шаблону електронного листа.
  • Код повинен бути унікальним.
  • Код повинен бути коротким (зазвичай до 10 символів).
  • Використовуйте тільки латинські букви та цифри.
Найменування*Зрозуміла назва шаблону, яка відображатиметься в інтерфейсі.
ОписКороткий опис призначення та особливостей використання шаблону.
Тип*Оберіть одне з двох значень:
  • Нотифікація процесу — використовується при відправці листа з завдання-сервіс у процесі.
  • Нотифікація завдання процесу — використовується при відправці листа з завдання користувача у процесі
Пов'язана сутністьОберіть одне з двох значень:
  • Без прив'язки до сутності — для загальних повідомлень
  • Документ Scriptum — дозволяє використовувати атрибути документа в полях "Тема листа" та "Тіло листа"
Тема листа*
  • Можна вписати статичний текст
  • Щоб додати контент з пов'язаного документа використовуйте кнопку "+ Атрибут"
Screenshot
ℹ️ Примітка: Для полів типу Дата та/або час або Число формат значення встановлюється безпосередньо у формі.
Тіло листа*
  • Можна вписати статичний текст
  • Щоб додати контент з пов'язаного документа використовуйте кнопку "+ Атрибут"
Screenshot
ℹ️ Примітка: Для полів типу Дата та/або час або Число формат значення встановлюється безпосередньо у формі.
Вкладення
це поле доступне якщо у полі "Пов'язана сутність" ви обрали "Документ Scriptum"
Виберіть кнопку + Вкладення, щоб додати файлові атрибути пов'язаного документа. Після додавання вкладення, виберіть піктограму для визначення параметрів завантаження вкладень.
Примітка:

поля позначені символом "*" є обов'язковими до заповнення.

2.7.4.2. Налаштувати переклади шаблону електронних листів

Система дозволяє створювати багатомовні версії шаблонів електронних листів. Це забезпечує автоматичне надсилання повідомлень мовою, що відповідає локалізації платформи користувача-отримувача.


Наприклад: Якщо користувач встановив німецьку мову в налаштуваннях профілю і для шаблону електронного листа створений німецький переклад, система автоматично надішле користувачу лист німецькою мовою. Проте, якщо переклад шаблону німецькою відсутній, система надішле версію листа мовою за замовчуванням, якою зазвичай є англійська.


  1. У панелі навігації, виберіть робочий стіл Студія 1.

  2. Виберіть групу ярликів Форми та шаблони 2, а потім виберіть ярлик Шаблони електронних листів 3.

  3. Виберіть потрібний шаблон 4.

    Screenshot
  4. В секції Шаблон електронного листа виберіть кнопку Переклади.

    Screenshot
  5. В полі Мови 1 виберіть ті мови, переклад для яких бажаєте створити, а потім виберіть кнопку Призначити 2.

    Screenshot
    Примітка:

    якщо залишити це поле без змін, то лист буде перекладено лише для мови, яка встановлена як мова за замовчуванням у вашій платформі.

    Після цього, для кожної вибраної вами мови, з'явиться окрема вкладка, в кожній з яких, ви можете написати текст листа іншою мовою.

    Screenshot

2.7.4.3. Додати серверний скрипт до шаблону електронного листа

  1. У панелі навігації, виберіть робочий стіл Студія 1.

  2. Виберіть групу ярликів Форми та шаблони 2, а потім виберіть ярлик Шаблони електронних листів 3.

  3. Виберіть потрібний шаблон.

    Screenshot
  4. У панелі інструментів, виберіть піктограму .

    Screenshot
  5. В текстове поле, вставте одну з наступних функцій:

    Screenshot

transformData — витягнути інформацію з сутності в шаблон

transformData({
data,
context,
lang
}) {
if (lang == 'en') {
data.values = JSON.stringify(context)
data.test = 'test'
data.allData = JSON.stringify(data)
}
// data.now = new Date()
// if (context.instance.ID) {
// const entityName = context.instance.$entity
// data.instance.caption = UB.Repository(entityName)
// .attrs(UB.App.domainInfo.get(entityName).getDescriptionAttribute())
// .where('ID', '=', context.instance.ID)
// .selectScalar()
// }
}

transformSubject — модифікувати тему листа.

Наприклад: у формі листа, в полі "Тема листа" ви можете задати змінну <currentYear>, тобто заповнювач для підставлення поточного року. А тоді за допомогою цього скрипта, ви можете підставити в змінну потрібне вам значення року.

/**
* Transform mail subject built by the subject template
*
* @param {object} params
* @param {string} params.subject Subject built by template
* @param {object} params.data Automatically loaded data by all used
expressions in subject/body templates
* @param {object} params.context Building email context
* @param {string} params.lang Language code in which email is building
* @returns {string}
*/
transformSubject({
subject,
data,
context,
lang
}) {
// return subject.replace('<currentYear>', new Date().getFullYear())
return subject.replace('<variable>', context.instance.attrValues.ms01)
}

transformBody — модифікувати тіло листа, наприклад, змінити його дизайн.

/**
* Transform mail body built by the subject template
*
* @param {object} params
* @param {string} params.body Body built by template
* @param {object} params.data Automatically loaded data by all used
expressions in subject/body templates
* @param {object} params.context Building email context
* @param {string} params.lang Language code in which email is building
* @returns {string}
*/
transformBody({
body,
data,
context,
lang
}) {
// return `<p style="background-color: green">${body}</p>`
return `<p><span style="background-color: #339966;">${body}</span></p>`
}

tranformAttachment — робота з вкладеннями, наприклад, додавати файлові атрибути, змінювати назви вкладень або ж задати в листі назву файлу.

/**
* Transform mail attachments built by the attachments config
*
* @param {object} params
* @param {Array<MailAttachment>} params.attachments
* @param {Array<MailAttachmentConfig>} params.attachmentsConfig
* @param {object} params.data Automatically loaded data by all used
expressions in subject/body templates
* @param {object} params.context Building email context
* @param {string} params.lang Language code in which email is building
* @returns {string}
*/
transformAttachments({
attachments,
attachmentsConfig,
data,
context,
lang
}) {
attachments.push(
...emailAttachmentLoader.loadAttribute({
documentID: context.instance.ID,
attribute: 'ms17',
signatures: 'container'
}),
{
attachName: 'myAttachment.docx',
data: 'content'
})
//attachments[0].attachName = 'Документ із скрипта.pdf'
/*
const ds = DataStore('dfx_Document')
ds.run('update', {
fieldList: [
'attrValues',
'mi_modifyDate',
'mi_modifyUser'
],
execParams: {
ID: context.instance.ID,
attrValues : JSON.stringify({
"ms02":JSON.stringify(attachments)
})
},
__skipRls: true,
__skipOptimisticLock: true
})
*/
})
  1. У панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити.

2.7.4.4. Увімкнути функцію шаблонів електронних листів

У старіших версіях платформи функіцонал шаблонів електронних листів вимкнена за замовчуванням. Замість неї для надсилання повідомлень використовується застарілий механізм "Шаблони звітів".


Однак ви можете активувати оновлену функціональність шаблонів, виконавши описані нижче налаштування:

  1. У панелі навігації, виберіть робочий стіл Адміністрування 1.

  2. Виберіть групу ярликів Налаштування 2, а потім виберіть ярлик Налаштування системи 3.

  3. Відкрийте запис "bpm.notification.useEmailTemplates" 4.

    Screenshot
  4. В полі Значення 1 введіть "true", а потім у панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити 2.

    Screenshot
Примітка:

це налаштування застосовуватиметься лише до поточної локалізації платформи. Щоб налаштувати таке саме значення для всіх локалізацій виберіть піктограму , а потім введіть "true" у поля всіх мов.

2.7.4.4.1. Відключення нотифікації за замовчуванням

Щоб відключити нотифікації за замовчуванням, необхідно встановити одну з наступних комбінацій системних налаштувань:


Комбінація 1. Вимкнувши стандартний шаблон для призначення завдань
  1. На панелі навігації, виберіть робочий стіл Адміністрування 1.

  2. Виберіть групу ярликів Налаштування 2, а потім виберіть ярлик Налаштування системи 3.

  3. Відкрийте запис "bpm.notification.useEmailTemplates" 4.

    Screenshot
  4. В полі Значення 1 введіть "true", а потім у панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити 2.

    Screenshot
    Примітка:

    це налаштування застосовуватиметься лише до поточної локалізації платформи. Щоб налаштувати таке саме значення для всіх локалізацій виберіть піктограму , а потім введіть "true" у поля всіх мов.

  5. Відкрийте запис "bpm.notification.assignee.assignment.defaultEmailTemplate" 5.

    Screenshot
  6. В полі Значення 1 очистіть значення, а потім у панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити 2.

    Screenshot
    Примітка:

    це налаштування застосовуватиметься лише до поточної локалізації платформи. Щоб налаштувати таке саме значення для інших мов, змініть мову платформи, а тоді повторіть всі ті самі кроки.

Комбінація 2. Вимкнувши стандартне призначення завдання
  1. На панелі навігації, виберіть робочий стіл Адміністрування 1.

  2. Виберіть групу ярликів Налаштування 2, а потім виберіть ярлик Налаштування системи 3.

  3. Відкрийте запис "bpm.notification.useEmailTemplates" 4.

    Screenshot
  4. В полі Значення 1 введіть "false", а потім у панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити 2.

    Screenshot
    Примітка:

    це налаштування застосовуватиметься лише до поточної локалізації платформи. Щоб налаштувати таке саме значення для всіх локалізацій виберіть піктограму , а потім введіть "false" у поля всіх мов.

  5. Відкрийте запис "bpm.notification.defaultAssignmentTask" 5.

    Screenshot
  6. В полі Значення 1 очистіть значення, а потім у панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити 2.

    Screenshot
    Примітка:

    це налаштування застосовуватиметься лише до поточної локалізації платформи. Щоб налаштувати таке саме значення для інших мов, змініть мову платформи, а тоді повторіть всі ті самі кроки.

2.7.4.5. Надіслати лист за допомогою шаблона звітів

Шаблони звітів є застарілим функціоналом. Ви можете використовувати "Шаблони електронних листів", які є сучасним відповідником того ж функціоналу. Проте, якщо ви все ж бажаєте скористатись функціоналом "Шаблони звітів", виконайте наступні дії:

  1. Відкрийте дефініцію бізнес-процесу, сповіщення з якого, ви бажаєте налаштувати.

    a. У панелі навігації, виберіть робочий стіл Студія 1.
    b. Виберіть ярлик Бібліотека процесів 2.
    c. Виберіть потрібну дефініцію 3.

    Screenshot
  2. Виберіть піктограму , щоб перейти в налаштування моделера.

    Screenshot
  3. Заберіть галочку Приховати можливість використання звітів в сповіщеннях 1, а потім виберіть кнопку Застосувати 2.

    Screenshot

    Після цього, ви зможете користуватись шаблонами як зазвичай, а саме:

  4. На формі процесу, оберіть завдання користувача 1, з якого бажаєте відправити сповіщення.

  5. В налаштуваннях завдання розгорніть секцію Сповіщення 2, а потім в полі Призначити з 3 виберіть Шаблон звіту.

    Screenshot

2.7.4.6. Встановити шаблон зі змінної процесу

Це може бути потрібно, якщо у вас в межах одного процесу є декілька завдань, які відправляють листи, і ви бажаєте використати для них різні шаблони. Підтримуються лише нові шаблони, шаблони звіту не підтримуються.

  1. Відкрийте потрібну дефініцію бізнес-процесу.

    a. У панелі навігації, виберіть робочий стіл Студія 1.
    b. Виберіть ярлик Бібліотека процесів 2.
    c. Виберіть потрібну дефініцію 3.

    Screenshot
  2. Виберіть завдання користувача, з якого бажаєте відправити сповіщення.

  3. В налаштуваннях завдання розгорніть секцію Сповіщення, а потім виберіть "+".

  4. В полі Призначити з виберіть Змінна процесу.

  5. В полі Змінна процесу введіть код потрібного шаблона електронних листів.

    Screenshot
  6. У панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити.