Пример использования: вызов метода
из стандартной конфигурации 1С Предприятие 8¶
Автор: Виталий Шакуров
Компания: Janet systems
В приведенном примере мы установим и сконфигурируем iJaNet 1C Connector, затем создим клиентское java-приложение содежращее вызов метода ПолучитьВспомогательныйСчет() из модуля БухгалтерскийУчёт стандартной конфигурации 1C Предприятия версии 8.
- Пример использования: вызов метода
из стандартной конфигурации 1С Предприятие 8 - Требования к окружению
- Подготовка к работе
- Установка коннектора
- Конфигурирование и запуск сервера
- Создание клиентского приложения
- Запуск клиента и результаты работы
Требования к окружению¶
- Для работы примера на компьютере должно быть установлено 1С Предприятие 8 и стандартная конфигурация "Бухгалтерия предприятия".
- JDK версии 1.5 или выше можно загрузить по адресу. Рекомендуем использовать последнюю доступную версию JDK. Далее для ссылок на место установки JDK будем использовать следующее обозначение
$JAVA_HOME. - ant версии 1.6 или выше доступен по адресу. Рекомендуем использовать последнюю доступную версию ant. Далее для ссылок на место установки ant будем использовать следующее обозначение
$ANT_HOME. - Последнюю версию iJaNet SDK for java можно загрузить по адресу (ссылки вида janet-sdk-5.x.x.zip).
- Создать папку в которую будет помещены создаваемые janet-модули и описание бизнес-процесса. Далее ссылки на эту папку будем обозначать
$JANET_PROJECTS.
Подготовка к работе¶
Для доступа к объектам 1С через COM конфигурация 1С должна быть переведена в режим поддержки с воможностью внесения изменений. Для переключения в этот режим запустите 1C в режиме конфигуратора, затем выберите пункт меню Конфигурация/Поддержка/Настройка поддержки...
Настрока поддержки конфигурации 1С
В открывшемся окне нужно нажать на кнопку Включить возможность изменения.
Установка коннектора¶
Последнюю версию iJaNet 1C Connector можно загрузить по адресу (ссылки вида 1C-Connector-5.x.x.msi). Процесс установки iJaNet 1C Connector подробно рассмотрен в Руководстве по установке.
Коннектор предаставляет собой janet-модуль, созданый с помощью iJaNet SDK.NET. Модуль коннектора должен быть развёрнут на сервере приложений iJanet Server.NET, который включён в дистрибутив коннектора. Мастер установки коннектора произведёт инсталляцию сервера приложений с уже развёрнутым iJaNet 1C Connector.
Конфигурирование и запуск сервера¶
Для работы коннектора нужно указать путь к БД конфигурации 1C. Для этого перейдите в папку $SERVER_INST_DIR/modules/1cconnector
cd $SERVER_INST_DIR/modules/1cconnector
Замечание: Здесь и далее для ссылок на место установки iJaNet Server.NET мы будем обозначение $SERVER_INST_DIR
Откройте файл jws-module.xml в редакторе, перейдите к секции <local-services> и измените значение параметра conn-string в описании службы Com1C.
1 <service name="Com1C" publish="true">
2 <factory-class>iJaNet.Com1c.Com1CServiceFactory</factory-class>
3 <service-interface>iJaNet.Com1c.ICom1CService</service-interface>
4 <parameters>
5 <param name="persister" type="iJaNet.Com1c.ComPersisterConfig">
6 <persister-class>iJaNet.Com1c.ComPersister</persister-class>
7 </param>
8 <param name="ole-name" type="string">V81.ComConnector</param>
9 <param name="conn-stirng" type="string">File=D:/path/to/1C/base;Usr=admin; Pwd=admin;</param>
10 </parameters>
11 </service>
Откройте Панель управления/Службы и найдите в открышемся списке службу с названием iJaNet Server.NET Windows Service. Запустите эту службу.
Список служб Windows
Создание клиентского приложения¶
Для сборки и запуска клиентского приложения нам понадобятся библиотеки из iJaNet SDK for Java. Архив с SDK можно скачать по адресу (ссылки вида janet-sdk-5.x.x.zip). Скачаный архив распакуйте в папку $JANET_PROJECTS.
cd $JANET_PROJECTS unzip -o janet-sdk-5.x.x.zip
После чего можно приступать к созданию клиентского приложения. Для этого внутри $JANET_PROJECTS создайте папку client.
mkdir client
Скопируйте файлы Client.java и jws-module.xml в созданую папку. Последний содержит только секцию <remote-module-ref> cледующего вида
1 <remote-module-ref>
2 <transport>
3 <transport-name>http</transport-name>
4 <parameters>
5 <param name="transport.http.url" type="string">http://localhost:8881/1cconnector</param>
6 <param name="transport.http.timeout" type="int">5000</param>
7 <param name="transport.compress" type="boolean">true</param>
8 <param name="transport.compressionLevel" type="int">9</param>
9 </parameters>
10 </transport>
11 <service-proxy local-name="module.com1c" remote-name="Com1C">
12 <service-interface>iJaNet.Com1c.ICom1CService</service-interface>
13 </service-proxy>
14 </remote-module-ref>
Секция содержит ссылку на системный модуль Com1C с интерфейсом iJaNet.Com1c.ICom1CService. Данный интерфейс позволяет организовать доступ к объектам конфигурации 1С. Этот интерфейс входит в библиотеку 1cconnector-5.2.х.jar, которая поставляется в составе коннектора. Скопируйте файл с этой библиотекой в папку $JANET_PROJECTS/client.
cd $JANET_PROJECTS/client cp $SERVER_INST_DIR/modules/1cconnector/1cconnector-5.2.х.jar .
После этого можно выполнить сборку клиентского приложения.
$JAVA_HOME/bin/javac -cp .:../template/application/janet-core.jar:../template/application/jws-core.jar Client.java
Запуск клиента и результаты работы¶
Для запуска клиентского приложения перейдите в папку $JANET_PROJECTS/client
cd $JANET_PROJECTS/client
и выполните команду
$JAVA_HOME/bin/java -cp ./:../template/application/janet-core.jar:../template/application/jws-core.jar Client
по завершении работы клиента в консоли должны появиться следующие сообщения
[Thu Dec 24 13:24:11 MSK 2009] Client started [Thu Dec 24 13:24:34 MSK 2009] Вспомогательный счет [Thu Dec 24 13:24:35 MSK 2009] Client ended [Thu Dec 24 13:24:35 MSK 2009] Bye!