From 9949039d98fed72135870875bd8722937d7b9f46 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Thu, 13 Aug 2026 14:20:10 +0300 Subject: [PATCH] =?UTF-8?q?docs(1c-*):=20=D0=BB=D0=B5=D1=81=D1=82=D0=BD?= =?UTF-8?q?=D0=B8=D1=86=D0=B0=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D0=B9=20?= =?UTF-8?q?=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=82=D0=B0=20=E2=80=94=20=D0=BF?= =?UTF-8?q?=D0=BE=20=D0=BE=D0=B4=D0=BD=D0=BE=D0=B9=20=D0=BD=D0=B0=20=D1=80?= =?UTF-8?q?=D0=B5=D0=BB=D0=B8=D0=B7=20=D0=BF=D0=BB=D0=B0=D1=82=D1=84=D0=BE?= =?UTF-8?q?=D1=80=D0=BC=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Утверждение «2.17 = платформы 8.3.20–8.3.24» повторялось в 7 местах и было неверным: точка «8.3.20» получена не замером, а из имени каталога cfsrc/acc_8.3.20, который побайтово совпадает с acc_8.3.24 (91807/91807 файлов; обе — БП 3.0.181.31 с режимом Version8_3_24, который 8.3.20 открыть не может). Интерполяция между двумя одинаковыми точками и дала мнимый интервал. Замер пустыми ИБ на шести установленных платформах (создать базу платформой X и выгрузить ею же): 8.3.20 → 2.13, 8.3.24 → 2.17, 8.3.25 → 2.18, 8.3.26 → 2.19, 8.3.27 → 2.20, 8.5.1 → 2.21. Версия меняется каждым релизом. Полная лестница теперь в одном месте — §7.1 1c-configuration-spec.md, с колонкой «замерено»: 8.3.21/8.3.22 не проверялись, 2.16 подтверждена только сторонним сообщением. Остальные спеки на неё ссылаются. Заодно сняты два вывода, выведенных из каталога-дубля: «содержимое Form.xml идентично между 8.3.20 и 8.3.24» и строка «8.3.20 | 2.17 | Базовая» в спецификации ролей. Дописан 2.21 в таблицы, которые о нём не знали, и уточнён TextToSpeech: он приезжает в 2.18, а на 2.17 роняет загрузку XDTO-ошибкой, а не отбраковывается молча. Co-Authored-By: Claude Opus 5 (1M context) --- docs/1c-config-objects-spec.md | 10 +++++----- docs/1c-configuration-spec.md | 36 +++++++++++++++++++++++----------- docs/1c-form-spec.md | 2 +- docs/1c-role-spec.md | 8 +++++--- docs/1c-spreadsheet-spec.md | 10 ++++++---- docs/1c-subsystem-spec.md | 8 ++++---- docs/1c-xdto-spec.md | 2 +- 7 files changed, 47 insertions(+), 29 deletions(-) diff --git a/docs/1c-config-objects-spec.md b/docs/1c-config-objects-spec.md index df4dd388..e33e69ac 100644 --- a/docs/1c-config-objects-spec.md +++ b/docs/1c-config-objects-spec.md @@ -1,9 +1,9 @@ # Спецификация формата XML объектов метаданных конфигурации 1С Формат: XML-выгрузка конфигурации 1С:Предприятие 8.3 (Конфигуратор → Конфигурация → Выгрузить конфигурацию в файлы). -Версии формата: `2.17` (платформа 8.3.20–8.3.24), `2.18` (8.3.25), `2.19` (8.3.26), `2.20` (8.3.27+). +Проверенный диапазон версий формата: `2.17` (платформа 8.3.24) … `2.21` (8.5); полная лестница — [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий). -Источники: выгрузки ERP 2, Бухгалтерия предприятия (платформы 8.3.20, 8.3.24, 8.3.27). +Источники: выгрузки ERP 2, Бухгалтерия предприятия (платформы 8.3.24–8.3.27). > **Связанные спецификации:** > - Корневая структура конфигурации — [1c-configuration-spec.md](1c-configuration-spec.md) @@ -1698,9 +1698,9 @@ XML-элемент: ``. Трёхуровневая вложенно ## 26. Различия версий платформы -### 26.1. Лестница версий 2.17 → 2.18 → 2.19 → 2.20 +### 26.1. Лестница версий -Атрибут `version` корневого элемента `` задаёт платформа, которой выгружают: 8.3.20–8.3.24 → `2.17`, 8.3.25 → `2.18`, 8.3.26 → `2.19`, 8.3.27 → `2.20`. От режима совместимости конфигурации он не зависит. +Атрибут `version` корневого элемента `` задаёт платформа, которой выгружают, — по одной версии формата на релиз платформы: 8.3.24 → `2.17`, 8.3.25 → `2.18`, 8.3.26 → `2.19`, 8.3.27 → `2.20`, 8.5 → `2.21`. От режима совместимости конфигурации он не зависит. Полная лестница, включая версии ниже проверенного диапазона, — [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий). **Изменения в версии 2.18 (платформа 8.3.25):** @@ -1742,7 +1742,7 @@ XML-элемент: ``. Трёхуровневая вложенно ### 26.2. Стабильные элементы -Между версиями 8.3.20 → 8.3.24 → 8.3.25 → 8.3.26 → 8.3.27: +Между версиями 8.3.24 → 8.3.25 → 8.3.26 → 8.3.27: - Структура каталогов **без изменений** - Пространства имён **без изменений** - UUID объектов **сохраняются** diff --git a/docs/1c-configuration-spec.md b/docs/1c-configuration-spec.md index 74de792e..67839a08 100644 --- a/docs/1c-configuration-spec.md +++ b/docs/1c-configuration-spec.md @@ -1,9 +1,9 @@ # Спецификация корневой структуры конфигурации 1С Формат: XML-выгрузка конфигурации 1С:Предприятие 8.3 (Конфигуратор → Конфигурация → Выгрузить конфигурацию в файлы). -Версии формата: `2.17` (платформа 8.3.20–8.3.24), `2.18` (8.3.25), `2.19` (8.3.26), `2.20` (8.3.27+). +Проверенный диапазон версий формата: `2.17` (платформа 8.3.24) … `2.21` (8.5). Полная лестница — [§7.1](#71-лестница-версий). -Источники: выгрузки Бухгалтерия предприятия (платформы 8.3.20, 8.3.24, 8.3.27), ERP 2 (8.3.24). +Источники: выгрузки Бухгалтерия предприятия (платформы 8.3.24–8.3.27), ERP 2 (8.3.24), УНФ (8.5.1). > **Связанные спецификации:** > - Объекты метаданных — [1c-config-objects-spec.md](1c-config-objects-spec.md) @@ -1000,22 +1000,31 @@ ChildObjects содержат `IntegrationServiceChannel` (каналы) — inl --- -## 7. Различия версий формата 2.17 → 2.18 → 2.19 → 2.20 +## 7. Различия версий формата 2.17 → 2.18 → 2.19 → 2.20 → 2.21 ### 7.1. Лестница версий -Версию формата задаёт **платформа, которой выгружают**; от режима совместимости конфигурации она не зависит. Промежуточных версий не пропускается: +Версию формата задаёт **платформа, которой выгружают**; от режима совместимости конфигурации она не зависит. Версия меняется **каждым релизом платформы**, промежуточных не пропускается: -| Платформа | Версия формата | -|-----------|----------------| -| 8.3.20–8.3.24 | `2.17` | -| 8.3.25 | `2.18` | -| 8.3.26 | `2.19` | -| 8.3.27 | `2.20` | +| Платформа | Версия формата | Замерено | +|-----------|----------------|----------| +| 8.3.20 | `2.13` | да | +| 8.3.21 | `2.14` | нет | +| 8.3.22 | `2.15` | нет | +| 8.3.23 | `2.16` | по issue #63 | +| 8.3.24 | `2.17` | да | +| 8.3.25 | `2.18` | да | +| 8.3.26 | `2.19` | да | +| 8.3.27 | `2.20` | да | +| 8.5.1 | `2.21` | да | + +«Замерено» = создана пустая ИБ этой платформой и выгружена ею же; результат прочитан из `ConfigDumpInfo.xml` и корня `Configuration.xml`. Строки «нет» — интерполяция по шагу лестницы: платформы 8.3.21 и 8.3.22 в наличии не было. Версия `2.16` подтверждена сторонним сообщением (issue #63), а не собственным замером. + +**Проверенный диапазон навыков — `2.17`–`2.21`.** Ниже 2.17 навыки работать не запрещают, но и не обещают: `*-init` выпустят скаффолд с предупреждением, валидаторы отметят версию как непроверенную. Дельты форматов 2.13–2.16 не изучались. ```xml - + ``` ### 7.2. Что появилось в каждой версии @@ -1025,9 +1034,14 @@ ChildObjects содержат `IntegrationServiceChannel` (каналы) — inl | `2.18` | `TypeReductionMode` у стандартных реквизитов и измерений регистров сведений; `TextToSpeech` в `UsedMobileApplicationFunctionalities`; три редких свойства форм (`ViewModeApplicationOnSetReportResult`, `ReportResultViewMode`, `UseForFoldersAndItems`) | | `2.19` | Новых тегов нет. Роли перестали писать право, совпадающее с `setForNewObjects` | | `2.20` | `LineNumberLength` у табличных частей | +| `2.21` | Пространство имён `xmlns:pal` в шапке; `Color` у значений перечислений; `AuxiliaryVariantForm`; `UseInInterfaceCompatibilityMode`; блок свойств интерфейса 8.5 в `Configuration.xml` (`MainClientApplicationWindowInterfaceVariant`, `ClientApplicationTheme`, `ClientApplicationWindowsOpenVariant`, `Version85InterfaceMigrationMode`, `Caption`/`ShortCaption`, восемь `Auxiliary*Form`) | + +Дельта вниз от `2.17` измерена только в одну точку: пустая конфигурация `2.13` (8.3.20) не содержит `AllowedIncomingShareRequestTypes`, `DatabaseTablespacesUseMode` и `DefaultReportAppearanceTemplate`. На какой именно ступени 2.14–2.17 они появились — не установлено, поэтому в реестр «тег → минимальная версия» (`meta-validate`, проверка 18) они не внесены. Три свойства форм — не новые возможности, а изменение **дефолта эмиссии**: платформа 8.3.24 их принимает и сохраняет при роундтрипе, просто не пишет сама. `TypeReductionMode`, наоборот, свойство новое — 8.3.24 молча отбраковывает его при загрузке («Свойство не входит в состав объекта метаданных», при этом exit 0). +`TextToSpeech` — третья, самая жёсткая категория: на 8.3.24 его присутствие роняет загрузку («Ошибка XDTO в файле - Configuration.xml, при чтении свойства»), а не отбраковывается молча. Это последняя, 38-я запись `UsedMobileApplicationFunctionalities` (в `2.17` их 37); значение значимое — `true` переживает роундтрип. Пропуск тега на `2.18`+ ошибкой не является, но платформа допишет его со значением `false` и роундтрип разойдётся. Замерено выгрузками пустой ИБ шести платформ и роликами загрузки на 8.3.24/8.3.25. + ### 7.3. Configuration.xml — Properties Набор свойств Properties **идентичен** во всех версиях. `ConfigurationExtensionCompatibilityMode` платформа при выгрузке подставляет **свой собственный** (8.3.25 пишет `Version8_3_25`, 8.3.27 — `Version8_3_27`) даже если конфигурация не менялась, — при диффе двух дампов это выглядит как правка конфигурации, но ею не является. diff --git a/docs/1c-form-spec.md b/docs/1c-form-spec.md index 88d286d1..1793f2cf 100644 --- a/docs/1c-form-spec.md +++ b/docs/1c-form-spec.md @@ -182,7 +182,7 @@ CommonForms регистрируются в `Configuration.xml`: ``` -Все 17 namespace-деклараций **идентичны** во всех формах конфигурации. Атрибут `version` одинаков во всей выгрузке и определяется платформой (`2.17` для 8.3.20–8.3.24, далее `2.18` / `2.19` / `2.20`); примеры ниже приведены для `2.17`. +Все 17 namespace-деклараций **идентичны** во всех формах конфигурации. Атрибут `version` одинаков во всей выгрузке и определяется платформой выгрузки — по одной версии на релиз (см. [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий)); примеры ниже приведены для `2.17`. ### Назначение namespace-префиксов diff --git a/docs/1c-role-spec.md b/docs/1c-role-spec.md index 8486ecab..0efd7a6e 100644 --- a/docs/1c-role-spec.md +++ b/docs/1c-role-spec.md @@ -1,6 +1,6 @@ # Спецификация формата ролей 1С:Предприятия 8.3 -Полное описание XML-формата ролей в выгрузке конфигурации. Версии формата: 2.17 (платформа 8.3.20–8.3.24), 2.18 (8.3.25), 2.19 (8.3.26), 2.20 (8.3.27+). Структура идентична; отличается атрибут `version`, а с 2.19 — ещё и набор выгружаемых прав (см. «Версии формата»). +Полное описание XML-формата ролей в выгрузке конфигурации. Проверенный диапазон версий формата: 2.17 (платформа 8.3.24) … 2.21 (8.5); полная лестница — [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий). Структура идентична; отличается атрибут `version`, а с 2.19 — ещё и набор выгружаемых прав (см. «Версии формата»). ## Файловая структура @@ -838,11 +838,13 @@ RLS применяется к правам `Read`, `Update`, `Insert`, `Delete` | Платформа | version (метаданные) | version (Rights.xml) | Изменения | |-----------|:--------------------:|:--------------------:|-----------| -| 8.3.20 | 2.17 | 2.17 | Базовая | -| 8.3.24 | 2.17 | 2.17 | Без изменений | +| 8.3.24 | 2.17 | 2.17 | Базовая (нижняя граница проверенного диапазона) | | 8.3.25 | 2.18 | 2.18 | Только номер версии | | 8.3.26 | 2.19 | 2.19 | Право, совпадающее с `setForNewObjects`, больше не пишется (см. ниже) | | 8.3.27 | 2.20 | 2.20 | Только номер версии | +| 8.5.1 | 2.21 | 2.21 | Только номер версии | + +Полная лестница платформа → версия формата, включая ступени ниже проверенного диапазона, — [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий). Начиная с `2.19` платформа **опускает право, значение которого совпадает с ``** в шапке `Rights.xml`: роль с `setForNewObjects=true` теряет из выгрузки права со значением `true`, роль с `false` — со значением `false`. Возможности не удалялись: право отсутствует в выгрузке, но действует по умолчанию роли. Структура файла при этом не менялась. diff --git a/docs/1c-spreadsheet-spec.md b/docs/1c-spreadsheet-spec.md index dd471e61..1f154e1f 100644 --- a/docs/1c-spreadsheet-spec.md +++ b/docs/1c-spreadsheet-spec.md @@ -555,11 +555,11 @@ pictureSizeMode · picHorizontalAlignment · picVerticalAlignment · textPositio ## Совместимость версий платформы -Проведено сравнение выгрузок конфигурации «Бухгалтерия предприятия 3.0» на трёх версиях платформы: 8.3.20, 8.3.24, 8.3.27. +Проведено сравнение выгрузок конфигурации «Бухгалтерия предприятия 3.0» на версиях платформы 8.3.24, 8.3.25, 8.3.26, 8.3.27. ### Template.xml (табличный документ) -Содержимое `Template.xml` **побайтно идентично** на всех трёх версиях. Формат табличного документа стабилен — пространства имён, набор тегов и структура не менялись между 8.3.20 и 8.3.27. +Содержимое `Template.xml` **побайтно идентично** на всех четырёх выгрузках. Формат табличного документа стабилен — пространства имён, набор тегов и структура не менялись между 8.3.24 и 8.3.27. ### Метаданные (version в MetaDataObject) @@ -567,15 +567,17 @@ pictureSizeMode · picHorizontalAlignment · picVerticalAlignment · textPositio | Платформа | version | |-----------|---------| -| 8.3.20 | 2.17 | | 8.3.24 | 2.17 | | 8.3.25 | 2.18 | | 8.3.26 | 2.19 | | 8.3.27 | 2.20 | +| 8.5.1 | 2.21 | + +Полная лестница, включая ступени ниже проверенного диапазона, — [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий). ### Form.xml (управляемая форма) -Содержимое `Form.xml` идентично между 8.3.20 и 8.3.24. Дальше различается **только** атрибут `version` в корневом элементе `
` (`2.17` → `2.18` → `2.19` → `2.20` по платформам). Пространства имён и структура не изменились. +В пределах проверенного диапазона содержимое `Form.xml` различается **только** атрибутом `version` в корневом элементе `` (`2.17` → `2.18` → `2.19` → `2.20` по платформам). Структура не менялась; в `2.21` добавилось пространство имён `xmlns:pal`. ### BSL-модули diff --git a/docs/1c-subsystem-spec.md b/docs/1c-subsystem-spec.md index 8e2c6e39..dabe7d87 100644 --- a/docs/1c-subsystem-spec.md +++ b/docs/1c-subsystem-spec.md @@ -1,9 +1,9 @@ # Спецификация формата XML подсистем и командного интерфейса 1С Формат: XML-выгрузка конфигурации 1С:Предприятие 8.3 (Конфигуратор → Конфигурация → Выгрузить конфигурацию в файлы). -Версии формата: `2.17` (платформа 8.3.20–8.3.24), `2.18` (8.3.25), `2.19` (8.3.26), `2.20` (8.3.27+). +Проверенный диапазон версий формата: `2.17` (платформа 8.3.24) … `2.21` (8.5); полная лестница — [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий). -Источники: выгрузки Бухгалтерия предприятия (платформы 8.3.20, 8.3.24, 8.3.27), ERP 2 (8.3.24). +Источники: выгрузки Бухгалтерия предприятия (платформы 8.3.24–8.3.27), ERP 2 (8.3.24). > **Связанные спецификации:** > - Корневая структура конфигурации — [1c-configuration-spec.md](1c-configuration-spec.md) @@ -883,9 +883,9 @@ CommandGroup.<ИмяГруппы> ## 10. Различия версий формата -| Аспект | `2.17` (8.3.20–8.3.24) | `2.18`–`2.20` (8.3.25–8.3.27) | +| Аспект | `2.17` (8.3.24) | `2.18`–`2.21` (8.3.25–8.5) | |---|---|---| -| Атрибут `version` | `2.17` | `2.18` / `2.19` / `2.20` по платформе | +| Атрибут `version` | `2.17` | `2.18` / `2.19` / `2.20` / `2.21` по платформе | | BOM (UTF-8 BOM) | Нет | Да (EF BB BF) | | Набор элементов | Идентичный | Идентичный | | Набор свойств подсистемы | Идентичный | Идентичный | diff --git a/docs/1c-xdto-spec.md b/docs/1c-xdto-spec.md index 4484c215..8484287f 100644 --- a/docs/1c-xdto-spec.md +++ b/docs/1c-xdto-spec.md @@ -1,7 +1,7 @@ # Спецификация формата XML пакетов XDTO 1С Формат: XML-выгрузка конфигурации 1С:Предприятие 8.3 (Конфигуратор → Конфигурация → Выгрузить конфигурацию в файлы). -Версии формата: `2.17` (платформа 8.3.20–8.3.24), `2.18` (8.3.25), `2.19` (8.3.26), `2.20` (8.3.27+). +Проверенный диапазон версий формата: `2.17` (платформа 8.3.24) … `2.21` (8.5); полная лестница — [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий). Источники: выгрузки Бухгалтерия предприятия (8.3.24), ERP 2 (8.3.24) — 760 пакетов.