mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-19 00:59:40 +03:00
02e9053d00
- `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>
68 lines
4.0 KiB
Markdown
68 lines
4.0 KiB
Markdown
# 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)
|
||
|
||
```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`).
|