Справочники и Данные · 10 мин
Как получить данные из 1С: рабочие способы выгрузки и интеграции
Как получить данные из 1С: выгрузка в Excel, прямые запросы, COM-подключение, REST и OData, обмен через файлы. Пошаговые инструкции, проверка результата и типичные ошибки.
Получить данные из 1С можно несколькими принципиально разными способами: штатной выгрузкой из интерфейса, программным запросом внутри базы, внешним подключением через COM, OData или веб-сервисы, а также файловым обменом. Выбор зависит от того, кто запрашивает данные — пользователь отчёта, внешняя система или разработчик — и какие права доступа есть в конкретной базе.
Для разовой задачи обычно достаточно встроенных средств: универсального отчёта, кнопки «Ещё → Вывести список» или сохранения табличного документа в Excel. Для регулярного обмена понадобятся механизмы интеграции: OData, HTTP-сервисы, планы обмена или регламентные задания выгрузки. Прямое чтение файловой базы или SQL-таблиц в обход платформы — крайняя мера с серьёзными ограничениями.
Ниже разобраны основные способы с условиями применения, пошаговыми действиями и критериями проверки результата, чтобы вы могли выбрать подходящий вариант и не повредить данные.
Как выбрать способ получения данных
Первый вопрос — разовая это задача или постоянная. Разовая выгрузка решается встроенными инструментами за минуты и не требует участия программиста. Регулярный обмен требует настройки механизма интеграции, иначе ручные выгрузки быстро превращаются в источник ошибок и расхождений.
Второй вопрос — кто получает данные. Если это пользователь внутри компании, достаточно прав на просмотр объектов и стандартных отчётов. Если данные забирает внешняя система (сайт, CRM, BI-платформа), нужен программный интерфейс: OData, HTTP-сервис или COM-соединение, а также отдельная учётная запись с минимально необходимыми правами.
Как выбрать действие
Выгрузка данных штатными средствами интерфейса
Самый быстрый способ — вывести список в табличный документ. Откройте нужный список (справочник, журнал документов), установите отборы и отсортируйте строки. Затем выберите «Ещё → Вывести список», отметьте нужные колонки и подтвердите. Полученный табличный документ сохраняется через «Файл → Сохранить копию» в форматах Excel (xlsx), табличного документа (mxl), CSV и других.
Для более гибкой выборки используйте универсальный отчёт («Отчёты → Универсальный отчёт» в типовых конфигурациях). Он позволяет выбрать тип объекта, период, поля, группировки и отборы без программирования. Результат также сохраняется в Excel или выводится на печать.
Если в базе есть готовые отчёты на системе компоновки данных, проверьте их варианты и настройки: часто нужная выгрузка уже существует, достаточно изменить отбор по периоду или организации и сохранить результат.
- 1Откройте список объектов и установите нужные отборы
- 2Выберите «Ещё → Вывести список» и отметьте колонки
- 3Проверьте, что количество строк в табличном документе совпадает с ожиданием
- 4Сохраните через «Файл → Сохранить копию» в формате xlsx
- 5Откройте файл и сверьте несколько строк с данными в 1С
Программное получение данных внутри базы: запросы и консоль
Если у вас есть доступ к конфигуратору или внешней обработке «Консоль запросов», данные можно получить языком запросов 1С. Запрос позволяет соединять таблицы, накладывать условия, группировать и получать итоги — то, что невозможно сделать выводом списка.
Пример простого запроса к справочнику номенклатуры:
ВЫБРАТЬ
Номенклатура.Код КАК Код,
Номенклатура.Наименование КАК Наименование,
Номенклатура.Артикул КАК Артикул
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
НЕ Номенклатура.ПометкаУдаления
Результат запроса в консоли можно выгрузить в табличный документ или таблицу значений и далее сохранить в файл. Такой подход удобен аналитикам и внедренцам: запрос проверяется на копии базы, не меняет данные и легко дорабатывается под новые требования.
Получение данных внешними системами: OData, HTTP-сервисы, COM
Стандартный интерфейс OData позволяет читать данные базы по HTTP без доработки конфигурации. Администратор публикует базу на веб-сервере с включённым OData, после чего объекты доступны по URL вида /base/odata/standard.odata/Catalog_Номенклатура. Данные отдаются в формате JSON или Atom, что подходит для Power BI, Excel и скриптов.
HTTP-сервисы — вариант, когда нужен контролируемый формат ответа, авторизация и бизнес-логика на стороне 1С. Это доработка конфигурации: разработчик описывает шаблоны URL и методы, внешняя система обращается к ним как к обычному API. Такой способ предпочтителен, когда OData отдаёт слишком много лишнего или требуется записывать данные с проверками.
COM-соединение (V83.COMConnector) работает на Windows и подключается к базе напрямую из скриптов PowerShell, VBA или внешних приложений. Способ мощный, но требовательный: нужен установленный клиент 1С той же версии платформы, а незакрытые соединения могут блокировать базу. Для новых интеграций COM обычно уступает HTTP-вариантам.
Сравнение вариантов интеграции
Быстро включается, не требует доработки; ограничение — слабый контроль состава данных и нагрузка при массовых чтениях
Полный контроль формата и логики; требует доработки конфигурации и тестирования
Не нужен веб-сервер; работает только на Windows, держит сеанс и версию платформы
Готовый механизм для обмена между базами 1С; избыточен для простого чтения данных
Обмен через файлы и регламентные выгрузки
Когда прямое подключение невозможно или нежелательно, данные передают файлами: CSV, XML, JSON, Excel. В 1С выгрузку оформляют обработкой или регламентным заданием, которое по расписанию формирует файл в сетевой папке, на FTP или в облачном хранилище. Загружающая сторона забирает файл по расписанию.
Для обмена между базами 1С предпочтительны планы обмена и типовые правила конвертации: они отслеживают изменённые объекты и передают только дельту, а не всю базу целиком. Это снижает нагрузку и уменьшает вероятность расхождений.
При файловом обмене договоритесь о формате заранее: кодировка (обычно UTF-8), разделитель в CSV, формат дат и чисел, правило формирования имён файлов. Большинство проблем файлового обмена — это рассинхронизация форматов, а не ошибки передачи.
Проверка результата и типичные ошибки
Любую выгрузку проверяйте до передачи дальше. Минимальный контроль: количество строк, итоговые суммы по ключевым показателям и выборочная сверка нескольких записей с данными в интерфейсе 1С. Если выгружаете остатки или обороты, сверьте итог с типовым отчётом за тот же период.
Типичные ошибки: выгрузка без учёта помеченных на удаление объектов, потеря лидирующих нулей в кодах при открытии CSV в Excel, неверный часовой пояс в датах при интеграции, выгрузка за неполный период из-за отбора «по умолчанию». Каждая из них даёт формально корректный файл с неверными данными.
Как проверить результат
Совпадает с числом записей в списке 1С с теми же отборами
Строк меньше — проверьте отборы и пометки удаления
Сходятся с типовым отчётом за тот же период
Расхождение — проверьте период, организацию и валюту
Лидирующие нули сохранены, значения текстовые
Excel превратил коды в числа — импортируйте как текст
Даты в ожидаемом формате и часовом поясе
Сдвиг на несколько часов — проблема с таймзоной при интеграции
FAQ: частые вопросы о получении данных из 1С
Можно ли выгрузить данные из 1С без прав администратора?
Да, если у вас есть права на просмотр нужных объектов. Вывод списка, универсальный отчёт и сохранение табличного документа доступны обычному пользователю. Публикация OData, HTTP-сервисы и регламентные задания требуют участия администратора или разработчика.
Как выгрузить данные в Excel, чтобы не слетели коды с нулями?
Сохраняйте табличный документ сразу в xlsx — форматы колонок при этом обычно сохраняются. Если работаете через CSV, открывайте файл через «Данные → Получение данных из текстового файла» и явно назначайте колонкам с кодами текстовый формат.
Что лучше для интеграции с сайтом: OData или HTTP-сервис?
Для простого чтения каталога и остатков достаточно OData. Если нужны проверки, расчёт цен по логике базы или запись заказов, делайте HTTP-сервис — он даёт контроль над форматом и безопасностью, хотя требует доработки конфигурации.
Безопасно ли читать данные напрямую из SQL-таблиц 1С?
Только при соблюдении условий: работайте с копией базы, используйте только SELECT, учитывайте, что структура таблиц не документирована и может измениться при обновлении. Для рабочей базы предпочтительны штатные механизмы платформы.
Как автоматизировать регулярную выгрузку без программиста?
Частично можно: отчёты на СКД сохраняют настройки, а рассылка отчётов в типовых конфигурациях умеет отправлять результат по расписанию на почту. Для выгрузки файлов в сетевую папку по расписанию всё же потребуется простая обработка от разработчика.
Почему через OData не виден нужный документ или справочник?
Скорее всего, объект не включён в состав публикации OData. Администратор должен отметить объект в настройках публикации стандартного интерфейса OData и переопубликовать базу на веб-сервере. Также проверьте права учётной записи, под которой идёт обращение.
Что важно запомнить
Разовые выгрузки делайте штатными средствами: вывод списка, универсальный отчёт, сохранение в Excel. Для регулярной интеграции используйте OData, HTTP-сервисы или планы обмена с отдельной учётной записью. Всегда сверяйте количество строк и итоги, а прямой доступ к SQL оставляйте для копии базы и только на чтение.