Files
cc-1c-skills/tests/skills/cases/mxl-compile/snapshots/styles-fonts-borders/Template.xml
T
Nick ShirokovandClaude Opus 5 d3c16f56c5 feat(mxl-compile): стиль умеет все свойства формата, а не семь
Стиль описывал 7 свойств из 47, которые платформа хранит в <format>. Не было
самого частого тега корпуса — backColor (1.7 млн вхождений), а также textColor,
textPlacement, protection, hidden, indent, borderColor, textOrientation и хвоста.

Теперь ключ стиля — имя тега платформы, без исключений: помнить, какие ключи
названы по-своему, больше не нужно. Прежние align/valign/wrap продолжают
работать молча, как синонимы; там же CSS-имена (background, color,
border-bottom) и русские имена свойств. Таблицы типов значений и допустимых
значений перечислений сняты с корпуса, а не выписаны на глаз.

Рамка: пять плоских ключей (border и четыре стороны) со значением
{ style, width } либо строкой стиля; линия регистрируется в палитре <line>,
которая раньше знала только «тонкую» и «толстую» Solid. Четыре одинаковые
стороны сворачиваются в один <border> — правило проверено на корпусе:
70 265 свёрнутых форматов против 36 783 записанных по сторонам, и среди
вторых нет ни одного с четырьмя совпадающими значениями.

Цвет — нотация самой платформы: #RRGGBB, style:Имя, web:Имя, win:Имя. Первые
две пишутся дословно (префикс style объявлен в корне документа), для web и win
платформа дописывает объявление xmlns прямо на узел — делаем так же.

containsValue / valueType / controlType намеренно не заведены: это свойства
конкретной ячейки, а стиль — сущность общая, один на многие ячейки.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-11 15:34:54 +03:00

344 lines
7.0 KiB
XML

<?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>
</columns>
<rowsItem>
<index>0</index>
<row>
<formatIndex>2</formatIndex>
<c>
<c>
<f>3</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>
<c>
<c>
<f>4</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поставщик:</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>2</i>
<c>
<f>5</f>
<parameter>Поставщик</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>2</index>
<row>
<c>
<c>
<f>6</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content></v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<c>
<f>6</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Товар</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<c>
<f>6</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Кол-во</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<c>
<f>6</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Цена</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<c>
<f>6</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сумма</v8:content>
</v8:item>
</tl>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>3</index>
<row>
<c>
<c>
<f>8</f>
<parameter>НомерСтроки</parameter>
</c>
</c>
<c>
<c>
<f>9</f>
<parameter>Товар</parameter>
</c>
</c>
<c>
<c>
<f>10</f>
<parameter>Количество</parameter>
</c>
</c>
<c>
<c>
<f>10</f>
<parameter>Цена</parameter>
</c>
</c>
<c>
<c>
<f>10</f>
<parameter>Сумма</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>4</index>
<row>
<c>
<i>3</i>
<c>
<f>11</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Итого:</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<c>
<f>12</f>
<parameter>Всего</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>5</index>
<row>
<c>
<c>
<f>13</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>* Цены указаны без НДС</v8:content>
</v8:item>
</tl>
</c>
</c>
</row>
</rowsItem>
<templateMode>true</templateMode>
<defaultFormatIndex>1</defaultFormatIndex>
<height>6</height>
<vgRows>6</vgRows>
<merge>
<r>0</r>
<c>0</c>
<w>4</w>
</merge>
<merge>
<r>1</r>
<c>0</c>
<w>1</w>
</merge>
<merge>
<r>1</r>
<c>2</c>
<w>2</w>
</merge>
<merge>
<r>5</r>
<c>0</c>
<w>4</w>
</merge>
<namedItem xsi:type="NamedItemCells">
<name>Заголовок</name>
<area>
<type>Rows</type>
<beginRow>0</beginRow>
<endRow>0</endRow>
<beginColumn>-1</beginColumn>
<endColumn>-1</endColumn>
</area>
</namedItem>
<namedItem xsi:type="NamedItemCells">
<name>Итого</name>
<area>
<type>Rows</type>
<beginRow>4</beginRow>
<endRow>4</endRow>
<beginColumn>-1</beginColumn>
<endColumn>-1</endColumn>
</area>
</namedItem>
<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>5</beginRow>
<endRow>5</endRow>
<beginColumn>-1</beginColumn>
<endColumn>-1</endColumn>
</area>
</namedItem>
<namedItem xsi:type="NamedItemCells">
<name>Строка</name>
<area>
<type>Rows</type>
<beginRow>3</beginRow>
<endRow>3</endRow>
<beginColumn>-1</beginColumn>
<endColumn>-1</endColumn>
</area>
</namedItem>
<namedItem xsi:type="NamedItemCells">
<name>ШапкаТаблицы</name>
<area>
<type>Rows</type>
<beginRow>2</beginRow>
<endRow>2</endRow>
<beginColumn>-1</beginColumn>
<endColumn>-1</endColumn>
</area>
</namedItem>
<line width="1" gap="false">
<v8ui:style xsi:type="v8ui:SpreadsheetDocumentCellLineType">Solid</v8ui:style>
</line>
<line width="2" gap="false">
<v8ui:style xsi:type="v8ui:SpreadsheetDocumentCellLineType">Solid</v8ui:style>
</line>
<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"/>
<font faceName="Arial" height="10" bold="false" italic="true" underline="false" strikeout="false" kind="Absolute" scale="100"/>
<font faceName="Times New Roman" height="14" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
<font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
<font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute" scale="100"/>
<format>
<width>25</width>
</format>
<format>
<height>25</height>
</format>
<format>
<font>3</font>
<horizontalAlignment>Center</horizontalAlignment>
</format>
<format>
<font>1</font>
<bottomBorder>0</bottomBorder>
</format>
<format>
<font>5</font>
<fillType>Parameter</fillType>
</format>
<format>
<font>1</font>
<border>1</border>
</format>
<format>
<font>0</font>
<border>0</border>
</format>
<format>
<font>0</font>
<border>0</border>
<horizontalAlignment>Center</horizontalAlignment>
<fillType>Parameter</fillType>
</format>
<format>
<font>0</font>
<border>0</border>
<textPlacement>Wrap</textPlacement>
<fillType>Parameter</fillType>
</format>
<format>
<font>0</font>
<border>0</border>
<horizontalAlignment>Right</horizontalAlignment>
<fillType>Parameter</fillType>
</format>
<format>
<font>0</font>
<topBorder>0</topBorder>
<bottomBorder>0</bottomBorder>
</format>
<format>
<font>0</font>
<topBorder>0</topBorder>
<bottomBorder>0</bottomBorder>
<fillType>Parameter</fillType>
</format>
<format>
<font>4</font>
<horizontalAlignment>Center</horizontalAlignment>
</format>
</document>