Выгрузка метаданных в файлы

26.08.26

Разработка - Инструментарий разработчика

Внешняя обработка для частичной выгрузки конфигурации в файлы.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Выгрузка метаданных в файлы
.epf 43,10Kb ver:1.3
24 3 400 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

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

Мне периодически в своей работе приходится анализировать закрытые модули. Чтобы получить нужные метаданные в виде некоторого бинарного представления (закрытые модули с байт-кодом) или текстового представления (открытые модули или описания форм и прочее) приходится писать длинную команду для консоли, копипастить наименования нужных мне объектов из дерева метаданных, вспоминать, как называются типы метаданных и т.п. действия. Понял, что устал этим заниматься и решил это немного автоматизировать. В итоге это переросло в интерактивный инструмент.

 

 

Сначала хотел накидать минимальный ГУЙ для создания команды, но увлёкся, и получилось ~9 сотен строк кода. При открытии обработки строится ПОЛНОЕ дерево метаданных (как в конфигураторе). [Абсолютно Полное дерево метаданных см. в моём Информере] Флажками отмечаете те метаданные, которые хотите выгрузить. Указываете папку для дампов (выгружаемых файлов), и координаты базы и учётку. Текущую платформу (а также остальную инфу для подключения) можно заполнить на основе текущей открытой базы. Затем жмём кнопку "Выгрузить". При этом конфигуратор отмеченной базы должен быть закрыт, т.к. выполняемая команда будет сама запускать конфигуратор для выполнения частичной выгрузки.

Если нужно выгрузить метаданные непосредственно самой конфигурации (с модулями управляемого приложения и т.п.), то надо по корню дерева нажать ПКМ и выбрать "Выгрузить корень".

 

 

В обработке реализовано много всяких мелких фич, таких как рекурсивные взвод флагов от родителя вниз по иерархии,

 

 

сброс всех флагов по соответствующему пункту контекстного меню.

 

 

По нажатию крестика на поле "Платформа" значение установится в дефолтное положение - стартер платформы. Справа взведётся соответствующий флаг, указывающий, что используется именно стартер. Для виндового стартера можно указать разрядность платформы.

 

 

И ещё всякие проверки, например, что папка дампов должна быть доступна на запись, а при выборе каталога с файловой базой в нём должен содержаться файл "1Cv8.1CD" .

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

 

 

По ПКМ на объекте из расширения можно запустить выгрузку только единственного объекта из расширения.

 

 

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

 

 

Т.е. выгружать объекты из конфигурации и из одного расширения придётся в два этапа.

Если нужно выгрузить все метаданные из конкретного расширения, то отмечаем в дереве метаданных корень (отметятся ВСЕ объекты), и после начала выгрузки надо ответить на вопрос, выбрав нужное вам расширение.

Если в дереве метаданных ничего НЕ отметить, то выгрузка пройдёт по всем метаданным, аналогично выгрузке конфигурации в файлы, запускаемой из конфигуратора.

Вроде бы больше ничего не забыл рассказать про обработку )

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

Ну а молодые разработчики могут подчерпнуть из обработки примеры работы с красивым и функциональным деревом значений, работой с метаданными, получением информации о текущей базе данных и прочие возможности.

Кстати, работает данная обработка и на Windows, и на Linux. Протестировано на платформах 8.3.27.1989 и 8.3.24.1761 соответственно. Работает на ЛЮБОЙ конфигурации, т.к. не использует БСП. В обработке используется асинхронность, поэтому будет работать с платформы 8.3.18+ . А если убрать Асинх и Ждать, то будет работать с платформы 8.3.10+

P.S. Если выгружать закрытые модули в файлы (неважно, через конфигуратор или данной обработкой), то скомпилированный байт-код выгружается в контейнерный файл 1с - это бинарный формат, распаковать (но НЕ декомпилировать) который можно моим ВанПакером.

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

Мой GitHub здесь

 

Обновление от 20.04.26 - Версия 1.1 : Если расширений больше десятка, то вместо вопроса выводится список значений, т.к. платформа НЕ может отобразить более 10 кнопок в форме вопроса.

Добавлена вкладка для ручного указания списка выгружаемых объектов и поле для имени расширения (если его оставить пустым, то выгрузка будет производиться из основной конфы).

 

Обновление от 21.04.26 - Версия 1.2 : Немного изменил вкладки. Теперь на первой странице появилась возможность отображения сторонней конфигурации или стороннего расширения для возможности интерактивного указания объектов для выгрузки. Тут надо быть внимательным, чтобы отмеченные объекты соответствовали базе, из которой будете выгружать данные. Если выбираете объекты из внешнего расширения, обязательно данное расширение должно быть подключено к базе, из которой будет выполняться выгрузка.

Также добавлена возможность указания объектов метаданных по конкретной подсистеме.

Ну а в ручном режиме объекты и расширение (если оно есть) указываются текстом.

 

Обновление от 26.08.26 - Версия 1.3 : Добавлена возможность выгрузки форм и макетов для соответствующих объектов, а также таблиц для внешних источников данных и вложенных в них форм и макетов. Причём можно выгружать конкретные формы, макеты, таблицы по отдельности, которые отметили в дереве метаданных.

 

Проверено на следующих конфигурациях и релизах:

  • 1С:Библиотека стандартных подсистем, редакция 3.1, релизы 3.1.11.466

Вступайте в нашу телеграмм-группу Инфостарт

выгрузка в файлы частичная выгрузка bsl xml метаданные конфигурация

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы, интерфейс 8.5. Может выполнять свертку одновременно в несколько потоков, а также без непосредственного участия пользователя. Решение в Реестре отечественного ПО.

24900 руб.

20.08.2024    78766    399    171    

338

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3 и 8.5: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    276830    1551    423    

1197

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм. Обновление версии от 21.04.26

22570 руб.

06.10.2023    42035    115    54    

131

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.

15250 руб.

25.08.2025    69947    139    41    

147

Инструментарий разработчика Разработка Администрирование веб-серверов Системный администратор Программист Бизнес-аналитик Руководитель проекта 1С 8.3 Платные (руб)

Analyzer 1C сводит выгрузку 1С — основную конфигурацию и все расширения — в единый граф знаний. Любой запрос по связям за доли секунды, с пометками «Доб.» / «Заимств.» / «Переопределено». Новое в 2.0 — обновление поставки: сравнение и объединение версий деревом «как в Конфигураторе» с выгрузкой плана решений; поиск конфликтов из-за перехватов расширений и висячих ссылок; загрузка из бинарных .cf/.cfe; циклические зависимости. Плюс анализ влияния, запросы BSL, роли и RLS, граф вызовов. Минута на развёртывание через Docker без необходимости подключения к Интернет. Любая 1С:Предприятие 8.3+.

14000 руб.

17.04.2026    11521    45    62    

58

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

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

17000 руб.

10.11.2023    27638    102    46    

107

Мастера заполнения Поиск данных Инструментарий разработчика Подбор и обработка объектов 1С 8.3 1С 8.5 Платные (руб)

Infostart MagicInput улучшает подбор в полях ввода 1С: ищет по любой части названия и по нескольким ключевым фрагментам, распознаёт ввод в другой раскладке и показывает иконки/статусы объектов прямо в списке. Поддерживает вставку навигационной ссылки/представления документа для автоподбора; для разработчиков доступны поиск по GUID и полному имени предопределённого. Работает в управляемых формах и подключается в большинстве конфигураций 1С 8.3/8.5. Работает на возможностях платформы, внешние компоненты не используются.

6000 руб.

25.02.2026    5863    19    1    

21
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Tarlich 89 20.04.26 12:49 Сейчас в теме
Прошу подсказать (просто не приходилось) как и где ЭТО помогает в работе ? можно ли обратно из имеющих файлов собрать конфигурацию ? у меня были случаи что необходимо было с веба забрать базу не типовую, админ которой потерялся на всегда .... как то может помочь ?
2. SerVer1C 1143 20.04.26 12:59 Сейчас в теме
(1) Посмотрите на скриншот. Обработка выполняет такую же выгрузку, но НЕ всех объектов метаданных, а только тех, которые вы указали.
Где можно применять: для выгрузки объектов и дальнейшего помещения их в ГИТ. Для анализа выбранных модулей. Я, лично, таким образом выгружаю закрытые модули, а потом их декомпилирую анализирую.
Прикрепленные файлы:
6. Alxby 1161 20.04.26 17:14 Сейчас в теме
(1) Я использовал подобную выгрузку одновременно с загрузкой. Быстро перенести из одной конфигурации в другую несколько обработок/отчетов/макетов, не выгружая всю конфигурацию - бесценно!
alex_sayan; SerVer1C; +2 Ответить
13. SerVer1C 1143 21.04.26 21:25 Сейчас в теме
(6) Кстати, не знаю, это баг или фича, но изменения можно загрузить в конфу на поддержке, не снимая замок.
11. Vasvas05 27 20.04.26 18:20 Сейчас в теме
(1)
Прошу подсказать (просто не приходилось) как и где ЭТО помогает в работе ? можно ли обратно из имеющих файлов собрать конфигурацию ? у меня были случаи что необходимо было с веба забрать базу не типовую, админ которой потерялся на всегда .... как то может помочь ?


могу предположить, чтобы не тянуть весь cf, а только измененные, если нет гита, может еще чтобы анализировать "куски"
3. ZhokhovM 697 20.04.26 17:08 Сейчас в теме
На картинке *.CFU, точно не *.CFE?
5. SerVer1C 1143 20.04.26 17:13 Сейчас в теме
(3) Да, CFE, спс за замечание
4. Alxby 1161 20.04.26 17:10 Сейчас в теме
Плюс. Не увидел в статье, но востребовано (по крайней мере, я когда-то реализовывал в своем CI/CD): выгрузка по выбранным подсистемам. Если этого нет - вот тема для следующей версии. Да и не мешало бы рассказать как в списке выгружаемых объектов указать, что надо выгрузить только свойства конфигурации ;).
SerVer1C; +1 Ответить
7. SerVer1C 1143 20.04.26 17:16 Сейчас в теме
(4)
надо выгрузить только свойства конфигурации

Если нужно выгрузить метаданные непосредственно самой конфигурации (с модулями управляемого приложения и т.п.), то надо по корню дерева нажать ПКМ и выбрать "Выгрузить корень".

Если вы не про эти свойства, то уточните.
8. Alxby 1161 20.04.26 17:18 Сейчас в теме
(7) Я про последний скриншот в статье, судя по всему там выгружаемые объекты указываются текстом
9. SerVer1C 1143 20.04.26 17:26 Сейчас в теме
(8) Да, на вкладке "Сторонняя конфигурация" список объектов можно заполнить вручную - это сделано для того, если выгрузка будет производиться из конфигурации, которая только что была загружена в пустую базу и не запускалась (т.к. для первого запуска потребовалось бы производить много лишних действий по заполнению первоначальных значений), а на вкладке "Текущая конфигурация" - можно отметить объекты в дереве конфигурации, если выгрузка будет производиться из текущей конфы. В след. версии добавлю заполнение дерева по конфигурационному файлу.
10. Alxby 1161 20.04.26 17:35 Сейчас в теме
(9) Для чего сделана выгрузка со списком объектов - понятно. Я не знаю какая технология используется в этой обработке, но я в свое время долго возился с проблемой - какое имя объекта надо указать, чтобы выгрузить и проанализировать только свойства конфигурации, например ее версию. Поэтому я и написал, что такая информация в статье была бы полезна.
12. SerVer1C 1143 21.04.26 12:56 Сейчас в теме
(10) Про то, что вы пишите, можно выгрузить через контекстное меню - команда "Выгрузить корень". Там много чего выгружается. См. скриншот.
В версии 1.2 реализовал вашу идею отметки объектов по подсистеме.
Прикрепленные файлы:
14. alex_4x 88 26.05.26 20:46 Сейчас в теме
Я очень отстал от жизни. Расскажите пожалуйста, в чём реальное применение этого продукта? Выгрузили, поизучали, а вносить изменения как раньше по старинке? А чем это помогает?
15. SerVer1C 1143 01.06.26 09:25 Сейчас в теме
(14) Реальное применение каждый выбирает себе сам по мере надобности в его задачах. Частичная выгрузка быстрее полной, инструмент предлагает удобно и быстро выбрать выгружаемые объекты интерактивно, а не писать текстом их в командной строке. Можно вносить изменения в выгруженные файлы и выборочно загрузить объекты обратно в конфу (с помощью командной строки - частичная загрузка пока не реализована в обработке). Мне лично инструмент помогает выгрузить конкретный закрытый модуль для его дальнейшего анализа.
16. semm 08.06.26 09:59 Сейчас в теме
Выгружаю для примера один регистр накопления. В итоге в файле получаю только имя самого регистра, но не структуру его метаданных. Что-то не так делаю?
База серверная.
17. SerVer1C 1143 08.06.26 10:45 Сейчас в теме
(16) В результирующей папке у вас создается директория AccumulationRegisters, в ней xml-файл <ИмяРегистра>.xml и папка <ИмяРегистра>, в которой вся сопутствующая информация по регистру: модули, справки и т.п. Структуру регистра смотрите в xml-файле.
18. podoro9nik 29.07.26 09:20 Сейчас в теме
А это разве уже не имеется в самом Infostart PROF Toolkit?
19. пользователь 29.07.26 10:14
Сообщение было скрыто модератором.
...
23. SerVer1C 1143 27.08.26 08:40 Сейчас в теме
(18) Не могу сказать. Не пользовался.
20. MaximKor 20 29.07.26 17:05 Сейчас в теме
Добрый день! Что то не так делаю или не предусмотрена полная выгрузка объекта, включая его формы и модули форм и т.д.?
Попробовал выгрузить документ, в папке появились модули объекта, менеджера и модули команд. А папки Forms нет
21. SerVer1C 1143 29.07.26 20:17 Сейчас в теме
(20) Формы не выгружаются. Скоро выпущу новый релиз обработки.
22. SerVer1C 1143 26.08.26 20:52 Сейчас в теме
(20) Выпустил релиз 1.3
Описание скоро подъедет (после новой модерации)
24. MaximKor 20 27.08.26 12:35 Сейчас в теме
Добрый день! Подскажите, а обновленную обработку можно получить бесплатно или только снова через покупку?
25. SerVer1C 1143 27.08.26 13:29 Сейчас в теме
(24) Можно! Пишите сюда, я добавлю вас в друзья, а там в личке определимся, как переслать файл.
27. SerVer1C 1143 27.08.26 17:01 Сейчас в теме
(25) Оказывается, на портале убрали возможность писать даже друзьям.
Идите в мой репо diff, там всё описано, как получить новую версию.
26. SerVer1C 1143 27.08.26 14:29 Сейчас в теме
Друзья! На моём ГитХабе появился репозиторий diff, где я буду размещать бесплатные обновления для своих разработок, но только для скачавших!!!
28. MaximKor 20 31.08.26 09:52 Сейчас в теме
(26) Добрый день! репозиторий diff нашел и прочитал. но не понял что мне сделать надо? выполнить что то в командной строке? у вас примера не будет как и что надо сделать?
29. SerVer1C 1143 31.08.26 10:46 Сейчас в теме
(28)
DiffSV.exe -a -o ИмяВерсии_1.2 -d 1.2-1.3.diff -n ИмяВерсии_1.3

положите все нужные файлы в одну папку и выполните данную команду, подставив корректные имена для старой версии (ключ -o) и для новой версии (ключ -n)
30. MaximKor 20 31.08.26 10:56 Сейчас в теме
(29) вот такой ответ получается: Old file not exists
31. MaximKor 20 31.08.26 12:08 Сейчас в теме
(30) ок, пути прописал, теперь получаю вот такое: Difference file not exists
что не так, подскажите, пожалуйста
32. MaximKor 20 01.09.26 09:49 Сейчас в теме
(31) Автор, добрый день! Подскажите, пожалуйста, что не так делаю? Обработка нужна очень
33. SerVer1C 1143 01.09.26 13:35 Сейчас в теме
(32) Вам же консоль про ошибку конкретно пишет текстом. Исправляйте всё то, на что оно ругается.
34. MaximKor 20 01.09.26 14:17 Сейчас в теме
(33) ошибка на русском языке звучит как: "Файл различий не существует". что мне с этим делать то? вы можете в своей же инструкции по человечески написать, что надо сделать и как обработать если что то идет не так?
я два дня вас мучаю вопросами, хотя вы можете один раз нормально всё описать и жить спокойно.
35. SerVer1C 1143 01.09.26 14:22 Сейчас в теме
(34) ключ -o - старый файл
ключ -d - разностный файл (diff-файл соответствующей версии)
ключ -n - новый файл
и перед всем этим надо указать ключ -a - про это же на ГитХабе написано в ReadMe
36. MaximKor 20 01.09.26 14:31 Сейчас в теме
вот вы в 28 мне скинули строку, про это же пишите в 35
я ровно всё так и сделал, и получаю сообщение выше...
вот моя cmd: C:\Users\mkore>D:\1С\DiffSV\DiffSV.exe -a -o D:\1С\DiffSV\ВыгрузкаМетаданныхВФайлы_1.2.epf -d 1.2-1.3.diff -n D:\1С\DiffSV\ВыгрузкаМетаданныхВФайлы_1.2.epf
Difference file not exists
37. MaximKor 20 01.09.26 14:37 Сейчас в теме
(36) разобрался. спасибо!
SerVer1C; +1 Ответить
Для отправки сообщения требуется регистрация/авторизация