Управление учебным процессом ВУЗа  (26.04.2024)
Работа с шаблонами почтовых сообщений

Для настройки Личных кабинетов предназначен функционал подраздела Настройка личных кабинетов (раздел Управление личными кабинетами). Представление Шаблоны почтовых сообщений содержит перечень шаблонов писем, отправляемых иностранным абитуриентам. Для изменения шаблона необходимо:

  1. В представлении Шаблоны почтовых сообщений найти и выбрать запись шаблона, который будет изменяться.
  2. Для выделенной записи в колонке Тело щелкнуть левой клавишей мыши и нажать кнопку открыть Кнопка выбора.
    Шаблоны почтовых сообщений лицей
  3. В окне редактирования шаблона выполнить нужные изменения.
  4. Закрыть окно редактирования, подтвердив сохранение изменений. 
Кстати

Каждый шаблон имеет Имя, Тему, Тело, Скрипт, а также свойство Использует свойства класса.

В качестве значения свойства Использует свойства класса может быть установлена ссылка на один из бизнес-классов системы. В этом случае в теме и в теле сообщения можно будет обращаться к свойствам этого класса, заключая имена свойств в символы "%".

Пример:

Тема сообщения:
  Тестовое сообщение для %Name%, сформировано %CurrentUserName%
Тело сообщения:
1  Тестовое сообщение от базы данных - %Name% и GUID - %GUID%.
2
3  Значение локальной переменной local_variable = %local_variable%.
4
5  Значение глобальной переменной global_variable = %global_variable%.
6
7  %AdditionalMessageInfo%

В скрипте форматирования сообщения доступны следующие переменные:

  • ContextObject - контекстный объект, реализующий интерфейс IContext. Подробнее о возможностях данного интерфейса можно прочесть в Руководстве разработчика.
  • ID - ID объекта класса указанного в UsesPropertiesOfClass, свойства которого будут использоваться
  • Subject - текст темы сообщения
  • Body - текст тела письма
  • SourceClass - значение поля UsesPropertiesOfClass
  • Variables - (переменная типа "Scripting.Dictionary") список локальных переменных, в которую можно добавлять переменные и их значения

Помимо форматирования темы или тела сообщения, в скрипте можно и формировать их, изменяя соответственно переменные Subject и Body.

Скрипт форматирования сообщения:

01  Dim LDataSet, LTemp
02
03  ContextObject.DebugString "Hello from script!"
04
05  'добавление глобальной переменной, значение которой можно использовать не только в тексте письма
06  ContextObject.Variable("global_variable", False) = Now
07
08  'добавление локальной переменной, значение которой можно использовать в тексте письма
09  Variables.Add "CurrentUserName", ContextObject.GetName(ContextObject.ExecuteMethod("TUser", "GetCurrentUser", Null))
10
11  if Variables.Item("CurrentUserName") = "SYSDBA" then
12    Variables.Add "local_variable", "current user is SYSDBA"
13  else
14    Variables.Add "local_variable", "current user is simple user"
15  end if
16
17  ContextObject.DebugString "Test CreateDataSet"
18
19  set LDataSet = ContextObject.CreateDataSet("TDataBase")
20  LDataSet.AddQueryItem 0, "Name"
21  LDataSet.AddQueryItem 0, "Description"
22  LDataSet.AddQueryItem 0, "GUID"
23
24  LTemp = "TDataBase dataset:"  & vbNewLine
25
26  while not LDataSet.Eof
27    LTemp = LTemp & _
28      LDataSet.Field("Name") & ", " & _
29      LDataSet.Field("Description") & ", " & _
30      LDataSet.Field("GUID") & vbNewLine
31
32
33    LDataSet.Next
34  wend
35
36  Variables.Add "AdditionalMessageInfo", LTemp