Управление учебным процессом ВУЗа (15.01.2025) | |
Работа с шаблонами почтовых сообщений | |
Работа с шаблонами почтовых сообщений ведется в форме Сервер приложений на вкладке Шаблоны почтовых сообщений. Каждый шаблон имеет Имя, Тему, Тело, Скрипт, а также свойство Использует свойства класса. В качестве значения свойства Использует свойства класса может быть установлена ссылка на один из бизнес-классов системы. В этом случае в теме и в теле сообщения можно будет обращаться к свойствам этого класса, заключая имена свойств в символы "%". Пример: Тестовое сообщение для %Name%, сформировано %CurrentUserName%Тело сообщения: 1 Тестовое сообщение от базы данных - %Name% и GUID - %GUID%. 2 3 Значение локальной переменной local_variable = %local_variable%. 4 5 Значение глобальной переменной global_variable = %global_variable%. 6 7 %AdditionalMessageInfo% В скрипте форматирования сообщения доступны следующие переменные:
Скрипт форматирования сообщения: 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 |