Skip to content
Back to skills

Skd Edit

ASecurity

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

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 26, 2026
toolsshellbashsql

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned September 26, 2026

npx -y skills add defin85/1c-runner-agnostic-template --skill skd-edit --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Skd Edit?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Skd Edit
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/defin85-skd-edit-534d5db5/badge)](https://www.skillsdirectory.com/skills/defin85-skd-edit-534d5db5)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: skd-edit
description: Точечное редактирование схемы компоновки данных 1С (СКД). Используй когда нужно модифицировать существующую СКД — добавить поля, итоги, фильтры, параметры, изменить текст запроса
argument-hint: <TemplatePath> -Operation <op> -Value <value>
allowed-tools:
  - Bash
  - Read
  - Write
  - Glob
---

# /skd-edit — точечное редактирование СКД (Template.xml)

Атомарные операции модификации существующей схемы компоновки данных: добавление, удаление и модификация полей, итогов, фильтров, параметров, настроек варианта, управление структурой, замена запроса.

## Параметры и команда

| Параметр | Описание |
|----------|----------|
| `TemplatePath` | Путь к Template.xml (или к папке — автодополнение Ext/Template.xml) |
| `Operation` | Операция (см. список ниже) |
| `Value` | Значение операции (shorthand-строка или текст запроса) |
| `DataSet` | (опц.) Имя набора данных (умолч. первый) |
| `Variant` | (опц.) Имя варианта настроек (умолч. первый) |
| `NoSelection` | (опц.) Не добавлять поле в selection варианта |

```powershell
powershell.exe -NoProfile -File .claude/skills/skd-edit/scripts/skd-edit.ps1 -TemplatePath "<path>" -Operation <op> -Value "<value>"
```

## Пакетный режим (batch)

Несколько значений в одном вызове через разделитель `;;`:

```powershell
-Operation add-field -Value "Цена: decimal(15,2) ;; Количество: decimal(15,3) ;; Сумма: decimal(15,2)"
```

Работает для всех операций кроме `set-query`, `set-structure` и `add-dataSet`.

## Операции

### add-field — добавить поле в набор данных

Shorthand: `"Имя [Заголовок]: тип @роль #ограничение"`.

```
"Цена: decimal(15,2)"
"Организация [Орг-ция]: CatalogRef.Организации @dimension"
"Служебное: string #noFilter #noOrder"
```

Поле добавляется в набор и в selection варианта (если нет `-NoSelection`). Дубликат dataPath — предупреждение, пропуск.

### add-total — добавить итог

```
"Цена: Среднее"
"Стоимость: Сумма(Кол * Цена)"
```

### add-calculated-field — добавить вычисляемое поле

Shorthand: `"Имя [Заголовок]: тип = Выражение"`.

```
"Маржа = Продажа - Закупка"
"Наценка [Наценка, %]: decimal(10,2) = Маржа / Закупка * 100"
```

Также добавляется в selection варианта.

### add-parameter — добавить параметр

```
"Период: StandardPeriod = LastMonth @autoDates"
"Организация: CatalogRef.Организации"
```

`@autoDates` генерирует `ДатаНачала` и `ДатаОкончания` автоматически.

### add-filter — добавить фильтр в вариант

Shorthand: `"Поле оператор значение @флаги"`. Флаги: `@off`, `@user`, `@quickAccess`, `@normal`, `@inaccessible`.

```
"Номенклатура = _ @off @user"
"Дата >= 2024-01-01T00:00:00"
"Статус filled"
```

### add-dataParameter — добавить параметр данных в вариант

Shorthand: `"Имя [= значение] @флаги"`.

```
"Период = LastMonth @user"
"Организация @off @user"
```

### add-order — добавить сортировку

Shorthand: `"Поле [desc]"`. По умолчанию asc. `Auto` — авто-элемент.

```
"Количество desc"
"Auto"
```

### add-selection — добавить элемент выборки

```
"Номенклатура"
"Auto"
```

### add-dataSetLink — добавить связь наборов данных

Shorthand: `"Источник > Приёмник on ВырИсточника = ВырПриёмника [param Имя]"`.

```
"Набор1 > Набор2 on Поле1 = Поле2"
"Набор1 > Набор2 on Поле1 = Поле2 [param Связь]"
```

### add-dataSet — добавить набор данных

Shorthand: `"Имя: ТЕКСТ_ЗАПРОСА"` или `"ТЕКСТ_ЗАПРОСА"` (авто-имя `НаборДанныхN`).

```
"Доп: ВЫБРАТЬ 1 КАК Тест"
"ВЫБРАТЬ Ссылка ИЗ Справочник.Номенклатура"
"Продажи: @queries/sales.sql"
```

`dataSource` берётся из первого существующего. Дубликат имени — предупреждение, пропуск. Не поддерживает пакетный режим (запрос может содержать `;;`).

### add-variant — добавить вариант настроек

Shorthand: `"Имя [Представление]"`. Представление опционально, по умолчанию = имя.

```
"Детальный"
"Детальный [Детальный отчёт]"
```

Создаёт вариант с Auto selection + detail group. Дубликат имени — предупреждение, пропуск.

### add-conditionalAppearance — добавить условное оформление

Shorthand: `"Параметр = значение [when условие] [for Поле1, Поле2]"`. Блок `when` — синтаксис `add-filter` (Поле оператор значение).

```
"ЦветТекста = web:Red when Сумма < 0"
"ЦветФона = web:LightGreen when Статус = Одобрен for Статус"
"МинимальнаяШирина = 50 for Организация"
"Формат = ЧДЦ=2 for Цена, Сумма"
```

Типы значений (автодетект): `web:*`/`style:*`/`win:*` → цвет, `true`/`false` → boolean, иначе строка.

### set-query — заменить текст запроса

Не поддерживает пакетный режим. Value — полный текст запроса или `@path/to/file.sql` (ссылка на внешний файл). Путь разрешается относительно Template.xml, затем CWD.

### patch-query — точечная замена в тексте запроса

Shorthand: `"старое => новое"`. Заменяет все вхождения подстроки. Поддерживает пакетный режим и `-DataSet`.

```
"СубконтоДт1) В => СубконтоКт1) В"
"ЛЕВОЕ СОЕДИНЕНИЕ => ВНУТРЕННЕЕ СОЕДИНЕНИЕ"
```

### set-outputParameter — установить параметр вывода

```
"Заголовок = Мой отчёт"
"ВыводитьЗаголовок = true"
```

Если параметр уже существует — заменяет значение.

### set-structure — установить структуру варианта

Shorthand: `"Поле1 > Поле2 > details"`. `details`/`детали` — детальные записи. Заменяет всю структуру. Не поддерживает пакетный режим.

```
"Организация > Номенклатура > details"
"details"
```

### modify-field — изменить существующее поле

Тот же shorthand что и `add-field`. Находит по dataPath, объединяет свойства (непустые переопределяют), сохраняет позицию.

```
"Цена [Цена USD]: decimal(10,4) @dimension"
```

### modify-filter — изменить существующий фильтр

Тот же shorthand что и `add-filter`. Находит по полю, обновляет оператор/значение/флаги.

### modify-dataParameter — изменить параметр данных

Тот же shorthand что и `add-dataParameter`. Находит по имени, обновляет значение/флаги.

### remove-* и clear-*

| Операция | Value | Действие |
|----------|-------|----------|
| `remove-field` | dataPath | Удаляет поле из набора + из selection варианта |
| `remove-total` | dataPath | Удаляет итог |
| `remove-calculated-field` | dataPath | Удаляет вычисляемое поле + из selection |
| `remove-parameter` | name | Удаляет параметр |
| `remove-filter` | поле | Удаляет первый фильтр с указанным полем |
| `clear-selection` | `*` | Очищает все элементы selection |
| `clear-order` | `*` | Очищает все элементы order |
| `clear-filter` | `*` | Очищает все элементы filter |

## Верификация

```
/skd-validate <TemplatePath>    — валидация структуры после редактирования
/skd-info <TemplatePath>        — визуальная сводка
```

Files in this skill

  • SKILL.md9.6 KB
  • scripts/skd-edit.ps172.2 KB
  • scripts/skd-edit.py77.1 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.