Files
cc-1c-skills/.claude/skills/cf-edit/reference.md
T
Nick Shirokov 02e9053d00 feat(cf-validate,cfe-validate,epf-validate): поддержка платформы 8.5 (issue #13)
- `CompatibilityMode`, `ConfigurationExtensionCompatibilityMode`: добавлен `Version8_5_1`
- `InterfaceCompatibilityMode`: расширен до полного списка из 7 значений (Version8_2, Version8_2EnableTaxi, Taxi, TaxiEnableVersion8_2, TaxiEnableVersion8_5, Version8_5EnableTaxi, Version8_5) — заодно учтены недостающие 8.2-значения
- Принимается `version="2.21"` в заголовке MetaDataObject
- cf-edit/reference.md: обновлена таблица допустимых значений

Genrators (form-compile, form-add, cfe-borrow и др.) уже подхватывают версию формата через Detect-FormatVersion — не трогаем.

Closes #13

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-17 14:08:27 +03:00

4.0 KiB
Raw Blame History

cf-edit — справочник операций

modify-property

Свойства для редактирования:

Скалярные

Name, Version, Vendor, Comment, NamePrefix, UpdateCatalogAddress

LocalString (многоязычные)

Synonym, BriefInformation, DetailedInformation, Copyright, VendorInformationAddress, ConfigurationInformationAddress

Enum

Свойство Допустимые значения
CompatibilityMode Version8_3_20 ... Version8_3_28, Version8_5_1, DontUse
ConfigurationExtensionCompatibilityMode то же
DefaultRunMode ManagedApplication, OrdinaryApplication, Auto
ScriptVariant Russian, English
DataLockControlMode Managed, Automatic, AutomaticAndManaged
ObjectAutonumerationMode NotAutoFree, AutoFree
ModalityUseMode DontUse, Use, UseWithWarnings
SynchronousPlatformExtensionAndAddInCallUseMode DontUse, Use, UseWithWarnings
InterfaceCompatibilityMode Version8_2, Version8_2EnableTaxi, Taxi, TaxiEnableVersion8_2, TaxiEnableVersion8_5, Version8_5EnableTaxi, Version8_5
DatabaseTablespacesUseMode DontUse, Use
MainClientApplicationWindowMode Normal, Fullscreen, Kiosk

Ref

DefaultLanguage — значение вида Language.Русский

Формат batch

"Version=1.0.0.1 ;; Vendor=Фирма 1С ;; Synonym=Тестовая конфигурация"

add-childObject / remove-childObject

Формат: Type.Name — XML-тип и имя объекта через точку.

Важно про add-childObject: операция регистрирует в <ChildObjects> Configuration.xml только объект, файл которого уже существует на диске (например Catalogs/Товары.xml). Если файла нет — скрипт падает с exit 1 и подсказкой. Для создания нового объекта используй профильный навык — /meta-compile (Catalog, Document, Enum, Report, регистры и т.д.), /role-compile (Role), /subsystem-compile (Subsystem). Они создают файл И регистрируют его в Configuration.xml за один вызов.

Когда add-childObject всё-таки нужен: откатили Configuration.xml (или перезаписали из выгрузки БД), а файлы объектов остались — нужно восстановить ссылки в <ChildObjects>.

При добавлении объект вставляется в каноническую позицию:

  1. Находит последний элемент того же типа → вставляет после
  2. Если тип отсутствует → находит последний элемент предшествующего типа → вставляет после
  3. Внутри одного типа — алфавитный порядок

Batch: "Catalog.Товары ;; Document.Заказ ;; Enum.ВидыОплат"

add-defaultRole / remove-defaultRole / set-defaultRoles

Имя роли: ПолныеПрава или Role.ПолныеПрава (префикс Role. добавляется автоматически).

set-defaultRoles полностью заменяет список ролей.

DefinitionFile (JSON)

[
  { "operation": "modify-property", "value": "Version=2.0.0.1 ;; Vendor=Test" },
  { "operation": "add-childObject", "value": "Catalog.Товары ;; Document.Заказ" },
  { "operation": "add-defaultRole", "value": "ПолныеПрава" }
]

Авто-валидация

После сохранения автоматически запускается cf-validate (если не указан -NoValidate).