# Спецификация формата XML объектов метаданных конфигурации 1С Формат: XML-выгрузка конфигурации 1С:Предприятие 8.3 (Конфигуратор → Конфигурация → Выгрузить конфигурацию в файлы). Версии формата: `2.17` (платформа 8.3.20–8.3.24), `2.20` (платформа 8.3.27+). Источники: выгрузки ERP 2, Бухгалтерия предприятия (платформы 8.3.20, 8.3.24, 8.3.27). --- ## 1. Общая структура выгрузки ### 1.1. Верхний уровень каталогов ``` Configuration.xml # Корневой файл конфигурации ConfigDumpInfo.xml # Служебный файл выгрузки Catalogs/ # Справочники Documents/ # Документы InformationRegisters/ # Регистры сведений AccumulationRegisters/ # Регистры накопления AccountingRegisters/ # Регистры бухгалтерии CalculationRegisters/ # Регистры расчёта ChartsOfAccounts/ # Планы счетов ChartsOfCharacteristicTypes/ # Планы видов характеристик ChartsOfCalculationTypes/ # Планы видов расчёта BusinessProcesses/ # Бизнес-процессы Tasks/ # Задачи ExchangePlans/ # Планы обмена DocumentJournals/ # Журналы документов Enums/ # Перечисления Reports/ # Отчёты DataProcessors/ # Обработки Constants/ # Константы CommonModules/ # Общие модули CommonAttributes/ # Общие реквизиты CommonCommands/ # Общие команды CommonForms/ # Общие формы CommonPictures/ # Общие картинки CommonTemplates/ # Общие макеты CommandGroups/ # Группы команд DefinedTypes/ # Определяемые типы DocumentNumerators/ # Нумераторы документов EventSubscriptions/ # Подписки на события FilterCriteria/ # Критерии отбора FunctionalOptions/ # Функциональные опции FunctionalOptionsParameters/ # Параметры функциональных опций HTTPServices/ # HTTP-сервисы Languages/ # Языки Roles/ # Роли ScheduledJobs/ # Регламентные задания SessionParameters/ # Параметры сеанса SettingsStorages/ # Хранилища настроек StyleItems/ # Элементы стиля Styles/ # Стили Subsystems/ # Подсистемы WebServices/ # Web-сервисы WSReferences/ # WS-ссылки XDTOPackages/ # XDTO-пакеты Ext/ # Расширение конфигурации ``` ### 1.2. Структура каталога объекта метаданных Каждый объект метаданных (справочник, документ и т.д.) хранится в каталоге с именем объекта: ``` <ИмяОбъекта>/ ├── <ИмяОбъекта>.xml # Корневой XML — определение объекта ├── Ext/ │ ├── ObjectModule.bsl # Модуль объекта (опционально) │ ├── ManagerModule.bsl # Модуль менеджера (опционально) │ ├── RecordSetModule.bsl # Модуль набора записей — для регистров (опционально) │ ├── Predefined.xml # Предопределённые элементы (опционально) │ ├── Help.xml # Метаданные справки (опционально) │ ├── Help/ │ │ └── ru.html # HTML-страница справки │ ├── Flowchart.xml # Карта маршрута — только для бизнес-процессов │ └── Content.xml # Состав плана обмена — только для планов обмена ├── Forms/ │ ├── <ИмяФормы>/ │ │ ├── <ИмяФормы>.xml # Метаданные формы │ │ └── Ext/ │ │ ├── Form.xml # Описание формы │ │ ├── Form/ │ │ │ └── Module.bsl # Модуль формы │ │ └── Help.xml # Справка формы (опционально) │ └── ... ├── Templates/ │ ├── <ИмяМакета>/ │ │ ├── <ИмяМакета>.xml # Метаданные макета │ │ └── Ext/ │ │ └── Template.xml # Тело макета (MXL, СКД и др.) │ └── ... └── Commands/ # Команды (если определены отдельными файлами) ``` **Модули по типам объектов:** | Тип объекта | ObjectModule | ManagerModule | RecordSetModule | CommandModule | |---|---|---|---|---| | Справочник | + | + | - | + | | Документ | + | + | - | + | | Регистры сведений | - | + | + | - | | Регистры накопления | - | + | + | - | | Регистры бухгалтерии | - | + | + | - | | Регистры расчёта | - | + | + | - | | ПланСчетов | + | + | - | + | | ПВХ | + | + | - | + | | ПВР | + | + | - | + | | БизнесПроцесс | + | + | - | + | | Задача | + | + | - | + | | ПланОбмена | + | + | - | + | | Перечисление | - | + | - | - | | Отчёт | + | + | - | + | | Обработка | + | + | - | + | | Константа | - | + | - | - | --- ## 2. Общий формат XML ### 2.1. Корневой элемент Все файлы метаданных объектов используют корневой элемент ``: ```xml ... ... ... ``` ### 2.2. Пространства имён | Префикс | URI | Назначение | |---|---|---| | *(default)* | `http://v8.1c.ru/8.3/MDClasses` | Основное пространство классов метаданных | | `v8` | `http://v8.1c.ru/8.1/data/core` | Базовые типы данных (Type, item, lang, content) | | `cfg` | `http://v8.1c.ru/8.1/data/enterprise/current-config` | Ссылки на объекты текущей конфигурации | | `xr` | `http://v8.3/xcf/readable` | Человекочитаемый формат (GeneratedType, StandardAttribute) | | `xsi` | `http://www.w3.org/2001/XMLSchema-instance` | Типы атрибутов (`xsi:type`, `xsi:nil`) | | `xs` | `http://www.w3.org/2001/XMLSchema` | Типы XML Schema (`xs:string`, `xs:boolean`, ...) | | `app` | `http://v8.1c.ru/8.2/managed-application/core` | Ядро управляемого приложения (ChoiceParameters) | | `xen` | `http://v8.3/xcf/enums` | Перечисления формата | | `xpr` | `http://v8.3/xcf/predef` | Предопределённые типы | ### 2.3. Элемент типа объекта Внутри `` содержится единственный дочерний элемент, имя которого соответствует типу объекта: | Тип метаданных | XML-элемент | |---|---| | Справочник | `` | | Документ | `` | | Перечисление | `` | | Константа | `` | | Регистр сведений | `` | | Регистр накопления | `` | | Регистр бухгалтерии | `` | | Регистр расчёта | `` | | План счетов | `` | | План видов характеристик | `` | | План видов расчёта | `` | | Бизнес-процесс | `` | | Задача | `` | | План обмена | `` | | Журнал документов | `` | | Отчёт | `` | | Обработка | `` | | Определяемый тип | `` | | Общий модуль | `` | | Регламентное задание | `` | | Подписка на событие | `` | | HTTP-сервис | `` | | Веб-сервис | `` | Атрибут `uuid` — уникальный идентификатор объекта. ### 2.4. Три секции объекта Каждый объект метаданных содержит три секции: ```xml <[ТипОбъекта] uuid="..."> ``` --- ## 3. InternalInfo — внутренняя информация Секция содержит определения типов, генерируемых платформой для работы с объектом. ### 3.1. GeneratedType ```xml xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ... ... ``` **Категории генерируемых типов по видам объектов:** | Вид объекта | Категории (category) | |---|---| | Catalog | Object, Ref, Selection, List, Manager | | Document | Object, Ref, Selection, List, Manager | | Enum | Ref, Manager, List | | Constant | Manager, ValueManager, ValueKey | | InformationRegister | Record, Manager, Selection, List, RecordSet, RecordKey, RecordManager | | AccumulationRegister | Record, Manager, Selection, List, RecordSet, RecordKey | | AccountingRegister | Record, Manager, Selection, List, RecordSet, RecordKey | | CalculationRegister | Record, Manager, Selection, List, RecordSet, RecordKey + Recalcs | | ChartOfAccounts | Object, Ref, Selection, List, Manager | | ChartOfCharacteristicTypes | Object, Ref, Selection, List, Manager | | ChartOfCalculationTypes | Object, Ref, Selection, List, Manager + Displacing, Base, Leading | | BusinessProcess | Object, Ref, Selection, List, Manager | | Task | Object, Ref, Selection, List, Manager | | ExchangePlan | Object, Ref, Selection, List, Manager | | DocumentJournal | Selection, List, Manager | | Report | Object | | DataProcessor | Object | Формат имени: `{ТипОбъектаEng}.{ИмяОбъекта}` (напр. `CatalogObject.Номенклатура`, `DocumentRef.АвансовыйОтчет`). ### 3.2. ThisNode (только ExchangePlan) ```xml xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ... ``` --- ## 4. Общие элементы Properties ### 4.1. Базовые свойства (есть у всех объектов) ```xml ИмяОбъекта ru Отображаемое имя en Display name Комментарий разработчика ``` - **Name** — системное имя (идентификатор, без пробелов и спецсимволов) - **Synonym** — локализованное отображаемое имя (структура `v8:item`) - **Comment** — комментарий (может быть пустым элементом ``) ### 4.2. Многоязычный текст (v8:item) Используется для Synonym, ToolTip, ObjectPresentation, ListPresentation и других текстовых свойств: ```xml ru Текст на русском en English text ``` ### 4.3. Определение типа (Type) Тип реквизита задаётся элементом ``, содержащим один или несколько ``: **Примитивные типы:** ```xml xs:string 100 Variable xs:decimal 15 2 Any xs:boolean xs:dateTime DateTime ``` **Ссылочные типы:** ```xml cfg:CatalogRef.Номенклатура cfg:DocumentRef.РеализацияТоваровУслуг cfg:EnumRef.ВидыОпераций cfg:ChartOfAccountsRef.Хозрасчетный cfg:ChartOfCharacteristicTypesRef.ВидыСубконто cfg:ChartOfCalculationTypesRef.Начисления cfg:ExchangePlanRef.ОбменССайтом cfg:BusinessProcessRef.Задание cfg:TaskRef.ЗадачаИсполнителя ``` **Специальные типы:** ```xml v8:ValueStorage v8:UUID ``` **Составной тип (несколько типов):** ```xml cfg:CatalogRef.Контрагенты cfg:CatalogRef.ФизическиеЛица xs:string 100 Variable ``` **Определяемый тип (DefinedType):** ```xml cfg:DefinedType.Цена ``` ### 4.4. Свойства представления ```xml ru... ... ... ... ... ``` ### 4.5. Свойства поведения ```xml true true Use Managed Use true true ``` ### 4.6. Свойства форм ```xml Catalog.Номенклатура.Form.ФормаЭлемента Catalog.Номенклатура.Form.ФормаГруппы Catalog.Номенклатура.Form.ФормаСписка Catalog.Номенклатура.Form.ФормаВыбора ... ... ... ... ... ... ``` ### 4.7. Свойства поиска при вводе ```xml Catalog.Номенклатура.StandardAttribute.Description Catalog.Номенклатура.StandardAttribute.Code Begin Use Directly DontUse Auto ``` ### 4.8. Свойства блокировки данных ```xml Document.АвансовыйОтчет.Attribute.Организация Managed ``` ### 4.9. Ввод на основании (BasedOn) ```xml Document.РасходныйКассовыйОрдер Document.СписаниеБезналичныхДС ``` ### 4.10. Характеристики (Characteristics) Механизм динамических свойств — позволяет расширять состав реквизитов объекта в режиме 1С:Предприятие: ```xml InformationRegister.ДополнительныеСведения.Dimension.Свойство Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.ДополнительныйРеквизит Документ_АвансовыйОтчет -1 -1 InformationRegister.ДополнительныеСведения.Dimension.Объект InformationRegister.ДополнительныеСведения.Dimension.Свойство InformationRegister.ДополнительныеСведения.Resource.Значение -1 -1 ``` --- ## 5. Стандартные реквизиты (StandardAttributes) Каждый объект имеет набор предопределённых стандартных реквизитов, задаваемых в секции `` внутри ``. ### 5.1. Формат стандартного реквизита ```xml ShowError false true Auto ruПодсказка false Auto Auto false Use false ruНаименование Use ``` ### 5.2. Свойства стандартного реквизита | Свойство | Тип | Описание | |---|---|---| | `name` | атрибут | Имя стандартного реквизита | | `LinkByType` | элемент | Связь по типу (обычно пустой) | | `FillChecking` | enum | `DontCheck` \| `ShowWarning` \| `ShowError` | | `MultiLine` | boolean | Многострочное поле | | `FillFromFillingValue` | boolean | Заполнять из значения заполнения | | `CreateOnInput` | enum | `Auto` \| `Use` \| `DontUse` | | `MaxValue` | any | Макс. значение (`xsi:nil="true"` если не задано) | | `MinValue` | any | Мин. значение | | `ToolTip` | v8:item | Подсказка | | `ExtendedEdit` | boolean | Расширенное редактирование | | `Format` | v8:item | Формат отображения | | `EditFormat` | v8:item | Формат редактирования | | `ChoiceForm` | string | Форма выбора | | `QuickChoice` | enum | `Auto` \| `Use` \| `DontUse` | | `ChoiceHistoryOnInput` | enum | `Auto` \| `Use` \| `DontUse` | | `PasswordMode` | boolean | Режим пароля | | `DataHistory` | enum | `Use` \| `DontUse` | | `MarkNegatives` | boolean | Выделять отрицательные | | `Synonym` | v8:item | Переопределённый синоним | | `Comment` | string | Комментарий | | `FullTextSearch` | enum | `Use` \| `DontUse` | | `ChoiceParameterLinks` | сложный | Связи параметров выбора | | `FillValue` | typed | Значение заполнения | | `Mask` | string | Маска ввода | | `ChoiceParameters` | сложный | Параметры выбора | ### 5.3. Стандартные реквизиты по видам объектов | Стандартный реквизит | Catalog | Document | Enum | ChartOfAccounts | ChartOfCharacteristicTypes | ExchangePlan | BusinessProcess | Task | |---|---|---|---|---|---|---|---|---| | Ref | + | + | + | + | + | + | + | + | | DeletionMark | + | + | - | + | + | + | + | + | | PredefinedDataName | + | - | - | + | + | - | - | - | | Predefined | + | - | - | + | + | - | - | - | | Code | + | - | - | + | + | + | - | - | | Description | + | - | - | + | + | + | - | + | | IsFolder | +* | - | - | - | - | - | - | - | | Owner | +** | - | - | - | - | - | - | - | | Parent | +* | - | - | + | +* | - | - | - | | Date | - | + | - | - | - | - | + | + | | Number | - | + | - | - | - | - | + | + | | Posted | - | + | - | - | - | - | - | - | | Order | - | - | + | + | - | - | - | - | | ValueType | - | - | - | - | + | - | - | - | | Type (тип счёта) | - | - | - | + | - | - | - | - | | OffBalance | - | - | - | + | - | - | - | - | | ThisNode | - | - | - | - | - | + | - | - | | SentNo | - | - | - | - | - | + | - | - | | ReceivedNo | - | - | - | - | - | + | - | - | | Started | - | - | - | - | - | - | + | - | | Completed | - | - | - | - | - | - | + | - | | HeadTask | - | - | - | - | - | - | + | - | | Executed | - | - | - | - | - | - | - | + | | RoutePoint | - | - | - | - | - | - | - | + | | BusinessProcess | - | - | - | - | - | - | - | + | `*` — если Hierarchical=true. `**` — если задан Owners. **Стандартные реквизиты регистров:** | Стандартный реквизит | InformationRegister | AccumulationRegister | AccountingRegister | CalculationRegister | |---|---|---|---|---| | Active | + | + | + | + | | Period | + | + | + | - | | Recorder | +* | + | + | + | | LineNumber | +* | + | + | + | | Account | - | - | + | - | | ExtDimension1..3 | - | - | + | - | | ExtDimensionType1..3 | - | - | + | - | | RegistrationPeriod | - | - | - | + | | CalculationType | - | - | - | + | | ActionPeriod | - | - | - | +** | | BegOfActionPeriod | - | - | - | +** | | EndOfActionPeriod | - | - | - | +** | | BegOfBasePeriod | - | - | - | +*** | | EndOfBasePeriod | - | - | - | +*** | | ReversingEntry | - | - | - | + | `*` — если WriteMode = RecorderSubordinate. `**` — если ActionPeriod = true. `***` — если BasePeriod = true. ### 5.4. LinkByType (связь по типу) Используется в регистрах бухгалтерии для привязки субконто к счёту: ```xml AccountingRegister.Хозрасчетный.StandardAttribute.Account 1 ``` ### 5.5. FillValue — значение заполнения ```xml Текст false 0 0001-01-01T00:00:00 Catalog.Номенклатура.EmptyRef Enum.ВидыОпераций.EnumValue.Продажа ``` --- ## 6. Дочерние объекты (ChildObjects) ### 6.1. Реквизит (Attribute) ```xml Организация ruОрганизация cfg:CatalogRef.Организации false false false false true DontCheck Items Auto Auto Auto DontIndex Use Use ForItem ``` **Специфичные свойства реквизита:** | Свойство | Тип | Описание | |---|---|---| | `Indexing` | enum | `DontIndex` \| `Index` \| `IndexWithAdditionalOrder` | | `ChoiceFoldersAndItems` | enum | `Items` \| `Folders` \| `FoldersAndItems` | | `Use` | enum | `ForItem` \| `ForFolder` \| `ForFolderAndItem` (только для иерарх. справочников) | | `FillFromFillingValue` | boolean | Заполнять из значения по умолчанию | ### 6.2. Табличная часть (TabularSection) ```xml ... ... ... ... Штрихкоды ... DontCheck ForItem ``` Имя генерируемого типа: `{Тип}TabularSection.{Объект}.{ИмяТЧ}` и `{Тип}TabularSectionRow.{Объект}.{ИмяТЧ}`. ### 6.3. Форма (Form) ```xml
ФормаЭлемента ... Ordinary
``` Содержимое формы хранится в отдельных файлах: `Forms/<Имя>/<Имя>.xml` и `Forms/<Имя>/Ext/Form.xml`. ### 6.4. Макет (Template) ```xml ``` Тело макета: `Templates/<Имя>/Ext/Template.xml` (или другое расширение в зависимости от типа). ### 6.5. Команда (Command) ```xml ВвестиНаОсновании ... FormCommandBarImportant cfg:DocumentRef.АвансовыйОтчет Multiple true Auto ... CommonPicture.Создать false Auto ``` --- ## 7. Справочники (Catalogs) XML-элемент: ``. Категория InternalInfo: CatalogObject, CatalogRef, CatalogSelection, CatalogList, CatalogManager. ### 7.1. Специфичные свойства **Иерархия:** ```xml true HierarchyFoldersAndItems true 3 true ``` **Код и наименование:** ```xml 11 String Variable WholeCatalog 150 true true AsDescription ``` **Владелец:** ```xml Catalog.Контрагенты ToItems ``` **Прочее:** ```xml InDialog true BothWays Auto ``` ### 7.2. Предопределённые элементы (Predefined.xml) Файл `Ext/Predefined.xml` содержит предопределённые элементы справочника (если есть): ```xml ОсновнаяВалюта Рубль 643 false ``` --- ## 8. Документы (Documents) XML-элемент: ``. Категория InternalInfo: DocumentObject, DocumentRef, DocumentSelection, DocumentList, DocumentManager. ### 8.1. Специфичные свойства **Нумерация:** ```xml String 11 Variable Year true true ``` **Проведение:** ```xml Allow Allow true true ``` **Движения по регистрам:** ```xml AccumulationRegister.ТоварыНаСкладах InformationRegister.ЦеныНоменклатуры AccountingRegister.Хозрасчетный AutoDeleteOnUnpost WriteSelected AutoFill ``` ### 8.2. Стандартные реквизиты документа - **Ref** — ссылка - **DeletionMark** — пометка удаления - **Date** — дата документа - **Number** — номер документа - **Posted** — проведён --- ## 9. Регистры ### 9.1. Регистры сведений (InformationRegisters) XML-элемент: ``. **Специфичные свойства:** ```xml Month Independent true false false ``` - `WriteMode=Independent` — записи создаются напрямую, без документа-регистратора - `WriteMode=RecorderSubordinate` — записи привязаны к документу-регистратору - `RecorderPosition` — непериодический, но подчинённый регистратору (период = момент записи регистратора) **Дочерние объекты (ChildObjects):** - `` — измерения (ключевые поля) - `` — ресурсы (хранимые значения) - `` — реквизиты (дополнительная информация) - `
`, `