AgentStack
SKILL verified MIT Self-run

1c Form Edit

skill-desko77-claude-code-skills-1c-1c-form-edit · by Desko77

Добавление элементов, реквизитов и команд в существующую управляемую форму 1С. Используй когда нужно точечно модифицировать готовую форму

No reviews yet
0 installs
10 views
0.0% view→install

Install

$ agentstack add skill-desko77-claude-code-skills-1c-1c-form-edit

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of 1c Form Edit? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

/form-edit — Редактирование формы

Добавляет элементы, реквизиты и/или команды в существующий Form.xml. Автоматически выделяет ID из правильного пула, генерирует companion-элементы (ContextMenu, ExtendedTooltip, и др.) и обработчики событий.

Использование

/form-edit  

Параметры

| Параметр | Обязательный | Описание | |-----------|:------------:|----------------------------------| | FormPath | да | Путь к существующему Form.xml | | JsonPath | да | Путь к JSON с описанием добавлений |

Команда

powershell.exe -NoProfile -File skills/1c-form-edit/scripts/form-edit.ps1 -FormPath "" -JsonPath ""

JSON формат

{
  "into": "ГруппаШапка",
  "after": "Контрагент",
  "elements": [
    { "input": "Склад", "path": "Объект.Склад", "on": ["OnChange"] }
  ],
  "attributes": [
    { "name": "СуммаИтого", "type": "decimal(15,2)" }
  ],
  "commands": [
    { "name": "Рассчитать", "action": "РассчитатьОбработка" }
  ]
}

Расширения (extension-формы)

Для заимствованных форм (с ``) автоматически активируется extension-режим: ID начинаются с 1000000+. Доступны дополнительные секции:

{
  "formEvents": [
    { "name": "OnCreateAtServer", "handler": "Расш1_ПриСозданииПосле", "callType": "After" },
    { "name": "OnOpen", "handler": "Расш1_ПриОткрытии", "callType": "Before" }
  ],
  "elementEvents": [
    { "element": "Банк", "name": "OnChange", "handler": "Расш1_БанкПриИзменении", "callType": "Before" }
  ],
  "commands": [
    { "name": "Подбор", "action": "Расш1_ПодборПосле", "callType": "After" },
    { "name": "Запрос", "actions": [
      { "callType": "Before", "handler": "Расш1_ЗапросПеред" },
      { "callType": "After", "handler": "Расш1_ЗапросПосле" }
    ]}
  ],
  "elements": [
    { "input": "Поле", "path": "Объект.Поле", "on": [{ "event": "OnChange", "callType": "After" }] }
  ]
}

Позиционирование элементов

| Ключ | По умолчанию | Описание | |------|-------------|----------| | into | корневой ChildItems | Имя группы/таблицы/страницы, куда вставлять | | after | в конец | Имя элемента, после которого вставлять |

Типы элементов

Те же DSL-ключи, что в /form-compile:

| Ключ | XML тег | Companions | |------|---------|------------| | input | InputField | ContextMenu, ExtendedTooltip | | check | CheckBoxField | ContextMenu, ExtendedTooltip | | label | LabelDecoration | ContextMenu, ExtendedTooltip | | labelField | LabelField | ContextMenu, ExtendedTooltip | | group | UsualGroup | ExtendedTooltip | | table | Table | ContextMenu, AutoCommandBar, Search, ViewStatus | | pages | Pages | ExtendedTooltip | | page | Page | ExtendedTooltip | | button | Button | ExtendedTooltip |

Группы и таблицы поддерживают children/columns для вложенных элементов.

Кнопки: command и stdCommand

  • "command": "ИмяКоманды"Form.Command.ИмяКоманды
  • "stdCommand": "Close"Form.StandardCommand.Close
  • "stdCommand": "Товары.Add"Form.Item.Товары.StandardCommand.Add (стандартная команда элемента)

Допустимые события (on)

Компилятор предупреждает об ошибках в именах событий. Основные:

  • input: OnChange, StartChoice, ChoiceProcessing, Clearing, AutoComplete, TextEditEnd
  • check: OnChange
  • table: OnStartEdit, OnEditEnd, OnChange, Selection, BeforeAddRow, BeforeDeleteRow, OnActivateRow
  • label/picture: Click, URLProcessing
  • pages: OnCurrentPageChange
  • button: Click

Система типов (для attributes)

string, string(100), decimal(15,2), boolean, date, dateTime, CatalogRef.XXX, DocumentObject.XXX, ValueTable, DynamicList, Type1 | Type2 (составной).

Секции расширений

| Секция | Назначение | |--------|-----------| | formEvents | События уровня формы с callType (Before/After/Override) | | elementEvents | События на существующих элементах заимствованной формы | | callType на commands | callType на Action команды | | callType на on | callType на событиях новых элементов (объектный формат) |

Все extension-секции опциональны — без них навык работает как с обычными формами.

Workflow

  1. /form-info — посмотреть текущую структуру формы
  2. Создать JSON с описанием добавлений
  3. /form-edit — добавить в форму
  4. /form-validate — проверить корректность
  5. /form-info — убедиться что добавилось правильно

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.