- New skill /img-grid: overlays numbered grid on images to help
determine column proportions for MXL template generation
- Add "page" field to MXL DSL ("A4-landscape", "A4-portrait", or
number) that auto-calculates defaultWidth from column proportions
- Update DSL spec, mxl-compile SKILL.md, MXL guide, README
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
6.9 KiB
Табличный документ (MXL)
Навыки группы /mxl-* позволяют анализировать, создавать и модифицировать макеты табличных документов 1С — основной формат печатных форм в конфигурациях 1С:Предприятия.
Навыки
| Навык | Параметры | Описание |
|---|---|---|
/mxl-info |
<TemplatePath> или <ProcessorName> <TemplateName> |
Анализ структуры: области, параметры, наборы колонок |
/mxl-validate |
<TemplatePath> или <ProcessorName> <TemplateName> |
Валидация: индексы, ссылки, границы |
/mxl-compile |
<JsonPath> <OutputPath> |
Компиляция макета из JSON-определения в Template.xml |
/mxl-decompile |
<TemplatePath> [OutputPath] |
Декомпиляция Template.xml в JSON-определение |
Сценарии использования
Создание макета печатной формы с нуля
Вы описываете макет словами или через JSON DSL, Claude компилирует его в Template.xml.
> Создай макет накладной М-11: шапка с реквизитами организации и склада,
> таблица с колонками (номер, наименование, единица, количество, цена, сумма),
> итоговая строка, подписи.
Claude напишет JSON-определение с областями, параметрами и стилями, вызовет /mxl-compile для генерации XML, затем /mxl-validate и /mxl-info для проверки.
Рабочий цикл:
- Claude пишет JSON-определение макета
/mxl-compile→ Template.xml/mxl-validate→ проверка корректности/mxl-info→ верификация структуры (области, параметры)
Создание макета по изображению
Если есть скриншот или скан печатной формы, /img-grid поможет точно определить пропорции колонок.
> Вот изображение формы М-11. Создай макет по нему.
Рабочий цикл:
/img-grid→ изображение с пронумерованной сеткой- Claude считает координаты границ колонок по сетке
- Объединяет границы всех таблиц → базовая решётка
- Пишет JSON DSL с пропорциями
"Nx"и"page": "A4-landscape" /mxl-compileавтоматически вычисляет абсолютные ширины из пропорций и формата страницы/mxl-validate→/mxl-info→ проверка
Анализ существующего макета
Быстрый обзор структуры макета без чтения тысяч строк XML.
> Покажи структуру макета ПФ_MXL_М11
Claude вызовет /mxl-info и выведет области, параметры и наборы колонок. С флагом -WithText покажет ещё и текстовое содержимое ячеек (заголовки колонок, надписи).
Модификация существующего макета
Декомпиляция в JSON, правка, компиляция обратно.
> Добавь в макет М-11 колонку "Примечание"
Claude вызовет /mxl-decompile для получения JSON, добавит колонку в определение, вызовет /mxl-compile и /mxl-validate.
Рабочий цикл:
/mxl-decompile→ JSON из существующего Template.xml- Claude модифицирует JSON (добавляет области, меняет стили, параметры)
/mxl-compile→ обновлённый Template.xml/mxl-validate→ проверка
Ограничения: Этот сценарий подразумевает полную перегенерацию макета, а не точечную правку XML. Поэтому diff может показать больше изменений, чем фактическая доработка. Кроме того, DSL пока поддерживает не все конструкции табличного документа — для сложных макетов с рисунками, штрихкодами или нестандартным форматированием часть информации может быть потеряна при round-trip.
Валидация макета
Проверка структурной корректности после любых изменений.
> Проверь макет ПФ_MXL_М11
Claude вызовет /mxl-validate, который проверит индексы палитр, ссылки на наборы колонок, границы областей и другие структурные зависимости.
Примеры слеш-команд
> /mxl-info src/МояОбработка/Templates/ПФ_MXL_Накладная/Ext/Template.xml
> /mxl-info МояОбработка ПФ_MXL_Накладная
> /mxl-validate МояОбработка ПФ_MXL_Накладная
> /mxl-compile макет.json src/МояОбработка/Templates/ПФ_MXL_Накладная/Ext/Template.xml
> /mxl-decompile src/МояОбработка/Templates/ПФ_MXL_Накладная/Ext/Template.xml макет.json
Связь с EPF-навыками
Макет табличного документа — часть обработки. Типичный сценарий создания печатной формы:
/epf-init— создать обработку/epf-add-template— добавить макет SpreadsheetDocument (с именемПФ_MXL_...)/mxl-compile— заполнить макет содержимым из JSON-определения/epf-bsp-init— добавить регистрацию БСП с видом ПечатнаяФорма/epf-bsp-add-command— добавить команду печати/epf-build— собрать EPF
Спецификации
- Табличный документ (MXL) — XML-формат SpreadsheetDocument, совместимость версий
- MXL DSL — JSON-формат описания макета для
/mxl-compileи/mxl-decompile