mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-13 15:03:20 +03:00
feat(mxl-compile,mxl-decompile): columnStyles — оформление колонки
У ячейки есть style, у строки rowStyle, у колонки не было ничего — при том что
колонка ссылается в ту же палитру <format> и несёт те же свойства. В корпусе
ERP колонки используют шрифт (3006 форматов), выравнивание, рамки, скрытие и
прочее; всё это терялось при раундтрипе.
Колонка получает такой же именованный стиль: columnStyles рядом с columnWidths,
ключи той же грамматики диапазонов ("1", "2-8", "5,7,9"), значение — имя из
styles. Внутри columnSets тот же ключ. Формат колонки собирается из ширины и
свойств стиля: запись в палитре одна.
Шрифт по умолчанию колонке не навязываем — формат колонки без оформления это
ровно <width>, как пишет платформа.
Попутно два дефекта декомпилятора: стиль колонки не учитывался при отсечении
неиспользуемых стилей и пропадал целиком, а набор из одних неприметных свойств
(отступ, защита) получал зарезервированное имя default и тоже терялся.
На пилоте потери в категории colset[].col[].formatIndex упали с 86 до 39.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
c9e490bd25
commit
4e389d0ef1
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"name": "Стиль колонки — в документной раскладке и в columnSets",
|
||||
"input": {
|
||||
"columns": 5,
|
||||
"defaultWidth": 20,
|
||||
"fonts": {
|
||||
"default": { "face": "Arial", "size": 10 },
|
||||
"bold": { "face": "Arial", "size": 10, "bold": true }
|
||||
},
|
||||
"styles": {
|
||||
"по-центру": { "horizontalAlignment": "Center" },
|
||||
"скрытая": { "hidden": true },
|
||||
"жирная-с-фоном": { "font": "bold", "backColor": "#EBEBEB" }
|
||||
},
|
||||
"columnWidths": { "1": 30, "2-3": 15 },
|
||||
"columnStyles": { "1": "по-центру", "4": "скрытая" },
|
||||
"columnSets": {
|
||||
"таблица": {
|
||||
"columns": 3,
|
||||
"columnWidths": { "1": 12 },
|
||||
"columnStyles": { "2-3": "жирная-с-фоном" }
|
||||
}
|
||||
},
|
||||
"areas": [
|
||||
{
|
||||
"name": "Шапка",
|
||||
"rows": [
|
||||
{ "cells": [ { "col": 1, "span": 5, "text": "Заголовок" } ] }
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Таблица",
|
||||
"columnSet": "таблица",
|
||||
"rows": [
|
||||
{ "cells": [
|
||||
{ "col": 1, "param": "Код" },
|
||||
{ "col": 2, "param": "Имя" },
|
||||
{ "col": 3, "param": "Сумма" }
|
||||
]}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"params": { "outputPath": "Template.xml" },
|
||||
"validatePath": "Template.xml",
|
||||
"expect": { "files": ["Template.xml"] }
|
||||
}
|
||||
@@ -0,0 +1,156 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document xmlns="http://v8.1c.ru/8.2/data/spreadsheet" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<languageSettings>
|
||||
<currentLanguage>ru</currentLanguage>
|
||||
<defaultLanguage>ru</defaultLanguage>
|
||||
<languageInfo>
|
||||
<id>ru</id>
|
||||
<code>Русский</code>
|
||||
<description>Русский</description>
|
||||
</languageInfo>
|
||||
</languageSettings>
|
||||
<columns>
|
||||
<size>5</size>
|
||||
<columnsItem>
|
||||
<index>0</index>
|
||||
<column>
|
||||
<formatIndex>2</formatIndex>
|
||||
</column>
|
||||
</columnsItem>
|
||||
<columnsItem>
|
||||
<index>1</index>
|
||||
<column>
|
||||
<formatIndex>3</formatIndex>
|
||||
</column>
|
||||
</columnsItem>
|
||||
<columnsItem>
|
||||
<index>2</index>
|
||||
<column>
|
||||
<formatIndex>3</formatIndex>
|
||||
</column>
|
||||
</columnsItem>
|
||||
<columnsItem>
|
||||
<index>3</index>
|
||||
<column>
|
||||
<formatIndex>4</formatIndex>
|
||||
</column>
|
||||
</columnsItem>
|
||||
</columns>
|
||||
<columns>
|
||||
<id>01f06d2d-2103-3169-8cc8-32872f100129</id>
|
||||
<size>3</size>
|
||||
<columnsItem>
|
||||
<index>0</index>
|
||||
<column>
|
||||
<formatIndex>5</formatIndex>
|
||||
</column>
|
||||
</columnsItem>
|
||||
<columnsItem>
|
||||
<index>1</index>
|
||||
<column>
|
||||
<formatIndex>6</formatIndex>
|
||||
</column>
|
||||
</columnsItem>
|
||||
<columnsItem>
|
||||
<index>2</index>
|
||||
<column>
|
||||
<formatIndex>6</formatIndex>
|
||||
</column>
|
||||
</columnsItem>
|
||||
</columns>
|
||||
<rowsItem>
|
||||
<index>0</index>
|
||||
<row>
|
||||
<c>
|
||||
<c>
|
||||
<f>1</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Заголовок</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<rowsItem>
|
||||
<index>1</index>
|
||||
<row>
|
||||
<columnsID>01f06d2d-2103-3169-8cc8-32872f100129</columnsID>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<parameter>Код</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<parameter>Имя</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>1</defaultFormatIndex>
|
||||
<height>2</height>
|
||||
<vgRows>2</vgRows>
|
||||
<merge>
|
||||
<r>0</r>
|
||||
<c>0</c>
|
||||
<w>4</w>
|
||||
</merge>
|
||||
<namedItem xsi:type="NamedItemCells">
|
||||
<name>Таблица</name>
|
||||
<area>
|
||||
<type>Rows</type>
|
||||
<beginRow>1</beginRow>
|
||||
<endRow>1</endRow>
|
||||
<beginColumn>-1</beginColumn>
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<namedItem xsi:type="NamedItemCells">
|
||||
<name>Шапка</name>
|
||||
<area>
|
||||
<type>Rows</type>
|
||||
<beginRow>0</beginRow>
|
||||
<endRow>0</endRow>
|
||||
<beginColumn>-1</beginColumn>
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<width>20</width>
|
||||
</format>
|
||||
<format>
|
||||
<width>30</width>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<width>15</width>
|
||||
</format>
|
||||
<format>
|
||||
<hidden>true</hidden>
|
||||
</format>
|
||||
<format>
|
||||
<width>12</width>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<backColor>#EBEBEB</backColor>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
</document>
|
||||
Reference in New Issue
Block a user