mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-06-15 02:14:57 +03:00
feat(form-decompile,form-compile): дополнения командной панели таблицы (Search/ViewStatus/SearchControl)
Дополнения встроенного поиска таблицы как тип-элементы — обе позиции:
(1) Кастомные (в AutoCommandBar/ChildItems) → элементы в commandBar:
{ "searchString": "Имя", "source": "Список", "width": 15, ... }
Полный набор свойств поля (Emit-Layout/Appearance/CommonFlags/tooltip);
source дефолт = родительская таблица; horizontalLocation auto/left/right.
(2) Стандартные (авто-генерация на уровне таблицы) → per-table карта
отклонений additions: { viewStatus: { horizontalLocation: "left" } }.
Тип-как-ключ searchString/viewStatus/searchControl, forgiving-синонимы
(XML-тег, <Type>, рус.имя, имя «Вид» из конфигуратора). Декомпилятор разводит
по позиции (ChildItems → commandBar.children; прямые дети <Table> → карта
additions, только deviations); убран из COMPANION_TAGS, +ELEMENT_KEY.
Хвост: CommandBarLocation авто-вывод для дин-список-таблицы — суппресс-маркер
"" (компилятор инжектит None, верно по корпусу 203≈213; декомпилятор инвертирует:
нет тега → "", None → опускает, иначе → захват).
Зеркало py (байт-в-байт). Синтет-фикстура (upload/epf/ДополненияКП) — perfect
round-trip LOST 0/ADDED 0. Кейс dynamic-list-form расширен (кастомное+override),
сертифицирован в 1С. Регресс 39/39 ps1+py.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -24,10 +24,15 @@
|
||||
} }
|
||||
],
|
||||
"elements": [
|
||||
{ "table": "Список", "path": "Список", "columns": [
|
||||
{ "input": "Код", "path": "Список.Code" },
|
||||
{ "input": "Наименование", "path": "Список.Description" }
|
||||
]}
|
||||
{ "table": "Список", "path": "Список",
|
||||
"additions": { "viewStatus": { "horizontalLocation": "left" } },
|
||||
"commandBar": [
|
||||
{ "searchString": "ПоискСписка", "source": "Список", "width": 15, "horizontalStretch": true }
|
||||
],
|
||||
"columns": [
|
||||
{ "input": "Код", "path": "Список.Code" },
|
||||
{ "input": "Наименование", "path": "Список.Description" }
|
||||
]}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
+30
-18
@@ -29,49 +29,61 @@
|
||||
<AllowGettingCurrentRowURL>true</AllowGettingCurrentRowURL>
|
||||
<ContextMenu name="СписокКонтекстноеМеню" id="2"/>
|
||||
<AutoCommandBar name="СписокКоманднаяПанель" id="3">
|
||||
<Autofill>false</Autofill>
|
||||
<ChildItems>
|
||||
<SearchStringAddition name="ПоискСписка" id="4">
|
||||
<AdditionSource>
|
||||
<Item>Список</Item>
|
||||
<Type>SearchStringRepresentation</Type>
|
||||
</AdditionSource>
|
||||
<Width>15</Width>
|
||||
<HorizontalStretch>true</HorizontalStretch>
|
||||
<ContextMenu name="ПоискСпискаКонтекстноеМеню" id="5"/>
|
||||
<ExtendedTooltip name="ПоискСпискаРасширеннаяПодсказка" id="6"/>
|
||||
</SearchStringAddition>
|
||||
</ChildItems>
|
||||
</AutoCommandBar>
|
||||
<ExtendedTooltip name="СписокРасширеннаяПодсказка" id="4"/>
|
||||
<SearchStringAddition name="СписокСтрокаПоиска" id="5">
|
||||
<ExtendedTooltip name="СписокРасширеннаяПодсказка" id="7"/>
|
||||
<SearchStringAddition name="СписокСтрокаПоиска" id="8">
|
||||
<AdditionSource>
|
||||
<Item>Список</Item>
|
||||
<Type>SearchStringRepresentation</Type>
|
||||
</AdditionSource>
|
||||
<ContextMenu name="СписокСтрокаПоискаКонтекстноеМеню" id="6"/>
|
||||
<ExtendedTooltip name="СписокСтрокаПоискаРасширеннаяПодсказка" id="7"/>
|
||||
<ContextMenu name="СписокСтрокаПоискаКонтекстноеМеню" id="9"/>
|
||||
<ExtendedTooltip name="СписокСтрокаПоискаРасширеннаяПодсказка" id="10"/>
|
||||
</SearchStringAddition>
|
||||
<ViewStatusAddition name="СписокСостояниеПросмотра" id="8">
|
||||
<ViewStatusAddition name="СписокСостояниеПросмотра" id="11">
|
||||
<AdditionSource>
|
||||
<Item>Список</Item>
|
||||
<Type>ViewStatusRepresentation</Type>
|
||||
</AdditionSource>
|
||||
<ContextMenu name="СписокСостояниеПросмотраКонтекстноеМеню" id="9"/>
|
||||
<ExtendedTooltip name="СписокСостояниеПросмотраРасширеннаяПодсказка" id="10"/>
|
||||
<HorizontalLocation>Left</HorizontalLocation>
|
||||
<ContextMenu name="СписокСостояниеПросмотраКонтекстноеМеню" id="12"/>
|
||||
<ExtendedTooltip name="СписокСостояниеПросмотраРасширеннаяПодсказка" id="13"/>
|
||||
</ViewStatusAddition>
|
||||
<SearchControlAddition name="СписокУправлениеПоиском" id="11">
|
||||
<SearchControlAddition name="СписокУправлениеПоиском" id="14">
|
||||
<AdditionSource>
|
||||
<Item>Список</Item>
|
||||
<Type>SearchControl</Type>
|
||||
</AdditionSource>
|
||||
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="12"/>
|
||||
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="13"/>
|
||||
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="15"/>
|
||||
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="16"/>
|
||||
</SearchControlAddition>
|
||||
<ChildItems>
|
||||
<InputField name="Код" id="14">
|
||||
<InputField name="Код" id="17">
|
||||
<DataPath>Список.Code</DataPath>
|
||||
<ContextMenu name="КодКонтекстноеМеню" id="15"/>
|
||||
<ExtendedTooltip name="КодРасширеннаяПодсказка" id="16"/>
|
||||
<ContextMenu name="КодКонтекстноеМеню" id="18"/>
|
||||
<ExtendedTooltip name="КодРасширеннаяПодсказка" id="19"/>
|
||||
</InputField>
|
||||
<InputField name="Наименование" id="17">
|
||||
<InputField name="Наименование" id="20">
|
||||
<DataPath>Список.Description</DataPath>
|
||||
<ContextMenu name="НаименованиеКонтекстноеМеню" id="18"/>
|
||||
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="19"/>
|
||||
<ContextMenu name="НаименованиеКонтекстноеМеню" id="21"/>
|
||||
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="22"/>
|
||||
</InputField>
|
||||
</ChildItems>
|
||||
</Table>
|
||||
</ChildItems>
|
||||
<Attributes>
|
||||
<Attribute name="Список" id="20">
|
||||
<Attribute name="Список" id="23">
|
||||
<Type>
|
||||
<v8:Type>cfg:DynamicList</v8:Type>
|
||||
</Type>
|
||||
|
||||
Reference in New Issue
Block a user