5. Интеграция¶
-
GetADOConnectionString
(ID: Variant): String¶ Метод возвражает строку соединения с внешней БД по идентификатору. Строки соединения хранятся в сущности INT_ADOConnectionString.
Parameters: ID (Variant) – Идентификатор строки соединения Return type: String
-
RunImport
(SchemeName: String; SessionType: TbtkSessionType): String¶ Метод запускает на выполнение настроенную ранее через приложение Integrator схему импорта данных.
Parameters: - SchemeName (String) – Системное имя схемы исмпорта данных
- SessionType (TbtkSessionType) –
Параметр определяет какую сессию использовать для импорта. Параметр является не обязательным, по умолчанию, если параметр не задан используется новая сессия. Возможны параметры:
- stNewSession
- новая сессия
- stCurrentSession
- текущая
Return type: String
<SQL> <ChangeConnectionStr> begin -- изменяем строку соединения с именем ExcelConnect -- если будут грузить несколько пользователей одновременно возможна блокировка -- в этом случае нужно к имени коннектора прибавлять имя пользователя -- и сделать по схеме импорта под каждого пользователя (можно размножать их и динамически путем копирования) INT_ADOCONNECTIONSTRINGAPI.Register('ExcelConnect', 'Provider=Microsoft.Jet.OLEDB.4.0 |image0| ata Source=' || :svNewPath || ';Extended Properties=Excel 8.0;Persist Security Info=False',''); end; </ChangeConnectionStr> </SQL>
<PASCAL> // путь или имя файла по умолчанию path := ''; // выбираем файл s := AskFileNameForOpen(path); // если выбрали if not VarIsNull(s) then begin // изменяем строку соединения ExecSqlEx('ChangeConnectionStr', 'svNewPath', [ftString], [s]); // запускаем схему импорта 'TestImport' RunImport('TestImport'); end; </PASCAL>
-
RunExport
(SchemeName: String): String¶ Метод запускает на выполнение настроенную ранее через приложение Integrator схему экспорта данных.
Parameters: SchemeName (String) – Системное имя схемы экспорта Return type: String
-
SendMail
(Address, Subject, Message, AttachFileNames, AttachFileCaptions: String)¶ Метод формирует электронное письмо используя стандарт MAPI, и передаёт его в почтовый клиент, установленный по умолчанию для отправки. Почтовый клиент должен поддерживать стандарт MAPI.
Parameters: - Address (String) – Адрес элетронной почты получателя. Можно указать несколько адресов через точку с запятой.
- Subject (String) – Тема письма
- Message (String) – Тест письма
- AttachFileNames (String) – Имя прикрепляемого файла с путём к нему или массив имен файлов. Имя файла должно включать полный путь к нему.
- AttachFileCaptions (String) – Имя файла, отображаемое в почтовом клиенте или массив заголовков. Обычно, это - имя файла без пути.
<PASCAL> FileName := GetTempFileName('','.gsc'); MyFileContent := '[EXECPARAMS]' + #10 + 'Application=SEL_TESTAPPLICATION' + #10 + 'OPERATION=ShowMDIForm' + #10 + 'PARAMS=''FileName=C:\ffff\anyfilename.ext'';''SelectionName=SEL\_ANY\_Selection'';''RepName=AnyRep''' + #10 + 'NOSPLASH=1'; SaveToFile(FileName, MyFileContent); SendMail('mailbox@mail.ru', 'Тема письма', 'Сообщение', FileName, ExtractFileName(FileName)); //Отправка письма без вложений SendMail('mailbox@mail.ru', 'Тема письма', 'Сообщение', '', ''); // Для прикрепления нескольких файлов надо воспользоваться следующим синтаксисом: SendMail('mailbox@mail.ru', 'Тема письма', 'Сообщение', [FileName1,FileName2], [ExtractFileName(FileName1),ExtractFileName(FileName1)]); // Отправка писма нескольким адресатам SendMail('mailbox@mail.ru; mailbox2@mail.ru; mailbox3@mail.ru', 'Тема письма', 'Сообщение', FileName, ExtractFileName(FileName)); </PASCAL>
Note
Корректным значением аргумента
AttachFileNames
является непустая строка или непустой массив строк. Любые иные значения, такие как: пустая строка,Null
,nil
, пустой массив - игнорируются и метод считает, что прикрепляемые файлы отсутствуют.Changed in version 5.6.16: Появилась возможность задания нескольких адресатов.
Changed in version 5.12.0_ms12: Появилась возможность вызывать метод без прикрепленных файлов явно.
-
Classificator
: TbtkClassificator¶ Объект, реализующий доступ к системе “Классификаторы” компании ITSI
Return type: TbtkClassificator
5.1. TbtkSessionType¶
-
class
TbtkSessionType
¶ Перечисление задает типы доступных сессий, обычно можно получить текущую сессию выборки, сессию приложения, и новую сессию(взять из пула сводобных сессий или создвать новую).
-
stMainSession
¶ Главная сессия приложения, сессия созданная при входе в приложение.
-
stCurrentSession
¶ Текущая сессия выборки.
-
stNewSession
¶ Новая сессия
-
5.2. TbtkClassificator¶
-
class
TbtkClassificator
¶ Класс предоставляющий методы для работы с базой данных системы “Классификаторы” компании ITSI
Для работы необходимы библиотеки itsi_m.dll, itsi_tool.dll и ключ HASP
-
Connected
: Boolean¶ Указывает, что соединение с базой данных “Классификаторы” установлено.
Return type: Boolean
-
GetMaterial
(code, msg, name, mix, grade: String): Boolean¶ Функция поиска материала по коду
Parameters: - code (String) – указатель на строку, содержащую полный код материала
- msg (String) – указатель на строку, в которую будет записано описание ошибки
- name (String) – указатель на строку, в которую будет записано «Наименование» материала
- mix (String) – указатель на строку, в которую будет записан «Сортамент» материала
- grade (String) – указатель на строку, в которую будет записана «Марка» материала
Return type: Boolean
<PASCAL> msg := ''; if not Classificator.Connected then if not Classificator.Connect('QUALIFS', msg) then begin ShowMessage(Msg); Exit; end; code := '00234903627'; msg := ''; name := ''; mix := ''; grade := ''; if Classificator.GetMaterial(code, Msg, Name, mix, grade) then ShowMessage(code + ' - ' + Msg + ' - ' + Name + ' - ' + mix + ' - ' + grade) else ShowMessage(Msg); Classificator.Disconnect; </PASCAL>
-
Disconnect
()¶ Процедура отключения от базы данных системы «Классификаторы».
<PASCAL> msg := ''; if not Classificator.Connected then if not Classificator.Connect('QUALIFS', msg) then begin ShowMessage(Msg); Exit; end; code := '00234903627'; msg := ''; name := ''; mix := ''; grade := ''; if Classificator.GetMaterial(code, Msg, Name, mix, grade) then ShowMessage(code + ' - ' + Msg + ' - ' + Name + ' - ' + mix + ' - ' + grade) else ShowMessage(Msg); Classificator.Disconnect; </PASCAL>
-
Connect
(dsn, msg: String): Boolean¶ Функция подключения к базе данных системы «Классификаторы»
Parameters: - dsn (String) – строка, содержащая имя источника данных, который используется для подключения системы «Классификаторы» к базе данных
- msg (String) – строка, в которую будет записано описание ошибки, в случает её возникновения
Return type: Boolean
<PASCAL> msg := ''; if not Classificator.Connected then if not Classificator.Connect('QUALIFS', msg) then begin ShowMessage(Msg); Exit; end; code := '00234903627'; msg := ''; name := ''; mix := ''; grade := ''; if Classificator.GetMaterial(code, Msg, Name, mix, grade) then ShowMessage(code + ' - ' + Msg + ' - ' + Name + ' - ' + mix + ' - ' + grade) else ShowMessage(Msg); Classificator.Disconnect; </PASCAL>
-
-
Outlook
: TbtkOutlookApplication¶ Объект реализующий впомогательные методы работы с MS Outlook.
Return type: TbtkOutlookApplication
5.3. TbtkOutlookApplication¶
-
class
TbtkOutlookApplication
¶ TbtkOutlookApplication
-
Application
: Variant¶ Свойство содержит ссылку на COM-сервер MS Outlook, к которому осуществлено подключение.
Return type: Variant <pascal> if Outlook.ActiveExplorerExists then begin ActiveExplorer := Outlook.Application.ActiveExplorer; if ActiveExplorer.Selection.Count > 0 then begin if ActiveExplorer.Selection.Item(1).Class = 43 then ShowMessage('Выделенный элемент является письмом') else ShowMessage('Выделенный элемент не является письмом'); end; end; </pascal>
-
Connected
: Boolean¶ Свойство указывает осуществлено ли подключение к COM-серверу MS Outlook
Return type: Boolean
-
ActiveExplorerExists
: Variant¶ Свойство указывает на существование активной рабочей обрасти у приложения MS Outlook, к которому осуществлено подключение. Это свойство создано из-за невозможности проверки существования объекта
Outlook.Application.ActiveExplorer
методами скриптера.Return type: Variant
-
Visible
: Boolean¶ Свойство указывает видимо ли в данный момент приложение MS Outlook
Return type: Boolean
-
Disconnect
()¶ Метод подключает объект Outlook от COM-сервера приложения MS Outlook.
-
Connect
()¶ Метод подключает объект Outlook к COM-серверу приложения MS Outlook.
-
UnRegisterNewMailEvent
(Selection: TbtkScriptSelectionObject; OpName: String)¶ Метод разрегистрирует операцию, зарегистрированную ранее в качестве обработчика события
OnNewMail
Parameters: - Selection (TbtkScriptSelectionObject) – Выборка с операцией обработчиком.
- OpName (String) – Имя операции обработчика.
-
RegisterNewMailEvent
(Selection: TbtkScriptSelectionObject; OpName: String)¶ Метод регистрирует операцию, которая будет вызываться при возникновении события
OnNewMail
в MS Outlook.Parameters: - Selection (TbtkScriptSelectionObject) – Выборка с операцией обработчиком.
- OpName (String) – Имя операции обработчика.
<pascal> Outlook.RegisterNewMailEvent(Selection, 'OnAfterNewMail'); </pascal>
-
Show
()¶ Делает приложение MS Outlook видимым.
-