Для использования возможностей протокола SOAP в среде Microsoft Office необходимо установить комплект программного обеспечения
- SOAP Toolkit 3.0 (http://cbr.ru/scripts/soapsdk.zip)
Установка SOAP Toolkit 3.0
Для начала процесса инсталляции пакета SOAP Toolkit 3.0 необходимо разархивировать содержимое из скачанного архива soapsdk.zip и запустить исполняемый файл soapsdk.exe.
Далее нажать кнопку «Да» и согласиться с запуском процесса инсталляции.
Рисунок 1. Диалог запуска процесса инсталляции
Рисунок 2. Диалог приветствия инсталлятора
Далее появится диалог приветствия (Рисунок 2), на котором необходимо нажать кнопку “Next”.
Рисунок 3. Пользовательское соглашение
Диалог пользовательского соглашения (Рисунок 3). На данном диалоге необходимо прочитать и текст лицензионного соглашения и согласиться, поставив галку в строке «I accept the terms in the License Agreement» и нажать на кнопку “Next”.
Рисунок 4. Диалог информации о пользователе
Далее появится диалог ввода информации о пользователе (Рисунок 4), в нем необходимо ввести данные об имени пользователя и названии организации, и нажать на кнопку “Next”.
Рисунок 5. Конфигуратор установки
После чего появится диалог конфигуратора установки (Рисунок 5) пакета SOAP Toolkit 3.0 в котором можно изменить путь установки и отключить ненужные для установки компоненты. Оставить все по умолчанию и нажать на кнопку “Install”.
Рисунок 6. Экран завершения установки SOAP Toolkit 3.0
Окно завершения (Рисунок 6) инсталляции пакета – сообщает что установка закончена и необходимо нажать на кнопку “Finish”.
Создание макроса Microsoft Office
Для получения данных с сервера ЦСДН по протоколу SOAP необходимо создать соответствующие макросы на языке Microsoft Visual Basic.
Для этого необходимо открыть новый документ Microsoft Office и вызвать окно «Макрос» (Рисунок 8), нажав Alt+F8 или кнопку «макросы» в ленте приложения Microsoft Office в разделе «Вид» (Рисунок 7)
Рисунок 7. Вызов окна Макрос из ленты приложения MS Office
В окне «Макрос» необходимо ввести имя макроса в поле «Имя макроса» (Например, «ConnectToDB») и нажать кнопку «Создать».
Рисунок 8. Окно макрос
После чего откроется редактор кода Microsoft Visual Basic Script (Рисунок 9) c созданным пустым макросом.
Рисунок 9. Окно редактора Microsoft Visual Basic Script
Вставьте в макрос следующий код:
Sub ConnectToDB() Set SOAPClient = CreateObject("MSSOAP.SOAPClient30") ' здесь надо ввести адрес Вашего сервера ЦСДН (доменное имя или IP) ' подключение к ЦСДН ' сообщение если возникла ошибка Exit Sub End Sub |
Рисунок 10. Пример кода для подключения к ЦСДН
Рисунок 11. Пример ввода кода макроса
На рисунке 11 показан пример ввода кода макроса. Красным отмечен IP адрес или доменное имя сервер ЦСДН с которого должны загружаться данные. Зеленым – порт SOAP ЦСДН. Необходимо заменить адрес на реальный адрес и порт доступного ЦСДН.
После ввода макроса необходимо его выполнить для проверки соединения с ЦСДН. Это можно сделать прямо в среде Microsoft Visual Basic нажав кнопку F5. В случае успешного выполнения скрипта будет выведено диалоговое окно
Далее, после успешного соединения может быть произведен вызов процедур для получения данных из ЦСДН. Соответствующий список процедур указан в документе «Спецификация доступа к данным» (предоставляется по запросу).
Например, для вызова процедуры getVersion (вернуть версию сервера ЦСДН) необходимо написать следующий код макроса:
Sub ConnectToDB() Set SOAPClient = CreateObject("MSSOAP.SOAPClient30") ' здесь надо ввести адрес Вашего сервера ЦСДН (доменное имя или IP) ' подключение к ЦСДН ' сообщение если возникла ошибка ' Вывод сообщения версии сервера в ячейку A1 активного листа c использованием Range End If Exit Sub End Sub |
Рисунок 13. Полный код примера получения версии ЦСДН
Для вызова, написанного кода макроса необходимо воспользоваться окном Макрос (Рисунок 8), выделив наш макрос мышью в списке макросов и нажав кнопку «Выполнить», после чего в текущий активный лист, в ячейки A1 и A2 запишется версия ЦСДН (Рисунок 14)
Рисунок 14. Результат выполнения макроса ConnectToDB
Примеры использования протокола SOAP для получения данных с ЦСДН и вывода данных в таблицу листа Excel приведены в файле Пример.xls
Рисунок 15. Пример вывода данных на лист документа Excel с помощью кнопок, связанных с макросами