Работа с 1С в C#. Способ 1. Работа с объектной моделью 1С

Решения на базе 1С для бухгалтерского, складского и других видов учёта являются если не самыми распространёнными, то, по крайней мере, одними из самых распространённых. Поэтому интеграция с 1С является для разработчика бизнес-приложений почти повседневной задачей.

Работа с 1С из сторонней программы осуществляется с помощью COM-сервера и предполагает два основных способа взаимодействия.

  • Работа с объектной моделью 1С;
  • Работа с API конфигурации (процедурами и функциями из модуля внешнего соединения).

Рассмотрим первый из них.

Чтобы начать работу с 1С необходимо подключиться к нужной информационной базе через COM-сервер. Для этого необходимо подключить соответствующую сборку.

Ниже показана работа с COM-сервером для технологической платформы версии 8.3 и файловой базы данных.

Подключение сборки осуществляется стандартным способом.

После этого становится доступным пространство имён для работы с 1С и можно подключаться к необходимой информационной базе.

Подключение выполняется путём с помощью метода Connect объекта Connector.

Данный метод выполнит подключение к информационной базе и возвратит объект, через который можно осуществить доступ к её объектной модели.

Чаще всего взаимодействие с 1С предполагает получение данных из информационной базы и добавление данных в неё.

Рассмотрим оба процесса на примере конфигурации для автоматизации учёта книг в библиотеке. Допустим необходимо получить список всех авторов, книги которых есть в библиотеке и реализовать возможность добавления нового автора.

Список авторов можно получить из объектной модели.

После этого остаётся последовательно обойти полученный список, добавляя данные из его элементов, например, в dataGridView.

Добавление осуществляется несколько сложнее из-за особенностей объектной модели 1С.

Вначале нужно создать новый элемент справочника. Затем установить его реквизиты (в данном примере это один стандартный реквизит «Наименование») и записать в информационную базу.

Ниже представлен скриншот работающей программы.

Способ, который рассмотрен в этой статье, позволяет работать не только со справочниками, но также с другим объектами 1С, к которым возможен доступ через COM соединение и является, по сути, «классическим».

Он подходит для любых конфигураций независимо от того, имеется ли у них внешний интерфейс в модуле внешнего соединения (об этом в отдельной статье) или нет.

К недостаткам такого подхода к работе с 1С можно отнести более высокую сложность и трудоёмкость вследствие необходимости работать с объектами конфигурации напрямую.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *