mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-15 22:35:23 +03:00
1. Внешний .sql теперь именуется <outputBasename>-<datasetName>.sql
(раньше просто <datasetName>.sql). Защищает от коллизий при
batch-decompile нескольких отчётов в одну папку: имена dataset'ов
часто совпадают ("НаборДанных1" — почти везде).
В JSON: "query": "@<outputBasename>-<datasetName>.sql".
2. ConvertTo-CompactJson: Try-InlineJson — пытается сериализовать
container на одну строку. Если результат + текущий indent ≤120
chars → inline; иначе multi-line. Применяется и к объектам и к
массивам (включая массивы из примитивов — раньше они всегда были
inline, что давало гигантские строки на длинных fields).
Примеры inline (объекты ≤120 chars):
- { "value": "B", "style": "header" }
- { "name": "Имя", "expression": "Имя" }
Длинные объекты и массивы — multi-line как раньше.
v0.19 → v0.20.
30 lines
1.3 KiB
JSON
30 lines
1.3 KiB
JSON
{
|
|
"dataSets": [
|
|
{
|
|
"name": "Тест",
|
|
"query": "ВЫБРАТЬ * ИЗ Справочник.Номенклатура",
|
|
"fields": ["Цена: decimal(15,2)", "Закупка: decimal(15,2)"]
|
|
}
|
|
],
|
|
"calculatedFields": [
|
|
"Маржа = Цена - Закупка",
|
|
"Наценка [Наценка, %]: decimal(10,2) = Маржа / Закупка * 100",
|
|
"Служебное: string = \"\" #noField #noFilter #noGroup #noOrder"
|
|
],
|
|
"totalFields": ["Цена: Сумма", "Маржа: Сумма(Цена - Закупка)"],
|
|
"parameters": [
|
|
"Период [Отчетный период]: StandardPeriod = LastMonth @autoDates",
|
|
"Организация: CatalogRef.Организации",
|
|
"СписокДокументов: CatalogRef.Документы @valueList",
|
|
"СлужебныйПар: string @hidden",
|
|
{
|
|
"name": "ПорядокОкругления",
|
|
"type": "EnumRef.Округления",
|
|
"value": "Перечисление.Округления.Окр1",
|
|
"availableValues": [
|
|
{ "value": "Перечисление.Округления.Окр1_00", "presentation": "руб. коп" },
|
|
{ "value": "Перечисление.Округления.Окр1", "presentation": "руб." }
|
|
]
|
|
}
|
|
]
|
|
} |