Платформа
1С:Предприятие
Подключение произвольной конфигурации 1С и работа с её OData-сущностями.
1С:Предприятие — другая конфигурация
Приложение 1С:Предприятие (другое) подключает произвольную конфигурацию через стандартный OData-интерфейс. Оно предназначено для отраслевых, собственных и доработанных баз, которым не подходит отдельное приложение Бухгалтерии, УТ, ЗУП, ERP, УНФ или Документооборота.
Назначение
Главная задача — безопасно изучить фактическую схему незнакомой базы и работать только с опубликованными объектами. Приложение не предполагает названия справочников, документов или регистров.
Подключение
- Опубликуйте базу на веб-сервере с флажком Публиковать стандартный интерфейс OData.
- Заполните Состав стандартного интерфейса OData необходимыми объектами.
- Создайте отдельного пользователя с ролью УдаленныйДоступOData и минимальными правами.
- Настройте HTTPS.
- В Promto введите адрес публикации, логин и пароль.
Суффикс /odata/standard.odata/ добавляется автоматически. До сохранения Promto читает $metadata и получает точный список EntitySet. Пароль остаётся на сервере. Управлять подключением может только владелец рабочего стола.
Интерфейс и данные
На главной находятся сценарии Что доступно в базе, Изучить базу, Выборка данных и подключение.
В настройках показаны адрес, пользователь, маска пароля, количество опубликованных объектов и поиск по именам. Кнопка обновления перечитывает $metadata; переключатель отдельно отзывает доступ агента.
Возможности агента
Инструмент — promto_onec_custom. Для незнакомой конфигурации обязателен порядок:
list_entities— получить список и группировку по префиксам.describe_entity— проверить ключи, свойства и навигационные связи.queryилиget_object— читать данные.
Доступные семейства включают Catalog_*, Document_*, InformationRegister_*, AccumulationRegister_*, AccountingRegister_*, CalculationRegister_*, BusinessProcess_*, Task_* и другие типы стандартного интерфейса.
После отдельного подтверждения доступны создание, обновление, удаление, проведение и произвольный запрос внутри подключённой публикации.
Сценарии
Определить состав конфигурации
Через promto_onec_custom вызови list_entities, сгруппируй имена по префиксам и по ним предположи назначение конфигурации. Не делай запросов к данным, пока не покажешь мне выбранные объекты.
Построить выборку
После моего выбора вызови describe_entity, предложи точные $select и $filter и только затем выполни query. Ничего не меняй.
Ограничения и подтверждения
- Никаких гарантированных имён сущностей нет: даже похожие конфигурации могут публиковать разные наборы.
- Агент обращается только к хосту и OData-пути подключённой базы.
queryвозвращает максимум 1000 объектов за один вызов.create_object,update_object,delete_object,post_document,unpost_documentи записывающийrequestтребуютconfirm=true.post_documentработает только сDocument_*и меняет движения базы.delete_object— физическое удаление, не пометка.
Если что-то не работает
- Пустой
list_entities. Заполните состав OData в конфигураторе и обновите метаданные. - Неизвестная сущность. Используйте имя из текущего
list_entities; сервис подскажет близкие совпадения. - 403. Проверьте роль и права на конкретный объект.
- Ответ не помещается. Ограничьте поля, фильтр и размер страницы.
- Нужен второй экземпляр другой базы. У каждой 1С-программы одно подключение на рабочий стол; используйте подходящее отдельное приложение или другой рабочий стол.