Files
cc-1c-skills/tests/skills/cases/mxl-compile/snapshots/print-form/Template.xml
T
Nick ShirokovandClaude Opus 5 abe9431d8f fix(9 навыков): без хвостового перевода строки в конце XML (#57)
Конфигуратор не пишет перевод строки в конце файла — последний байт `>`. Это видно
на чистой выгрузке пустой ИБ (Windows и macOS) и на всех 8 выгрузках в cfsrc.
Наши эмиттеры добавляли лишний, причём оба порта и по разным причинам:

- PS: StringBuilder.AppendLine дописывает Environment.NewLine после последней строки;
- PY: '\n'.join(lines) + '\n' — хвост добавлен явно.

В meta-compile заведена единая точка записи Write-XmlFile: там документ собирают
и AppendLine, и явные `n в билдерах Predefined/Content/Flowchart, а выходов семь.
В остальных обрезка стоит в самом вызове записи.

Модули .bsl, JSON-выход form-compile, HTML-справка help-add и XSD из xdto-decompile
сюда НЕ входят: канон Конфигуратора описывает XML метаданных, а у этих артефактов
свои правила. Результаты XmlDocument.Save тоже не трогаются — у них хвоста нет.

Навыки редактирования продолжают сохранять стиль ВХОДНОГО файла: кейс
subsystem-edit/roundtrip-crlf-preserve, где фикстура намеренно с хвостом, остаётся
зелёным. Это контракт #44/#46/#47, и он не отменяется.

Дрейф снэпшотов: 547 файлов, у каждого только последняя строка, содержательных
изменений ноль. Тесты 641/641.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-05 13:53:05 +03:00

633 lines
11 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?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>10</size>
<columnsItem>
<index>0</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>1</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>2</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>3</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>4</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>5</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>6</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>7</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>8</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
<columnsItem>
<index>9</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
</columns>
<rowsItem>
<index>0</index>
<row>
<formatIndex>2</formatIndex>
<c>
<i>0</i>
<c>
<f>3</f>
<parameter>ТекстЗаголовка</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>1</index>
<row>
<empty>true</empty>
</row>
</rowsItem>
<rowsItem>
<index>2</index>
<row>
<c>
<i>0</i>
<c>
<f>4</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Организация:</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>3</i>
<c>
<f>5</f>
<parameter>Организация</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>3</index>
<row>
<c>
<i>0</i>
<c>
<f>4</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Контрагент:</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>3</i>
<c>
<f>5</f>
<parameter>Контрагент</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>4</index>
<row>
<c>
<i>0</i>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content></v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>1</i>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>6</i>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ед.</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>7</i>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Кол-во</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>8</i>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Цена</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>9</i>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сумма</v8:content>
</v8:item>
</tl>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>5</index>
<row>
<c>
<i>0</i>
<c>
<f>8</f>
<parameter>НомерСтроки</parameter>
</c>
</c>
<c>
<i>1</i>
<c>
<f>9</f>
<parameter>Товар</parameter>
<detailParameter>Номенклатура</detailParameter>
</c>
</c>
<c>
<i>6</i>
<c>
<f>8</f>
<parameter>ЕдИзм</parameter>
</c>
</c>
<c>
<i>7</i>
<c>
<f>10</f>
<parameter>Количество</parameter>
</c>
</c>
<c>
<i>8</i>
<c>
<f>10</f>
<parameter>Цена</parameter>
</c>
</c>
<c>
<i>9</i>
<c>
<f>10</f>
<parameter>Сумма</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>6</index>
<row>
<c>
<i>7</i>
<c>
<f>11</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Итого:</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>9</i>
<c>
<f>12</f>
<parameter>ИтогоСумма</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>7</index>
<row>
<c>
<i>7</i>
<c>
<f>11</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>В т.ч. НДС:</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>9</i>
<c>
<f>12</f>
<parameter>ИтогоНДС</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>8</index>
<row>
<empty>true</empty>
</row>
</rowsItem>
<rowsItem>
<index>9</index>
<row>
<empty>true</empty>
</row>
</rowsItem>
<rowsItem>
<index>10</index>
<row>
<c>
<i>0</i>
<c>
<f>4</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отпустил:</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>3</i>
<c>
<f>13</f>
<parameter>Отпустил</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>11</index>
<row>
<c>
<i>3</i>
<c>
<f>14</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>(подпись)</v8:content>
</v8:item>
</tl>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>12</index>
<row>
<empty>true</empty>
</row>
</rowsItem>
<rowsItem>
<index>13</index>
<row>
<c>
<i>0</i>
<c>
<f>4</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Получил:</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<i>3</i>
<c>
<f>13</f>
<parameter>Получил</parameter>
</c>
</c>
</row>
</rowsItem>
<rowsItem>
<index>14</index>
<row>
<c>
<i>3</i>
<c>
<f>14</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>15</height>
<vgRows>15</vgRows>
<merge>
<r>0</r>
<c>0</c>
<w>9</w>
</merge>
<merge>
<r>2</r>
<c>0</c>
<w>2</w>
</merge>
<merge>
<r>2</r>
<c>3</c>
<w>6</w>
</merge>
<merge>
<r>3</r>
<c>0</c>
<w>2</w>
</merge>
<merge>
<r>3</r>
<c>3</c>
<w>6</w>
</merge>
<merge>
<r>4</r>
<c>1</c>
<w>4</w>
</merge>
<merge>
<r>5</r>
<c>1</c>
<w>4</w>
</merge>
<merge>
<r>6</r>
<c>7</c>
<w>1</w>
</merge>
<merge>
<r>7</r>
<c>7</c>
<w>1</w>
</merge>
<merge>
<r>10</r>
<c>0</c>
<w>2</w>
</merge>
<merge>
<r>10</r>
<c>3</c>
<w>2</w>
</merge>
<merge>
<r>11</r>
<c>3</c>
<w>2</w>
</merge>
<merge>
<r>13</r>
<c>0</c>
<w>2</w>
</merge>
<merge>
<r>13</r>
<c>3</c>
<w>2</w>
</merge>
<merge>
<r>14</r>
<c>3</c>
<w>2</w>
</merge>
<namedItem xsi:type="NamedItemCells">
<name>Заголовок</name>
<area>
<type>Rows</type>
<beginRow>0</beginRow>
<endRow>3</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>5</beginRow>
<endRow>5</endRow>
<beginColumn>-1</beginColumn>
<endColumn>-1</endColumn>
</area>
</namedItem>
<namedItem xsi:type="NamedItemCells">
<name>Итого</name>
<area>
<type>Rows</type>
<beginRow>6</beginRow>
<endRow>7</endRow>
<beginColumn>-1</beginColumn>
<endColumn>-1</endColumn>
</area>
</namedItem>
<namedItem xsi:type="NamedItemCells">
<name>Подвал</name>
<area>
<type>Rows</type>
<beginRow>8</beginRow>
<endRow>14</endRow>
<beginColumn>-1</beginColumn>
<endColumn>-1</endColumn>
</area>
</namedItem>
<line width="1" 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="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"/>
<format>
<width>54</width>
</format>
<format>
<height>20</height>
</format>
<format>
<font>2</font>
<horizontalAlignment>Center</horizontalAlignment>
<fillType>Parameter</fillType>
</format>
<format>
<font>1</font>
<fillType>Text</fillType>
</format>
<format>
<font>0</font>
<fillType>Parameter</fillType>
</format>
<format>
<font>0</font>
<leftBorder>0</leftBorder>
<topBorder>0</topBorder>
<rightBorder>0</rightBorder>
<bottomBorder>0</bottomBorder>
</format>
<format>
<font>0</font>
<leftBorder>0</leftBorder>
<topBorder>0</topBorder>
<rightBorder>0</rightBorder>
<bottomBorder>0</bottomBorder>
<horizontalAlignment>Center</horizontalAlignment>
<fillType>Text</fillType>
</format>
<format>
<font>0</font>
<leftBorder>0</leftBorder>
<topBorder>0</topBorder>
<rightBorder>0</rightBorder>
<bottomBorder>0</bottomBorder>
<horizontalAlignment>Center</horizontalAlignment>
<fillType>Parameter</fillType>
</format>
<format>
<font>0</font>
<leftBorder>0</leftBorder>
<topBorder>0</topBorder>
<rightBorder>0</rightBorder>
<bottomBorder>0</bottomBorder>
<fillType>Parameter</fillType>
</format>
<format>
<font>0</font>
<leftBorder>0</leftBorder>
<topBorder>0</topBorder>
<rightBorder>0</rightBorder>
<bottomBorder>0</bottomBorder>
<horizontalAlignment>Right</horizontalAlignment>
<fillType>Parameter</fillType>
</format>
<format>
<font>1</font>
<horizontalAlignment>Right</horizontalAlignment>
<fillType>Text</fillType>
</format>
<format>
<font>1</font>
<topBorder>0</topBorder>
<horizontalAlignment>Right</horizontalAlignment>
<fillType>Parameter</fillType>
</format>
<format>
<font>0</font>
<bottomBorder>0</bottomBorder>
<fillType>Parameter</fillType>
</format>
<format>
<font>3</font>
<horizontalAlignment>Center</horizontalAlignment>
<fillType>Text</fillType>
</format>
</document>