mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-23 02:35:54 +03:00
Ишью #58: сводка не показывала владельца подчинённого справочника, и код, написанный по ней, падал на Записать(). Владелец оказался частным случаем: шапка «Код(9) | Наименование(100)» смешивала свойства объекта с полями и не давала по полям ни типа, ни обязательности. По acc_8.3.24 из 690 справочников 23 имеют числовой код, 122 — фиксированной длины, 426 — вовсе без кода; всё это было невидимо. У ПВХ, планов счетов и обмена, бизнес-процессов и задач шапки не было вообще — включая ТипЗначения у ПВХ. Поля вынесены в блок «Стандартные реквизиты» на языке блока «Реквизиты» (имя — тип — [флаги]), в шапке остались свойства объекта. В overview показываются те, что нельзя вывести из остального вывода: Владелец, Код, Наименование, Дата, Номер, ТипЗначения. Ссылка, ПометкаУдаления, Родитель, ЭтоГруппа следуют из типа объекта и строки «Иерархический» — они в full. Обязательность берётся из StandardAttributes/FillChecking. Блок в XML опционален (meta-dsl-spec §7.1.1), поэтому при его отсутствии действует профиль платформенных дефолтов, синхронный с meta-compile — иначе объекты, созданные meta-compile, теряли бы флаг, то есть ровно кейс из ишью. Составной ТипЗначения ПВХ доходит до 151 типа и сворачивается в счётчик «Составной (110)»; полный состав даёт drill-down -Name ТипЗначения, о чём сообщает единственная строка в конце вывода. brief получил строку «Подчинён: …» — факт структуры без обещаний про обязательность, которых brief выполнить не может. Проверено сравнением с эталонным прогоном по 4768 объектам acc/erp/ut/unf: все расхождения классифицированы, необъяснённых нет, ненулевых кодов возврата нет. Владелец появился у 242 объектов, числовой код — у 56. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
90 lines
5.3 KiB
Markdown
90 lines
5.3 KiB
Markdown
---
|
||
name: meta-info
|
||
description: Анализ структуры объекта метаданных 1С из XML-выгрузки — реквизиты, табличные части, формы, движения, типы. Используй для изучения структуры объектов (вместо чтения XML-файлов напрямую) и как подготовительный шаг при написании запросов и кода, работающего с объектами
|
||
argument-hint: <ObjectPath> [-Mode overview|brief|full] [-Name <элемент>]
|
||
allowed-tools:
|
||
- Bash
|
||
- Read
|
||
- Glob
|
||
---
|
||
|
||
# /meta-info — Структура объекта метаданных 1С
|
||
|
||
Читает XML объекта метаданных из выгрузки конфигурации 1С и выводит компактное описание структуры.
|
||
|
||
## Параметры и команда
|
||
|
||
| Параметр | Описание |
|
||
|----------|----------|
|
||
| `ObjectPath` | Путь к XML-файлу объекта или каталогу (авто-резолв `<name>/<name>.xml`) |
|
||
| `Mode` | Режим: `overview` (default), `brief`, `full` |
|
||
| `Name` | Drill-down по имени элемента (реквизит, ТЧ, значение перечисления, шаблон URL, операция) |
|
||
| `Limit` / `Offset` | Пагинация (по умолчанию 150 строк) |
|
||
| `OutFile` | Записать результат в файл (UTF-8 BOM) |
|
||
|
||
```powershell
|
||
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/meta-info.ps1" -ObjectPath "<путь>"
|
||
```
|
||
|
||
## Три режима
|
||
|
||
| Режим | Что показывает |
|
||
|---|---|
|
||
| `overview` *(default)* | Заголовок + ключевые свойства + структура без раскрытия деталей |
|
||
| `brief` | Всё одной-двумя строками: имена полей, счётчики |
|
||
| `full` | Всё раскрыто: колонки ТЧ, список источников подписки, движения, формы |
|
||
|
||
`-Name` — drill-down: раскрыть конкретный элемент объекта (ТЧ, реквизит, стандартный реквизит,
|
||
шаблон URL, операцию веб-сервиса). Составной тип в сводке свёрнут в счётчик — полный список
|
||
типов даёт drill-down: `-Name ТипЗначения` у ПВХ, `-Name Владелец` у подчинённого справочника.
|
||
|
||
## Поддерживаемые типы (23)
|
||
|
||
**Ссылочные:** Справочник, Документ, Перечисление, Бизнес-процесс, Задача, План обмена, План счетов, ПВХ, ПВР
|
||
**Регистры:** Регистр сведений, Регистр накопления, Регистр бухгалтерии, Регистр расчёта
|
||
**Сервисные:** Отчёт, Обработка, HTTP-сервис, Веб-сервис, Общий модуль, Регламентное задание, Подписка на событие
|
||
**Прочие:** Константа, Журнал документов, Определяемый тип
|
||
|
||
## Примеры
|
||
|
||
```powershell
|
||
# Справочник — overview
|
||
... -ObjectPath Catalogs/Валюты/Валюты.xml
|
||
|
||
# Документ — полная сводка с колонками ТЧ, движениями, формами
|
||
... -ObjectPath Documents/АвансовыйОтчет/АвансовыйОтчет.xml -Mode full
|
||
|
||
# Регистр сведений — краткая сводка
|
||
... -ObjectPath InformationRegisters/КурсыВалют/КурсыВалют.xml -Mode brief
|
||
|
||
# Drill-down в ТЧ документа
|
||
... -ObjectPath Documents/АвансовыйОтчет/АвансовыйОтчет.xml -Name Товары
|
||
|
||
# Drill-down в реквизит
|
||
... -ObjectPath Catalogs/Валюты/Валюты.xml -Name ОсновнаяВалюта
|
||
|
||
# Общий модуль — флаги контекста и повторное использование
|
||
... -ObjectPath CommonModules/ОбщегоНазначения/ОбщегоНазначения.xml
|
||
|
||
# HTTP-сервис — шаблоны URL и методы
|
||
... -ObjectPath HTTPServices/ExternalAPI/ExternalAPI.xml
|
||
|
||
# HTTP-сервис — drill-down в шаблон URL
|
||
... -ObjectPath HTTPServices/ExternalAPI/ExternalAPI.xml -Name АктуальныеЗадачи
|
||
|
||
# Веб-сервис — операции с параметрами
|
||
... -ObjectPath WebServices/EnterpriseDataUpload_1_0_1_1/EnterpriseDataUpload_1_0_1_1.xml
|
||
|
||
# Веб-сервис — drill-down в операцию
|
||
... -ObjectPath WebServices/EnterpriseDataUpload_1_0_1_1/EnterpriseDataUpload_1_0_1_1.xml -Name TestConnection
|
||
|
||
# Подписка на событие — full раскрывает список источников
|
||
... -ObjectPath EventSubscriptions/ПолныйРегистрацияУдаления/ПолныйРегистрацияУдаления.xml -Mode full
|
||
|
||
# Регламентное задание
|
||
... -ObjectPath ScheduledJobs/АвтоматическоеЗакрытиеМесяца/АвтоматическоеЗакрытиеМесяца.xml
|
||
|
||
# Определяемый тип
|
||
... -ObjectPath DefinedTypes/GLN/GLN.xml
|
||
```
|