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): языки макета и шрифт как у платформы
Контролируемый стенд (upload/epf/МакетТабличныйДокумент) вскрыл четыре системных расхождения подряд. После правок 7 макетов стенда из 10 проходят раундтрип БАЙТ В БАЙТ обоими портами — до этого ни один. 1. Объявление языков макета жёстко писалось как «только русский». Это не то же самое, что textLanguages: почти во всех макетах ERP объявлен один ru, а текст лежит и под ru, и под en, поэтому выводить одно из другого нельзя. Заведены недокументированные ключи languages / currentLanguage / defaultLanguage — автору они не нужны, нужны раундтрипу. defaultLanguage несём, а не выводим: «всегда ru» — наблюдение на четырёх русских типовых, а не правило формата. 2. <font> писался в каждом формате. Платформа пишет его только когда шрифт задан: треть форматов корпуса (23 003 из 69 581) обходится без него. 3. Декомпилятор считал шрифт с индексом 0 «обычным» и не писал его в стиль. Нулевой шрифт вовсе не обязан быть обычным — в макетах стенда он курсивный и жирный, и начертание терялось. 4. Формат, несущий ТОЛЬКО шрифт, выглядел пустым: у ячейки он получал зарезервированное имя default и не записывался, у строки терялся целиком. Остаток на стенде — три макета, и все три про одно: ссылка ячейки на запись ширины, оставшуюся от прежнего состояния документа. Это не воспроизводится принципиально, разобрано в docs/1c-spreadsheet-spec.md. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
f72dd544dd
commit
fc792bfee6
@@ -1,4 +1,4 @@
|
||||
# mxl-compile v1.35 — Compile 1C spreadsheet from JSON
|
||||
# mxl-compile v1.36 — Compile 1C spreadsheet from JSON
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
param(
|
||||
[Parameter(Mandatory)]
|
||||
@@ -502,7 +502,7 @@ function Get-RowFormatProps {
|
||||
$props = @{}
|
||||
$spec = Get-RowStyleSpec $row.rowStyle "row"
|
||||
if ($spec.Name -and $spec.Apply -cne 'cells') {
|
||||
$props = Resolve-Style -styleName $spec.Name -fillType "" -noDefaultFont
|
||||
$props = Resolve-Style -styleName $spec.Name -fillType ""
|
||||
}
|
||||
if ($row.height) { $props['height'] = [int]$row.height }
|
||||
if ($row.hidden -eq $true) { $props['hidden'] = 'true' }
|
||||
@@ -510,12 +510,13 @@ function Get-RowFormatProps {
|
||||
}
|
||||
|
||||
function Resolve-Style {
|
||||
param([string]$styleName, [string]$fillType, [switch]$noDefaultFont)
|
||||
param([string]$styleName, [string]$fillType)
|
||||
|
||||
# Набор свойств формата — «тег платформы → значение», только заданные. Порядок вставки
|
||||
# роли не играет: и ключ дедупликации, и эмиссия идут по каноническому порядку тегов.
|
||||
# <font> пишем только когда стиль задал шрифт: треть форматов корпуса (23 003 из 69 581)
|
||||
# обходится без него, а мы раньше подставляли шрифт по умолчанию всегда.
|
||||
$props = @{}
|
||||
if (-not $noDefaultFont) { $props['font'] = $fontMap["default"] }
|
||||
|
||||
if ($styleName -and $def.styles) {
|
||||
$style = $def.styles.$styleName
|
||||
@@ -753,7 +754,7 @@ foreach ($layout in $columnLayouts) {
|
||||
if ($styleName) {
|
||||
# Шрифт по умолчанию колонке не навязываем: формат колонки без оформления —
|
||||
# это ровно <width>, как пишет платформа.
|
||||
$props = Resolve-Style -styleName $styleName -fillType "" -noDefaultFont
|
||||
$props = Resolve-Style -styleName $styleName -fillType ""
|
||||
}
|
||||
if ($layout.Widths.ContainsKey($col)) { $props['width'] = $layout.Widths[$col] }
|
||||
$map[$col] = Register-Format $props
|
||||
@@ -827,7 +828,7 @@ function Register-CellFormat {
|
||||
# У ячейки без собственного оформления формата НЕТ вовсе: <f>0</f>, где ноль — не индекс
|
||||
# записи, а «формата нет». В корпусе так у 170 710 ячеек против 50 635, ссылающихся на
|
||||
# формат по умолчанию; <f>0</f> встречается в 71% макетов.
|
||||
if ($resolved.Count -eq 1 -and $resolved['font'] -eq $fontMap["default"]) {
|
||||
if ($resolved.Count -eq 0) {
|
||||
return 0
|
||||
}
|
||||
return Register-Format $resolved
|
||||
@@ -1065,14 +1066,50 @@ X '<?xml version="1.0" encoding="UTF-8"?>'
|
||||
X "<document $docNsDecl>"
|
||||
|
||||
# 7b. Language settings
|
||||
# Языки МАКЕТА — не то же, что textLanguages: там языки, на которые разворачивается текст
|
||||
# ячейки, здесь объявление в шапке. В 98% макетов ERP объявлен один ru, а текст лежит и под
|
||||
# ru, и под en, поэтому выводить одно из другого нельзя. Ключи недокументированные: автору
|
||||
# они не нужны, нужны раундтрипу.
|
||||
$langCodes = @{ 'ru' = 'Русский'; 'en' = 'Английский' }
|
||||
$langList = @()
|
||||
if ($def.languages) {
|
||||
foreach ($l in @($def.languages)) {
|
||||
if ($l -is [string]) {
|
||||
$code = if ($langCodes.ContainsKey("$l")) { $langCodes["$l"] } else { "$l" }
|
||||
$langList += @{ Id = "$l"; Code = $code; Description = $code }
|
||||
} else {
|
||||
# description отсутствует и пустая строка — одно и то же: тег есть всегда, но
|
||||
# бывает самозакрывающимся (77 записей корпуса против 11 017 со значением).
|
||||
$langList += @{
|
||||
Id = "$($l.id)"
|
||||
Code = "$($l.code)"
|
||||
Description = if ($null -eq $l.description) { '' } else { "$($l.description)" }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($langList.Count -eq 0) {
|
||||
$langList = @(@{ Id = 'ru'; Code = 'Русский'; Description = 'Русский' })
|
||||
}
|
||||
$currentLang = if ($def.PSObject.Properties['currentLanguage']) { $def.currentLanguage } else { 'ru' }
|
||||
$defaultLang = if ($def.defaultLanguage) { "$($def.defaultLanguage)" } else { 'ru' }
|
||||
|
||||
X "`t<languageSettings>"
|
||||
X "`t`t<currentLanguage>ru</currentLanguage>"
|
||||
X "`t`t<defaultLanguage>ru</defaultLanguage>"
|
||||
X "`t`t<languageInfo>"
|
||||
X "`t`t`t<id>ru</id>"
|
||||
X "`t`t`t<code>Русский</code>"
|
||||
X "`t`t`t<description>Русский</description>"
|
||||
X "`t`t</languageInfo>"
|
||||
if ($null -ne $currentLang -and "$currentLang" -ne '') {
|
||||
X "`t`t<currentLanguage>$(Esc-XmlText "$currentLang")</currentLanguage>"
|
||||
}
|
||||
X "`t`t<defaultLanguage>$(Esc-XmlText $defaultLang)</defaultLanguage>"
|
||||
foreach ($l in $langList) {
|
||||
X "`t`t<languageInfo>"
|
||||
X "`t`t`t<id>$(Esc-XmlText $l.Id)</id>"
|
||||
X "`t`t`t<code>$(Esc-XmlText $l.Code)</code>"
|
||||
if ($l.Description -eq '') {
|
||||
X "`t`t`t<description/>"
|
||||
} else {
|
||||
X "`t`t`t<description>$(Esc-XmlText $l.Description)</description>"
|
||||
}
|
||||
X "`t`t</languageInfo>"
|
||||
}
|
||||
X "`t</languageSettings>"
|
||||
|
||||
# 7c. Columns
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env python3
|
||||
# mxl-compile v1.35 — Compile 1C spreadsheet from JSON
|
||||
# mxl-compile v1.36 — Compile 1C spreadsheet from JSON
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
import argparse
|
||||
import hashlib
|
||||
@@ -695,17 +695,19 @@ def main():
|
||||
props = {}
|
||||
name, apply_to = row_style_spec(row.get('rowStyle'), 'row')
|
||||
if name and apply_to != 'cells':
|
||||
props = resolve_style(name, '', no_default_font=True)
|
||||
props = resolve_style(name, '')
|
||||
if row.get('height'):
|
||||
props['height'] = int(row['height'])
|
||||
if row.get('hidden') is True:
|
||||
props['hidden'] = 'true'
|
||||
return props
|
||||
|
||||
def resolve_style(style_name, fill_type, no_default_font=False):
|
||||
def resolve_style(style_name, fill_type):
|
||||
# Набор свойств формата — «тег платформы → значение», только заданные. Порядок вставки
|
||||
# роли не играет: и ключ дедупликации, и эмиссия идут по каноническому порядку тегов.
|
||||
props = {} if no_default_font else {'font': font_map.get('default', 0)}
|
||||
# <font> пишем только когда стиль задал шрифт: треть форматов корпуса (23 003 из
|
||||
# 69 581) обходится без него, а мы раньше подставляли шрифт по умолчанию всегда.
|
||||
props = {}
|
||||
|
||||
if style_name and defn.get('styles'):
|
||||
style = defn['styles'].get(style_name)
|
||||
@@ -827,7 +829,7 @@ def main():
|
||||
if style_name:
|
||||
# Шрифт по умолчанию колонке не навязываем: формат колонки без оформления —
|
||||
# это ровно <width>, как пишет платформа.
|
||||
props = resolve_style(style_name, '', no_default_font=True)
|
||||
props = resolve_style(style_name, '')
|
||||
if col in layout['Widths']:
|
||||
props['width'] = layout['Widths'][col]
|
||||
fmap[col] = register_format(props)
|
||||
@@ -872,7 +874,7 @@ def main():
|
||||
# У ячейки без собственного оформления формата НЕТ вовсе: <f>0</f>, где ноль — не
|
||||
# индекс записи, а «формата нет». В корпусе так у 170 710 ячеек против 50 635,
|
||||
# ссылающихся на формат по умолчанию; <f>0</f> встречается в 71% макетов.
|
||||
if len(resolved) == 1 and resolved.get('font') == font_map.get('default', 0):
|
||||
if not resolved:
|
||||
return 0
|
||||
return register_format(resolved)
|
||||
|
||||
@@ -1077,15 +1079,43 @@ def main():
|
||||
lines.append(f'<document {doc_ns_decl}>')
|
||||
|
||||
# 7b. Language settings
|
||||
lines.append('\t<languageSettings>')
|
||||
lines.append('\t\t<currentLanguage>ru</currentLanguage>')
|
||||
lines.append('\t\t<defaultLanguage>ru</defaultLanguage>')
|
||||
lines.append('\t\t<languageInfo>')
|
||||
lines.append('\t\t\t<id>ru</id>')
|
||||
lines.append('\t\t\t<code>\u0420\u0443\u0441\u0441\u043a\u0438\u0439</code>')
|
||||
lines.append('\t\t\t<description>\u0420\u0443\u0441\u0441\u043a\u0438\u0439</description>')
|
||||
lines.append('\t\t</languageInfo>')
|
||||
lines.append('\t</languageSettings>')
|
||||
# Языки МАКЕТА — не то же, что textLanguages: там языки, на которые разворачивается текст
|
||||
# ячейки, здесь объявление в шапке. Почти во всех макетах ERP объявлен один ru, а текст
|
||||
# лежит и под ru, и под en, поэтому выводить одно из другого нельзя. Ключи
|
||||
# недокументированные: автору они не нужны, нужны раундтрипу.
|
||||
RU = '\u0420\u0443\u0441\u0441\u043a\u0438\u0439'
|
||||
lang_codes = {'ru': RU, 'en': '\u0410\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439'}
|
||||
lang_list = []
|
||||
for lang in (defn.get('languages') or []):
|
||||
if isinstance(lang, dict):
|
||||
# description отсутствует и пустая строка — одно и то же: тег есть всегда, но
|
||||
# бывает самозакрывающимся (77 записей корпуса против 11 017 со значением).
|
||||
lang_list.append({'Id': str(lang.get('id') or ''),
|
||||
'Code': str(lang.get('code') or ''),
|
||||
'Description': '' if lang.get('description') is None
|
||||
else str(lang['description'])})
|
||||
else:
|
||||
code = lang_codes.get(str(lang), str(lang))
|
||||
lang_list.append({'Id': str(lang), 'Code': code, 'Description': code})
|
||||
if not lang_list:
|
||||
lang_list = [{'Id': 'ru', 'Code': RU, 'Description': RU}]
|
||||
current_lang = defn['currentLanguage'] if 'currentLanguage' in defn else 'ru'
|
||||
default_lang = str(defn.get('defaultLanguage') or 'ru')
|
||||
|
||||
lines.append(' <languageSettings>')
|
||||
if current_lang is not None and str(current_lang) != '':
|
||||
lines.append(f' <currentLanguage>{esc_xml_text(str(current_lang))}</currentLanguage>')
|
||||
lines.append(f' <defaultLanguage>{esc_xml_text(default_lang)}</defaultLanguage>')
|
||||
for lang in lang_list:
|
||||
lines.append(' <languageInfo>')
|
||||
lines.append(f' <id>{esc_xml_text(lang["Id"])}</id>')
|
||||
lines.append(f' <code>{esc_xml_text(lang["Code"])}</code>')
|
||||
if lang['Description'] == '':
|
||||
lines.append(' <description/>')
|
||||
else:
|
||||
lines.append(f' <description>{esc_xml_text(lang["Description"])}</description>')
|
||||
lines.append(' </languageInfo>')
|
||||
lines.append(' </languageSettings>')
|
||||
|
||||
# 7c. Columns
|
||||
# Раскладка по умолчанию идёт первой и без <id> — так их хранит платформа.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# mxl-decompile v1.13 — Decompile 1C spreadsheet to JSON
|
||||
# mxl-decompile v1.14 — Decompile 1C spreadsheet to JSON
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
param(
|
||||
[Parameter(Mandatory)]
|
||||
@@ -54,6 +54,8 @@ function Get-FormatTagKind {
|
||||
}
|
||||
}
|
||||
|
||||
$RU_NAME = 'Русский'
|
||||
|
||||
# Теги, значение которых — многоязычная строка (<v8:item> на язык), а не скаляр.
|
||||
function Get-FormatMlTags {
|
||||
return @{ 'format' = $true; 'editFormat' = $true; 'mask' = $true }
|
||||
@@ -407,8 +409,9 @@ function Get-StyleProps {
|
||||
function Get-StyleKey {
|
||||
param($fmt)
|
||||
if (-not $fmt) { return "empty" }
|
||||
$fi = if ($fmt.FontIdx -ge 0) { $fmt.FontIdx } else { 0 }
|
||||
$parts = @("f=$fi")
|
||||
# «шрифта нет» и «шрифт с индексом 0» — разные форматы: нулевой шрифт вовсе не обязан
|
||||
# быть обычным, в макете он бывает курсивным или жирным.
|
||||
$parts = @("f=" + $(if ($fmt.FontIdx -ge 0) { "$($fmt.FontIdx)" } else { "none" }))
|
||||
$props = Get-StyleProps $fmt
|
||||
foreach ($tag in $props.Keys) {
|
||||
$v = $props[$tag]
|
||||
@@ -506,7 +509,9 @@ function Get-RowStyleFmt {
|
||||
if (-not $fmt) { return $null }
|
||||
$props = Get-StyleProps $fmt
|
||||
$props.Remove('hidden') | Out-Null
|
||||
if ($props.Count -eq 0) { return $null }
|
||||
# Шрифт в Get-StyleProps не входит (он адресуется именем), поэтому формат строки,
|
||||
# несущий ТОЛЬКО шрифт, здесь выглядел пустым и терялся.
|
||||
if ($props.Count -eq 0 -and $fmt.FontIdx -lt 0) { return $null }
|
||||
$reduced = [ordered]@{}
|
||||
foreach ($tag in $fmt.Props.Keys) {
|
||||
if ($tag -cne 'hidden') { $reduced[$tag] = $fmt.Props[$tag] }
|
||||
@@ -543,8 +548,8 @@ function Name-Style {
|
||||
$parts = @()
|
||||
$props = Get-StyleProps $fmt
|
||||
|
||||
$fi = if ($fmt.FontIdx -ge 0) { $fmt.FontIdx } else { 0 }
|
||||
if ($fontNames.ContainsKey($fi) -and $fontNames[$fi] -ne "default") {
|
||||
$fi = $fmt.FontIdx
|
||||
if ($fi -ge 0 -and $fontNames.ContainsKey($fi) -and $fontNames[$fi] -ne "default") {
|
||||
$parts += $fontNames[$fi]
|
||||
}
|
||||
|
||||
@@ -569,7 +574,13 @@ function Name-Style {
|
||||
# Имя "default" зарезервировано за стилем БЕЗ свойств: под ним компилятор понимает
|
||||
# отсутствие оформления. Набор из одних неприметных свойств (отступ, защита) обязан
|
||||
# получить своё имя, иначе он потеряется.
|
||||
if ($parts.Count -eq 0) { return $(if ($props.Count -eq 0) { "default" } else { "style" }) }
|
||||
# Имя "default" зарезервировано за стилем БЕЗ свойств: под ним компилятор понимает
|
||||
# отсутствие оформления, и ячейка такой стиль не записывает. Набор из одних неприметных
|
||||
# свойств или из одного шрифта обязан получить своё имя, иначе он потеряется.
|
||||
if ($parts.Count -eq 0) {
|
||||
$hasContent = ($props.Count -gt 0) -or ($fmt.FontIdx -ge 0)
|
||||
return $(if ($hasContent) { "style" } else { "default" })
|
||||
}
|
||||
return ($parts -join "-")
|
||||
}
|
||||
|
||||
@@ -586,9 +597,8 @@ foreach ($key in $styleKeys.Keys) {
|
||||
$styleNames[$key] = $name
|
||||
|
||||
$sDef = [ordered]@{}
|
||||
$fi = if ($fmt.FontIdx -ge 0) { $fmt.FontIdx } else { 0 }
|
||||
if ($fontNames.ContainsKey($fi) -and $fontNames[$fi] -ne "default") {
|
||||
$sDef["font"] = $fontNames[$fi]
|
||||
if ($fmt.FontIdx -ge 0) {
|
||||
$sDef["font"] = $(if ($fontNames.ContainsKey($fmt.FontIdx)) { $fontNames[$fmt.FontIdx] } else { "default" })
|
||||
}
|
||||
$props = Get-StyleProps $fmt
|
||||
foreach ($tag in $props.Keys) { $sDef[$tag] = $props[$tag] }
|
||||
@@ -970,6 +980,31 @@ if ($defaultSet) {
|
||||
if ($textLanguages.Count -gt 0 -and -not ($textLanguages.Count -eq 1 -and $textLanguages[0] -ceq 'ru')) {
|
||||
$result["textLanguages"] = [array]$textLanguages
|
||||
}
|
||||
|
||||
# Объявление языков МАКЕТА — не то же, что языки текста: почти во всех макетах ERP объявлен
|
||||
# один ru, а текст лежит и под ru, и под en. Пишем, только если отличается от умолчания.
|
||||
$lsNode = $root.SelectSingleNode("d:languageSettings", $ns)
|
||||
if ($lsNode) {
|
||||
$langs = @()
|
||||
foreach ($li in $lsNode.SelectNodes("d:languageInfo", $ns)) {
|
||||
$idN = $li.SelectSingleNode("d:id", $ns)
|
||||
$codeN = $li.SelectSingleNode("d:code", $ns)
|
||||
$descN = $li.SelectSingleNode("d:description", $ns)
|
||||
$langs += [ordered]@{
|
||||
id = $(if ($idN) { $idN.InnerText } else { "" })
|
||||
code = $(if ($codeN) { $codeN.InnerText } else { "" })
|
||||
description = $(if ($descN) { $descN.InnerText } else { "" })
|
||||
}
|
||||
}
|
||||
$isDefault = ($langs.Count -eq 1 -and $langs[0].id -ceq 'ru' -and
|
||||
$langs[0].code -ceq $RU_NAME -and $langs[0].description -ceq $RU_NAME)
|
||||
if (-not $isDefault) { $result["languages"] = [array]$langs }
|
||||
$curN = $lsNode.SelectSingleNode("d:currentLanguage", $ns)
|
||||
$cur = if ($curN) { $curN.InnerText } else { $null }
|
||||
if ($cur -cne 'ru') { $result["currentLanguage"] = $cur }
|
||||
$dfltN = $lsNode.SelectSingleNode("d:defaultLanguage", $ns)
|
||||
if ($dfltN -and $dfltN.InnerText -cne 'ru') { $result["defaultLanguage"] = $dfltN.InnerText }
|
||||
}
|
||||
# Remove empty "default" style
|
||||
if ($styleDefs.Contains("default") -and $styleDefs["default"].Count -eq 0) {
|
||||
$styleDefs.Remove("default")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env python3
|
||||
# mxl-decompile v1.13 — Decompile 1C spreadsheet to JSON
|
||||
# mxl-decompile v1.14 — Decompile 1C spreadsheet to JSON
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
|
||||
import argparse
|
||||
@@ -94,6 +94,9 @@ def format_tag_kind():
|
||||
}
|
||||
|
||||
|
||||
RU_NAME = 'Русский'
|
||||
|
||||
|
||||
def format_ml_tags():
|
||||
"""Теги, значение которых — многоязычная строка (<v8:item> на язык), а не скаляр."""
|
||||
return {'format': True, 'editFormat': True, 'mask': True}
|
||||
@@ -573,8 +576,9 @@ def main():
|
||||
def get_style_key(fmt):
|
||||
if not fmt:
|
||||
return "empty"
|
||||
fi = fmt["FontIdx"] if fmt["FontIdx"] >= 0 else 0
|
||||
parts = [f"f={fi}"]
|
||||
# «шрифта нет» и «шрифт с индексом 0» — разные форматы: нулевой шрифт вовсе не
|
||||
# обязан быть обычным, в макете он бывает курсивным или жирным.
|
||||
parts = ["f=" + (str(fmt["FontIdx"]) if fmt["FontIdx"] >= 0 else "none")]
|
||||
for tag, val in style_props(fmt).items():
|
||||
parts.append(f"{tag}={val}")
|
||||
return "|".join(parts)
|
||||
@@ -666,7 +670,9 @@ def main():
|
||||
return None
|
||||
props = style_props(fmt)
|
||||
props.pop("hidden", None)
|
||||
if not props:
|
||||
# Шрифт в style_props не входит (он адресуется именем), поэтому формат строки,
|
||||
# несущий ТОЛЬКО шрифт, здесь выглядел пустым и терялся.
|
||||
if not props and fmt["FontIdx"] < 0:
|
||||
return None
|
||||
reduced = OrderedDict()
|
||||
for tag, raw in fmt["Props"].items():
|
||||
@@ -703,8 +709,8 @@ def main():
|
||||
parts = []
|
||||
props = style_props(fmt)
|
||||
|
||||
fi = fmt["FontIdx"] if fmt["FontIdx"] >= 0 else 0
|
||||
if fi in font_names and font_names[fi] != "default":
|
||||
fi = fmt["FontIdx"]
|
||||
if fi >= 0 and font_names.get(fi, "default") != "default":
|
||||
parts.append(font_names[fi])
|
||||
|
||||
if "border" in props:
|
||||
@@ -734,9 +740,11 @@ def main():
|
||||
|
||||
if len(parts) == 0:
|
||||
# Имя "default" зарезервировано за стилем БЕЗ свойств: под ним компилятор
|
||||
# понимает отсутствие оформления. Набор из одних неприметных свойств
|
||||
# (отступ, защита) обязан получить своё имя, иначе он потеряется.
|
||||
return "default" if not props else "style"
|
||||
# понимает отсутствие оформления, и ячейка такой стиль не записывает. Набор
|
||||
# из одних неприметных свойств (отступ, защита) или из одного шрифта обязан
|
||||
# получить своё имя, иначе он потеряется.
|
||||
has_content = bool(props) or fmt["FontIdx"] >= 0
|
||||
return "style" if has_content else "default"
|
||||
return "-".join(parts)
|
||||
|
||||
style_names = OrderedDict()
|
||||
@@ -755,9 +763,8 @@ def main():
|
||||
style_names[key] = name
|
||||
|
||||
s_def = OrderedDict()
|
||||
fi = fmt["FontIdx"] if fmt["FontIdx"] >= 0 else 0
|
||||
if fi in font_names and font_names[fi] != "default":
|
||||
s_def["font"] = font_names[fi]
|
||||
if fmt["FontIdx"] >= 0:
|
||||
s_def["font"] = font_names.get(fmt["FontIdx"], "default")
|
||||
s_def.update(style_props(fmt))
|
||||
|
||||
style_defs[name] = s_def
|
||||
@@ -1107,6 +1114,29 @@ def main():
|
||||
if text_languages and text_languages != ['ru']:
|
||||
result["textLanguages"] = text_languages
|
||||
|
||||
# Объявление языков МАКЕТА — не то же, что языки текста: почти во всех макетах ERP
|
||||
# объявлен один ru, а текст лежит и под ru, и под en. Пишем, только если отличается
|
||||
# от умолчания компилятора.
|
||||
ls_node = find(root, "d:languageSettings")
|
||||
if ls_node is not None:
|
||||
langs = []
|
||||
for li in findall(ls_node, "d:languageInfo"):
|
||||
desc_node = find(li, "d:description")
|
||||
langs.append(OrderedDict([
|
||||
("id", text_of(find(li, "d:id")) or ""),
|
||||
("code", text_of(find(li, "d:code")) or ""),
|
||||
("description", text_of(desc_node) or "" if desc_node is not None else ""),
|
||||
]))
|
||||
if langs != [OrderedDict([("id", "ru"), ("code", RU_NAME), ("description", RU_NAME)])]:
|
||||
result["languages"] = langs
|
||||
cur_node = find(ls_node, "d:currentLanguage")
|
||||
cur = text_of(cur_node) if cur_node is not None else None
|
||||
if cur != "ru":
|
||||
result["currentLanguage"] = cur
|
||||
dflt = text_of(find(ls_node, "d:defaultLanguage"))
|
||||
if dflt and dflt != "ru":
|
||||
result["defaultLanguage"] = dflt
|
||||
|
||||
# Remove empty "default" style
|
||||
if "default" in style_defs and len(style_defs["default"]) == 0:
|
||||
del style_defs["default"]
|
||||
|
||||
@@ -138,7 +138,6 @@
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<width>20</width>
|
||||
</format>
|
||||
@@ -146,7 +145,6 @@
|
||||
<width>8</width>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -127,7 +127,6 @@
|
||||
<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>30</width>
|
||||
@@ -143,11 +142,10 @@
|
||||
<width>12</width>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<backColor>#EBEBEB</backColor>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
<formatIndex>4</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -65,7 +65,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -76,7 +76,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -87,7 +87,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -98,7 +98,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -109,7 +109,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -121,7 +121,7 @@
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>6</defaultFormatIndex>
|
||||
<defaultFormatIndex>5</defaultFormatIndex>
|
||||
<height>1</height>
|
||||
<vgRows>1</vgRows>
|
||||
<namedItem xsi:type="NamedItemCells">
|
||||
@@ -137,7 +137,6 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<width>10</width>
|
||||
</format>
|
||||
@@ -150,10 +149,6 @@
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<width>20</width>
|
||||
</format>
|
||||
|
||||
@@ -41,26 +41,26 @@
|
||||
<formatIndex>2</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<parameter>Код</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<parameter>Имя</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<parameter>Значение</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>5</defaultFormatIndex>
|
||||
<defaultFormatIndex>4</defaultFormatIndex>
|
||||
<height>4</height>
|
||||
<vgRows>4</vgRows>
|
||||
<merge>
|
||||
@@ -91,21 +91,15 @@
|
||||
<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="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<formatIndex>1</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>2</f>
|
||||
<f>1</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -29,7 +29,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>2</f>
|
||||
<f>1</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -40,7 +40,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>2</f>
|
||||
<f>1</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -51,7 +51,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>2</f>
|
||||
<f>1</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -65,35 +65,35 @@
|
||||
<rowsItem>
|
||||
<index>1</index>
|
||||
<row>
|
||||
<formatIndex>3</formatIndex>
|
||||
<formatIndex>2</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>3</f>
|
||||
<parameter>Дата</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>4</f>
|
||||
<parameter>Товар</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>5</f>
|
||||
<parameter>Количество</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>5</f>
|
||||
<parameter>Цена</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>8</defaultFormatIndex>
|
||||
<defaultFormatIndex>6</defaultFormatIndex>
|
||||
<height>2</height>
|
||||
<vgRows>2</vgRows>
|
||||
<namedItem xsi:type="NamedItemCells">
|
||||
@@ -119,25 +119,14 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
@@ -149,12 +138,10 @@
|
||||
</format>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<formatIndex>1</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -29,7 +29,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -41,7 +41,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -59,7 +59,7 @@
|
||||
<c>
|
||||
<i>1</i>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -70,7 +70,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -87,32 +87,32 @@
|
||||
<formatIndex>1</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Номер</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Наименование</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Артикул</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Итого</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>7</defaultFormatIndex>
|
||||
<defaultFormatIndex>6</defaultFormatIndex>
|
||||
<height>3</height>
|
||||
<vgRows>3</vgRows>
|
||||
<merge>
|
||||
@@ -155,7 +155,6 @@
|
||||
<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="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<border>0</border>
|
||||
@@ -163,25 +162,18 @@
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
<formatIndex>3</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -41,7 +41,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -52,7 +52,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -63,7 +63,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -80,26 +80,26 @@
|
||||
<formatIndex>3</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>НомерСтроки</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Товар</parameter>
|
||||
<detailParameter>Номенклатура</detailParameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Количество</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -111,7 +111,7 @@
|
||||
<c>
|
||||
<i>2</i>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>6</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -122,14 +122,14 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<parameter>Всего</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>9</defaultFormatIndex>
|
||||
<defaultFormatIndex>8</defaultFormatIndex>
|
||||
<height>4</height>
|
||||
<vgRows>4</vgRows>
|
||||
<merge>
|
||||
@@ -180,14 +180,13 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<height>20</height>
|
||||
</format>
|
||||
<format>
|
||||
<font>2</font>
|
||||
<font>1</font>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
@@ -195,27 +194,21 @@
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<topBorder>0</topBorder>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<topBorder>0</topBorder>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
|
||||
@@ -134,9 +134,7 @@
|
||||
<endColumn>0</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -109,31 +109,31 @@
|
||||
<formatIndex>4</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Номер</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>6</f>
|
||||
<parameter>Описание</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>ЕдИзм</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Количество</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>6</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -166,7 +166,6 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<width>111</width>
|
||||
@@ -175,7 +174,7 @@
|
||||
<width>333</width>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
@@ -183,17 +182,11 @@
|
||||
<border>0</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>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
|
||||
@@ -72,26 +72,26 @@
|
||||
<formatIndex>3</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Позиция</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Товар</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Цена</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>6</defaultFormatIndex>
|
||||
<defaultFormatIndex>5</defaultFormatIndex>
|
||||
<height>3</height>
|
||||
<vgRows>3</vgRows>
|
||||
<merge>
|
||||
@@ -127,24 +127,17 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Template</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
<formatIndex>6</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -153,7 +153,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -165,7 +165,7 @@
|
||||
<c>
|
||||
<i>6</i>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -176,7 +176,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -187,7 +187,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -198,7 +198,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -215,13 +215,13 @@
|
||||
<formatIndex>6</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>9</f>
|
||||
<f>8</f>
|
||||
<parameter>НомерСтроки</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>10</f>
|
||||
<f>9</f>
|
||||
<parameter>Товар</parameter>
|
||||
<detailParameter>Номенклатура</detailParameter>
|
||||
</c>
|
||||
@@ -229,25 +229,25 @@
|
||||
<c>
|
||||
<i>6</i>
|
||||
<c>
|
||||
<f>9</f>
|
||||
<f>8</f>
|
||||
<parameter>ЕдИзм</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>11</f>
|
||||
<f>10</f>
|
||||
<parameter>Количество</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>11</f>
|
||||
<f>10</f>
|
||||
<parameter>Цена</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>11</f>
|
||||
<f>10</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -259,7 +259,7 @@
|
||||
<c>
|
||||
<i>7</i>
|
||||
<c>
|
||||
<f>12</f>
|
||||
<f>11</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -271,7 +271,7 @@
|
||||
<c>
|
||||
<i>9</i>
|
||||
<c>
|
||||
<f>13</f>
|
||||
<f>12</f>
|
||||
<parameter>ИтогоСумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -283,7 +283,7 @@
|
||||
<c>
|
||||
<i>7</i>
|
||||
<c>
|
||||
<f>12</f>
|
||||
<f>11</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -295,7 +295,7 @@
|
||||
<c>
|
||||
<i>9</i>
|
||||
<c>
|
||||
<f>13</f>
|
||||
<f>12</f>
|
||||
<parameter>ИтогоНДС</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -325,7 +325,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>14</f>
|
||||
<f>13</f>
|
||||
<parameter>Отпустил</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -337,7 +337,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>15</f>
|
||||
<f>14</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -371,7 +371,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>14</f>
|
||||
<f>13</f>
|
||||
<parameter>Получил</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -383,7 +383,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>15</f>
|
||||
<f>14</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -526,7 +526,6 @@
|
||||
<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"/>
|
||||
@@ -536,64 +535,54 @@
|
||||
<format>
|
||||
<height>20</height>
|
||||
</format>
|
||||
<format>
|
||||
<font>2</font>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
</format>
|
||||
<format>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</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>
|
||||
<font>2</font>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
</document>
|
||||
@@ -35,7 +35,7 @@
|
||||
<formatIndex>2</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -46,12 +46,12 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
@@ -59,7 +59,7 @@
|
||||
<rowsItem>
|
||||
<index>2</index>
|
||||
<row>
|
||||
<formatIndex>4</formatIndex>
|
||||
<formatIndex>3</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>0</f>
|
||||
@@ -78,7 +78,7 @@
|
||||
<row>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -89,18 +89,18 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>6</defaultFormatIndex>
|
||||
<defaultFormatIndex>5</defaultFormatIndex>
|
||||
<height>4</height>
|
||||
<vgRows>4</vgRows>
|
||||
<namedItem xsi:type="NamedItemCells">
|
||||
@@ -116,7 +116,6 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<height>20</height>
|
||||
@@ -127,13 +126,8 @@
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<backColor>#EBEBEB</backColor>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -139,9 +139,7 @@
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -107,13 +107,10 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
|
||||
@@ -113,10 +113,9 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<verticalAlignment>Center</verticalAlignment>
|
||||
<textColor>style:FormTextColor</textColor>
|
||||
@@ -125,26 +124,22 @@
|
||||
<protection>true</protection>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<leftBorder>0</leftBorder>
|
||||
<topBorder>1</topBorder>
|
||||
<bottomBorder>2</bottomBorder>
|
||||
<borderColor>#C8C8C8</borderColor>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<textColor xmlns:d3p1="http://v8.1c.ru/8.1/data/ui/colors/windows">d3p1:ButtonText</textColor>
|
||||
<backColor xmlns:d3p1="http://v8.1c.ru/8.1/data/ui/colors/web">d3p1:Gainsboro</backColor>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
<hidden>true</hidden>
|
||||
<textOrientation>900</textOrientation>
|
||||
<indent>2</indent>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>3</border>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -119,31 +119,31 @@
|
||||
<formatIndex>6</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<parameter>НомерСтроки</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>9</f>
|
||||
<f>8</f>
|
||||
<parameter>Товар</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>10</f>
|
||||
<f>9</f>
|
||||
<parameter>Количество</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>10</f>
|
||||
<f>9</f>
|
||||
<parameter>Цена</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>10</f>
|
||||
<f>9</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -155,7 +155,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>11</f>
|
||||
<f>10</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -166,7 +166,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>12</f>
|
||||
<f>11</f>
|
||||
<parameter>Всего</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -177,7 +177,7 @@
|
||||
<row>
|
||||
<c>
|
||||
<c>
|
||||
<f>13</f>
|
||||
<f>12</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -189,7 +189,7 @@
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>14</defaultFormatIndex>
|
||||
<defaultFormatIndex>13</defaultFormatIndex>
|
||||
<height>6</height>
|
||||
<vgRows>6</vgRows>
|
||||
<merge>
|
||||
@@ -278,7 +278,6 @@
|
||||
<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="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"/>
|
||||
@@ -287,59 +286,50 @@
|
||||
<height>25</height>
|
||||
</format>
|
||||
<format>
|
||||
<font>2</font>
|
||||
<font>1</font>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<bottomBorder>0</bottomBorder>
|
||||
</format>
|
||||
<format>
|
||||
<font>4</font>
|
||||
<font>3</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<border>1</border>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</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>3</font>
|
||||
<font>2</font>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -72,9 +72,7 @@
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Template</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -118,9 +118,7 @@
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<formatIndex>1</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -29,7 +29,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -47,7 +47,7 @@
|
||||
<c>
|
||||
<i>1</i>
|
||||
<c>
|
||||
<f>2</f>
|
||||
<f>1</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -58,7 +58,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>2</f>
|
||||
<f>1</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -70,7 +70,7 @@
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>4</defaultFormatIndex>
|
||||
<defaultFormatIndex>3</defaultFormatIndex>
|
||||
<height>2</height>
|
||||
<vgRows>2</vgRows>
|
||||
<merge>
|
||||
@@ -97,7 +97,6 @@
|
||||
<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="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<border>0</border>
|
||||
@@ -105,10 +104,6 @@
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -30,25 +30,25 @@
|
||||
<formatIndex>3</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Номер</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Товар</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Количество</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -60,7 +60,7 @@
|
||||
<c>
|
||||
<i>2</i>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>6</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -71,14 +71,14 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<parameter>Всего</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>9</defaultFormatIndex>
|
||||
<defaultFormatIndex>8</defaultFormatIndex>
|
||||
<height>3</height>
|
||||
<vgRows>3</vgRows>
|
||||
<merge>
|
||||
@@ -119,40 +119,32 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<height>20</height>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<topBorder>0</topBorder>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<topBorder>0</topBorder>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
|
||||
@@ -67,20 +67,18 @@
|
||||
<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="10" bold="false" italic="true" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>2</font>
|
||||
<font>1</font>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -53,9 +53,7 @@
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Template</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -53,32 +53,32 @@
|
||||
<formatIndex>2</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<parameter>НомерСтроки</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<parameter>Товар</parameter>
|
||||
<detailParameter>Номенклатура</detailParameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Количество</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Цена</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -90,7 +90,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>5</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -101,14 +101,14 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>6</f>
|
||||
<parameter>Всего</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>8</defaultFormatIndex>
|
||||
<defaultFormatIndex>7</defaultFormatIndex>
|
||||
<height>4</height>
|
||||
<vgRows>4</vgRows>
|
||||
<merge>
|
||||
@@ -169,37 +169,29 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<topBorder>0</topBorder>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<topBorder>0</topBorder>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
|
||||
@@ -18,27 +18,27 @@
|
||||
<formatIndex>1</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<parameter>НомерСтроки</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<parameter>Товар</parameter>
|
||||
<detailParameter>Номенклатура</detailParameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>4</defaultFormatIndex>
|
||||
<defaultFormatIndex>3</defaultFormatIndex>
|
||||
<height>1</height>
|
||||
<vgRows>1</vgRows>
|
||||
<namedItem xsi:type="NamedItemCells">
|
||||
@@ -54,16 +54,10 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
|
||||
@@ -43,9 +43,7 @@
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -139,13 +139,10 @@
|
||||
<endColumn>-1</endColumn>
|
||||
</area>
|
||||
</namedItem>
|
||||
<font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Template</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
<c>
|
||||
<i>1</i>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -81,7 +81,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -98,32 +98,32 @@
|
||||
<formatIndex>3</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Номер</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Имя</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Код</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>5</f>
|
||||
<f>4</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>6</defaultFormatIndex>
|
||||
<defaultFormatIndex>5</defaultFormatIndex>
|
||||
<height>4</height>
|
||||
<vgRows>4</vgRows>
|
||||
<merge>
|
||||
@@ -181,16 +181,15 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
@@ -198,11 +197,6 @@
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
|
||||
@@ -60,31 +60,31 @@
|
||||
<formatIndex>5</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>6</f>
|
||||
<parameter>Номер</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>6</f>
|
||||
<parameter>Товар</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>6</f>
|
||||
<parameter>ЕдИзм</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<parameter>Кол</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>8</f>
|
||||
<f>7</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -96,7 +96,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>9</f>
|
||||
<f>8</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -107,7 +107,7 @@
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>10</f>
|
||||
<f>9</f>
|
||||
<parameter>Всего</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -155,7 +155,6 @@
|
||||
<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"/>
|
||||
<format>
|
||||
@@ -168,7 +167,7 @@
|
||||
<height>20</height>
|
||||
</format>
|
||||
<format>
|
||||
<font>2</font>
|
||||
<font>1</font>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
@@ -176,27 +175,21 @@
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<topBorder>0</topBorder>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<font>0</font>
|
||||
<topBorder>0</topBorder>
|
||||
<horizontalAlignment>Right</horizontalAlignment>
|
||||
<fillType>Parameter</fillType>
|
||||
|
||||
@@ -18,20 +18,20 @@
|
||||
<formatIndex>1</formatIndex>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<parameter>Ключ</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>3</f>
|
||||
<f>2</f>
|
||||
<parameter>Значение</parameter>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>4</defaultFormatIndex>
|
||||
<defaultFormatIndex>3</defaultFormatIndex>
|
||||
<height>1</height>
|
||||
<vgRows>1</vgRows>
|
||||
<namedItem xsi:type="NamedItemCells">
|
||||
@@ -47,16 +47,10 @@
|
||||
<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"/>
|
||||
<format>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<border>0</border>
|
||||
<fillType>Parameter</fillType>
|
||||
</format>
|
||||
|
||||
Reference in New Issue
Block a user