Files
cc-1c-skills/docs/1c-form-spec.md
T
Nick ShirokovandClaude Opus 5 0737a79522 fix(cfe-borrow): секции формы отбираются по имени, а не по позиции
Свойства уровня формы собирались до первой «визуальной» секции. В этот
список входил CommandSet, который в реальных формах стоит В СЕРЕДИНЕ блока
свойств: у всех 794 форм документов ERP с CommandSet он предшествует
AutoCommandBar, а AutoTime/UsePostingMode/RepostOnWrite идут после него.
Отсечка теряла весь хвост — в одном ERP это 2062 формы.

Отказа загрузки это не давало: платформа принимает форму и молча подставляет
дефолты. На Document.ЧекККМ.ФормаДокумента (УТ) AutoTime DontUse становился
CurrentOrLast, UsePostingMode Regular — Auto; исключённые стандартные команды
(Провести, Записать, Отменить проведение) возвращались в панель.

Граница теперь — AutoCommandBar: он есть в 100% из 30223 форм корпуса, и ни
одно свойство никогда не стоит после него. Отбрасываются явным списком
Events/Attributes/Commands/Parameters/CommandInterface и свойства, значение
которых — имя реквизита формы (ReportResult, DetailsData, VariantAppearance,
GroupList): реквизиты не заимствуются, ссылка повисла бы.

Заодно разобран конфаунд коммита 7abe26af, менявшего три вещи разом с одной
атрибуцией ошибки. По эталонам Конфигуратора («Добавить в расширение»):
- корневой CommandSet переносится дословно — вырезание было ошибкой;
- вложенный CommandSet выбрасывается ЦЕЛИКОМ, а не опустошается до пустого
  контейнера, как делалось;
- RowPictureDataPath — путь к данным, а не индекс картинки: сохраняется при
  заимствовании основного реквизита (Объект.Товары.РасхождениеЗаказ) и
  вырезается без него (Список.DefaultPicture). Переехал в formBindingDataTags.

Спецификация форм утверждала, что свойства идут до CommandSet/AutoCommandBar —
именно это заблуждение и было закодировано. Заменено фактическим порядком
секций, выведенным из корпуса (0 нарушений на 30223 формах). Там же поправлены
значения перечислений AutoTime/UsePostingMode/ReportFormType, которых в корпусе
нет ни одного.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-14 13:10:53 +03:00

1251 lines
48 KiB
Markdown
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.
# 1C Form.xml Format Specification
Спецификация формата управляемых форм 1С:Предприятие 8.3 (version 2.17).
Составлена на основе анализа 7723 форм конфигурации «Бухгалтерия предприятия 3.0.180».
---
## 0. Файловая структура и регистрация
### Файлы формы
Каждая форма объекта конфигурации состоит из 3 файлов:
```
<Объект>/Forms/
ИмяФормы.xml ← метаданные (UUID, имя, синоним, FormType)
ИмяФормы/
Ext/
Form.xml ← определение формы (описано в разделах 1–17)
Form/
Module.bsl ← модуль формы (1С-код)
```
Общие формы (CommonForm) — аналогично, но на верхнем уровне конфигурации:
```
CommonForms/
ИмяФормы.xml ← метаданные (тег <CommonForm>)
ИмяФормы/
Ext/
Form.xml
Form/
Module.bsl
```
### Метаданные формы — шаблон
#### Форма объекта (Document, Catalog, DataProcessor, Report, ...)
```xml
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses"
xmlns:app="http://v8.1c.ru/8.2/managed-application/core"
xmlns:v8="http://v8.1c.ru/8.1/data/core"
xmlns:xr="http://v8.1c.ru/8.3/xcf/readable"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="2.17">
<Form uuid="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX">
<Properties>
<Name>ИмяФормы</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отображаемое имя</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
</Properties>
</Form>
</MetaDataObject>
```
#### CommonForm
```xml
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses"
xmlns:app="http://v8.1c.ru/8.2/managed-application/core"
xmlns:v8="http://v8.1c.ru/8.1/data/core"
xmlns:xr="http://v8.1c.ru/8.3/xcf/readable"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="2.17">
<CommonForm uuid="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX">
<Properties>
<Name>ИмяФормы</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отображаемое имя</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UseStandardCommands>false</UseStandardCommands>
<ExtendedPresentation/>
<Explanation/>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
</Properties>
</CommonForm>
</MetaDataObject>
```
### Регистрация формы
#### В ChildObjects родительского объекта
```xml
<!-- В файле Documents/АвансовыйОтчет.xml (или Catalogs/Контрагенты.xml и т.д.) -->
<ChildObjects>
<Form>ФормаДокумента</Form>
<Form>ФормаСписка</Form>
...
</ChildObjects>
```
CommonForms регистрируются в `Configuration.xml`:
```xml
<ChildObjects>
<CommonForm>ИмяФормы</CommonForm>
...
</ChildObjects>
```
#### DefaultForm в Properties родительского объекта
Формат значения: `ТипОбъекта.ИмяОбъекта.Form.ИмяФормы`
```xml
<Properties>
<DefaultObjectForm>Document.АвансовыйОтчет.Form.ФормаДокумента</DefaultObjectForm>
<DefaultListForm>Document.АвансовыйОтчет.Form.ФормаСписка</DefaultListForm>
<DefaultChoiceForm>Document.АвансовыйОтчет.Form.ФормаВыбора</DefaultChoiceForm>
</Properties>
```
#### Свойства DefaultForm по типам объектов
| Тип объекта | Свойства DefaultForm |
|-------------|---------------------|
| Document | DefaultObjectForm, DefaultListForm, DefaultChoiceForm |
| Catalog | DefaultObjectForm, DefaultFolderForm, DefaultListForm, DefaultChoiceForm, DefaultFolderChoiceForm |
| ChartOfCharacteristicTypes | DefaultObjectForm, DefaultFolderForm, DefaultListForm, DefaultChoiceForm, DefaultFolderChoiceForm |
| ChartOfAccounts | DefaultObjectForm, DefaultListForm, DefaultChoiceForm |
| DataProcessor | DefaultForm |
| Report | DefaultForm |
| InformationRegister | DefaultRecordForm, DefaultListForm |
| ExchangePlan | DefaultObjectForm, DefaultListForm, DefaultChoiceForm |
| BusinessProcess | DefaultObjectForm, DefaultListForm, DefaultChoiceForm |
| Task | DefaultObjectForm, DefaultListForm, DefaultChoiceForm |
| CommonForm | — (регистрируется в Configuration.xml, нет DefaultForm) |
> Report.DefaultForm может указывать на общую форму: `CommonForm.ФормаОтчета`.
---
## 1. Корневой элемент
```xml
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform"
xmlns:app="http://v8.1c.ru/8.2/managed-application/core"
xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config"
xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core"
xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema"
xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings"
xmlns:ent="http://v8.1c.ru/8.1/data/enterprise"
xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform"
xmlns:style="http://v8.1c.ru/8.1/data/ui/style"
xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system"
xmlns:v8="http://v8.1c.ru/8.1/data/core"
xmlns:v8ui="http://v8.1c.ru/8.1/data/ui"
xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web"
xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows"
xmlns:xr="http://v8.1c.ru/8.3/xcf/readable"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="2.17">
...
</Form>
```
Все 17 namespace-деклараций **идентичны** во всех формах конфигурации. Атрибут `version` одинаков во всей выгрузке и определяется платформой выгрузки — по одной версии на релиз (см. [1c-configuration-spec.md §7.1](1c-configuration-spec.md#71-лестница-версий)); примеры ниже приведены для `2.17`.
### Назначение namespace-префиксов
| Префикс | URI | Назначение |
|---------|-----|------------|
| _(default)_ | `http://v8.1c.ru/8.3/xcf/logform` | Основная схема формы |
| `v8` | `http://v8.1c.ru/8.1/data/core` | Базовые типы данных (Type, item, lang, content) |
| `v8ui` | `http://v8.1c.ru/8.1/data/ui` | UI-типы (Color, Font, Border, FormattedString) |
| `cfg` | `http://v8.1c.ru/8.1/data/enterprise/current-config` | Ссылки на объекты конфигурации (CatalogRef, DocumentRef) |
| `xr` | `http://v8.1c.ru/8.3/xcf/readable` | Читаемый формат (Ref, Item, LoadTransparent) |
| `style` | `http://v8.1c.ru/8.1/data/ui/style` | Стили оформления (FormBackColor и т.д.) |
| `web` | `http://v8.1c.ru/8.1/data/ui/colors/web` | Web-цвета |
| `win` | `http://v8.1c.ru/8.1/data/ui/colors/windows` | Windows-цвета |
| `sys` | `http://v8.1c.ru/8.1/data/ui/fonts/system` | Системные шрифты |
| `xs` | `http://www.w3.org/2001/XMLSchema` | XML Schema |
| `xsi` | `http://www.w3.org/2001/XMLSchema-instance` | XML Schema Instance |
| `app` | `http://v8.1c.ru/8.2/managed-application/core` | Ядро управляемого приложения |
| `lf` | `http://v8.1c.ru/8.2/managed-application/logform` | Формы управляемого приложения |
| `dcscor` | `http://v8.1c.ru/8.1/data-composition-system/core` | СКД — ядро |
| `dcssch` | `http://v8.1c.ru/8.1/data-composition-system/schema` | СКД — схема |
| `dcsset` | `http://v8.1c.ru/8.1/data-composition-system/settings` | СКД — настройки |
| `ent` | `http://v8.1c.ru/8.1/data/enterprise` | Данные предприятия |
---
## 2. Структура Form — порядок дочерних элементов
```
<Form>
┌─ Свойства формы (необязательные) — часть до <CommandSet>, часть после
├─ <CommandSet> — исключённые стандартные команды
├─ …продолжение свойств формы (AutoTime, UsePostingMode, RepostOnWrite, ReportResult…)
├─ <AutoCommandBar> — главная командная панель (обязательный, id="-1")
├─ <Events> — обработчики событий формы
├─ <ChildItems> — дерево UI-элементов
├─ <Attributes> — реквизиты формы
├─ <Commands> — пользовательские команды
├─ <Parameters> — параметры открытия формы
└─ <CommandInterface> — командный интерфейс формы
</Form>
```
Порядок **строгий**, а не произвольный: на 30223 формах корпуса (ERP, УТ, УНФ 8.5, БП, общие
формы) не встретилось ни одной пары элементов, идущей в разном порядке в разных формах.
Важно: `<CommandSet>` стоит **в середине блока свойств**, а не перед ним — свойства есть и до, и
после него. У всех 794 форм документов ERP с `CommandSet` он предшествует `AutoCommandBar`, а
`AutoTime`/`UsePostingMode`/`RepostOnWrite` идут **после** `CommandSet`.
Надёжная граница между свойствами и структурными секциями — **`<AutoCommandBar>`**: он присутствует
в 100% форм корпуса, и ни одно свойство никогда не стоит после него. Код, отделяющий свойства от
структуры, должен опираться на него, а не на «первую встреченную секцию».
Полный наблюдаемый порядок:
```
Title · Width · Height · WindowOpeningMode · EnterKeyBehavior · AutoSaveDataInSettings ·
SaveDataInSettings · SaveWindowSettings · SettingsStorage · AutoTitle · AutoURL · Group ·
ChildItemsWidth · ChildrenAlign · HorizontalSpacing · Scale · VerticalSpacing · HorizontalAlign ·
VerticalAlign · AutoFillCheck · Customizable · Enabled · CommandBarLocation · VerticalScroll ·
ScalingMode · ConversationsRepresentation · MobileDeviceCommandBarContent · ScaleVariant ·
CommandSet · GroupList · ShowTitle · CreateButtonsGroupPicture · CreateButtonsGroupTitle ·
ShowCloseButton · CollapseItemsByImportanceVariant · WindowViewMode · ShowCommandBar · AutoTime ·
ReportResult · DetailsData · ReportFormType · UseForFoldersAndItems · UsePostingMode ·
RepostOnWrite · VariantAppearance · AutoShowState · CustomSettingsFolder · ReportResultViewMode ·
ViewModeApplicationOnSetReportResult · AutoCommandBar · Events · ChildItems · Attributes ·
Commands · Parameters · CommandInterface
```
---
## 3. Свойства формы
Прямые дочерние элементы `<Form>` — все необязательные, порядок между ними фиксирован (см. §2):
### Общие свойства (все типы форм)
| Элемент | Тип | Значения | Описание |
|---------|-----|----------|----------|
| `<Title>` | multilang | — | Заголовок формы |
| `<Width>` | int | 60, 67... | Ширина формы в символах |
| `<Height>` | int | — | Высота формы в символах |
| `<Group>` | enum | `Vertical`, `Horizontal`, `AlwaysHorizontal`, `AlwaysVertical` | Направление размещения |
| `<WindowOpeningMode>` | enum | `LockOwnerWindow`, `Modeless` | Режим открытия окна |
| `<EnterKeyBehavior>` | enum | `DefaultButton`, `NewLine` | Действие по Enter |
| `<AutoTitle>` | bool | `true`/`false` | Автозаголовок |
| `<AutoURL>` | bool | `true`/`false` | Авто-URL |
| `<AutoFillCheck>` | bool | `true`/`false` | Автопроверка заполнения |
| `<Customizable>` | bool | `true`/`false` | Разрешить настройку |
| `<CommandBarLocation>` | enum | `Top`, `Bottom`, `None` | Расположение панели команд |
| `<VerticalScroll>` | enum | `useIfNecessary`, `Auto`, `AlwaysShow`, `Never` | Вертикальная прокрутка |
| `<ScalingMode>` | enum | — | Режим масштабирования |
### Свойства сохранения данных (DataProcessors)
| Элемент | Значения | Описание |
|---------|----------|----------|
| `<SaveDataInSettings>` | `UseList`, `Use`, `DontUse` | Сохранять данные в настройках |
| `<AutoSaveDataInSettings>` | `Use`, `DontUse` | Автосохранение |
### Свойства документов (Documents)
| Элемент | Значения | Описание |
|---------|----------|----------|
| `<AutoTime>` | `CurrentOrLast`, `DontUse`, `Current`, `Last` | Управление временем документа. В корпусе встречаются только `CurrentOrLast` и `DontUse` |
| `<UsePostingMode>` | `Auto`, `Regular` | Режим проведения |
| `<RepostOnWrite>` | `true`/`false` | Перепроведение при записи |
### Свойства справочников (Catalogs, ChartsOfAccounts)
| Элемент | Значения | Описание |
|---------|----------|----------|
| `<UseForFoldersAndItems>` | `Folders`, `Items`, `FoldersAndItems` | Назначение формы |
### Свойства отчётов (Reports)
| Элемент | Значения | Описание |
|---------|----------|----------|
| `<ReportResult>` | string | Имя реквизита результата (`Результат`) |
| `<DetailsData>` | string | Имя реквизита расшифровки (`ДанныеРасшифровки`) |
| `<ReportFormType>` | `Main`, `Settings`, `Variant` | Тип формы отчёта |
| `<AutoShowState>` | `Auto`, `Show`, `Hide` | Автоотображение состояния |
| `<ReportResultViewMode>` | `Auto`, `Table`, `Spreadsheet` | Режим отображения результата |
| `<ViewModeApplicationOnSetReportResult>` | `Auto`, `Always`, `Never` | Применение режима |
### Мобильные свойства
| Элемент | Описание |
|---------|----------|
| `<MobileDeviceCommandBarContent>` | Конфигурация панели команд мобильного устройства |
### Матрица свойств по типам форм
| Свойство | CommonForm | Document | Catalog | Report | DataProcessor | InfoRegister |
|----------|:---:|:---:|:---:|:---:|:---:|:---:|
| Title | + | + | + | + | + | + |
| Width | — | — | + | — | + | — |
| WindowOpeningMode | + | + | + | — | + | — |
| AutoTitle | + | + | + | + | + | + |
| CommandBarLocation | + | + | + | + | + | + |
| AutoTime | — | + | — | — | — | — |
| UsePostingMode | — | + | — | — | — | — |
| UseForFoldersAndItems | — | — | + | — | — | — |
| ReportResult | — | — | — | + | — | — |
| SaveDataInSettings | — | — | — | — | + | — |
---
## 4. CommandSet — исключённые команды
```xml
<CommandSet>
<ExcludedCommand>CommandName</ExcludedCommand>
...
</CommandSet>
```
### Стандартные команды диалогов
`OK`, `Cancel`, `Yes`, `No`, `Abort`, `Retry`, `Ignore`, `Help`, `SaveValues`, `RestoreValues`
### Стандартные команды объектов
`Copy`, `Delete`, `SetDeletionMark`, `CreateInitialImage`, `ReadChanges`, `WriteChanges`
### Команды отчётов
`CustomizeForm`
---
## 5. AutoCommandBar — главная панель команд
Всегда присутствует. Фиксированные `name="ФормаКоманднаяПанель"` и `id="-1"`.
```xml
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<HorizontalAlign>Right</HorizontalAlign> <!-- Left | Center | Right -->
<Autofill>false</Autofill> <!-- true | false -->
<EnableContentChange>true</EnableContentChange> <!-- optional -->
<ChildItems>
<!-- Button, ButtonGroup, Popup -->
</ChildItems>
</AutoCommandBar>
```
Может быть пустым (самозакрывающийся тег) или содержать `<ChildItems>` с кнопками.
---
## 6. Events — обработчики событий формы
```xml
<Events>
<Event name="EventName">ИмяОбработчика</Event>
...
</Events>
```
### Все события формы
| Имя события | Контекст | Описание |
|-------------|----------|----------|
| `OnCreateAtServer` | Сервер | Создание формы на сервере (инициализация) |
| `OnOpen` | Клиент | Открытие формы на клиенте |
| `BeforeClose` | Клиент | Перед закрытием формы |
| `OnClose` | Клиент | При закрытии формы |
| `AfterWrite` | Клиент | После записи объекта |
| `BeforeWrite` | Клиент | Перед записью объекта |
| `BeforeWriteAtServer` | Сервер | Перед записью на сервере |
| `OnWriteAtServer` | Сервер | При записи на сервере |
| `AfterWriteAtServer` | Сервер | После записи на сервере |
| `OnReadAtServer` | Сервер | При чтении объекта |
| `NotificationProcessing` | Клиент | Обработка межформенных оповещений |
| `ChoiceProcessing` | Клиент | Обработка результата выбора |
| `NewWriteProcessing` | Сервер | Создание нового объекта |
| `FillCheckProcessingAtServer` | Сервер | Проверка заполнения |
| `OnLoadUserSettingsAtServer` | Сервер | Загрузка пользовательских настроек (отчёты) |
| `OnSaveUserSettingsAtServer` | Сервер | Сохранение пользовательских настроек (отчёты) |
| `URLProcessing` | Клиент | Обработка навигационных ссылок |
### Типичные комбинации по типам форм
**Диалог:** `OnCreateAtServer` + `OnOpen`
**Документ:** `OnCreateAtServer` + `OnOpen` + `BeforeWriteAtServer` + `OnWriteAtServer` + `AfterWrite`
**Справочник:** `OnCreateAtServer` + `OnOpen` + `OnReadAtServer` + `BeforeWriteAtServer` + `AfterWrite` + `NotificationProcessing`
**Отчёт:** `OnCreateAtServer` + `OnOpen` + `BeforeClose` + `OnClose` + `OnLoadUserSettingsAtServer` + `OnSaveUserSettingsAtServer` + `NotificationProcessing` + `ChoiceProcessing` + `URLProcessing`
---
## 7. ChildItems — дерево UI-элементов
### 7.1. Иерархия вложенности
```
ChildItems
├── UsualGroup → содержит любые элементы
│ └── ChildItems
├── Pages → содержит только Page
│ └── ChildItems
│ └── Page → содержит любые элементы
│ └── ChildItems
├── Table → содержит колонки (InputField, LabelField, CheckBoxField, PictureField)
│ └── ChildItems
├── CommandBar → содержит Button, ButtonGroup, Popup
│ └── ChildItems
├── InputField (лист)
├── LabelField (лист)
├── CheckBoxField (лист)
├── LabelDecoration (лист)
├── PictureDecoration (лист)
├── PictureField (лист)
├── CalendarField (лист)
└── Button (лист)
```
### 7.2. Общие свойства всех элементов
Каждый UI-элемент имеет атрибуты `name` (string) и `id` (int). Кроме того, большинство элементов поддерживают:
| Свойство | Тип | Описание |
|----------|-----|----------|
| `<Title>` | multilang | Заголовок |
| `<ToolTip>` | multilang | Подсказка |
| `<Visible>` | bool | Видимость |
| `<Enabled>` | bool | Доступность |
| `<ReadOnly>` | bool | Только чтение |
| `<Width>` | int | Ширина |
| `<Height>` | int | Высота |
| `<HorizontalStretch>` | bool | Растягивание по горизонтали |
| `<VerticalStretch>` | bool | Растягивание по вертикали |
| `<HorizontalAlign>` | enum | `Left` / `Center` / `Right` |
| `<VerticalAlign>` | enum | `Top` / `Center` / `Bottom` |
| `<GroupHorizontalAlign>` | enum | Горизонтальное выравнивание в группе |
| `<GroupVerticalAlign>` | enum | Вертикальное выравнивание в группе |
| `<SkipOnInput>` | bool | Пропускать при вводе |
| `<ContextMenu>` | ref | Контекстное меню (name + id) |
| `<ExtendedTooltip>` | ref | Расширенная подсказка (name + id) |
| `<Events>` | block | Обработчики событий элемента |
### 7.3. Мультиязычный формат (multilang)
```xml
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текст на русском</v8:content>
</v8:item>
</Title>
```
Атрибут `formatted="true"` на `<Title>` означает форматированную строку.
---
## 8. Типы UI-элементов — полное описание
### 8.1. UsualGroup — группа элементов
Основной контейнер для компоновки. Используется в ~90% форм.
```xml
<UsualGroup name="..." id="...">
<!-- Компоновка -->
<Group>Vertical | Horizontal | AlwaysHorizontal | AlwaysVertical</Group>
<Behavior>Usual | Collapsible | CommandBar</Behavior>
<Representation>None | NormalSeparation | WeakSeparation | StrongSeparation</Representation>
<ShowTitle>true | false</ShowTitle>
<United>true | false</United>
<!-- Расположение дочерних -->
<ChildItemsWidth>LeftWidest | RightWidest | Equal</ChildItemsWidth>
<HorizontalSpacing>Single | Half | Double</HorizontalSpacing>
<VerticalSpacing>Single | Half | Double</VerticalSpacing>
<ThroughAlign>Use | DontUse</ThroughAlign>
<!-- Внешний вид -->
<BackColor>style:... | web:... | win:...</BackColor>
<TextColor>style:...</TextColor>
<TitleTextColor>style:...</TitleTextColor>
<EnableContentChange>true | false</EnableContentChange>
<!-- Отображение управления свёрткой у Behavior=Collapsible; TitleHyperlink — по умолчанию (не сериализуется) -->
<ControlRepresentation>TitleHyperlink | Picture</ControlRepresentation>
<ChildItems>...</ChildItems>
</UsualGroup>
```
### 8.2. InputField — поле ввода
Основной элемент ввода данных. Используется в ~80% форм.
```xml
<InputField name="..." id="...">
<DataPath>Объект.Организация</DataPath>
<!-- Заголовок -->
<TitleLocation>Left | Right | Top | Bottom | None</TitleLocation>
<TitleHeight>N</TitleHeight>
<TitleWidth>N</TitleWidth>
<!-- Размеры -->
<AutoMaxWidth>true | false</AutoMaxWidth>
<AutoMaxHeight>true | false</AutoMaxHeight>
<!-- Режим редактирования -->
<EditMode>Enter | EnterOnInput</EditMode>
<MultiLine>true | false</MultiLine>
<Wrap>true | false</Wrap>
<ExtendedEdit>true | false</ExtendedEdit>
<PasswordMode>true | false</PasswordMode>
<DefaultItem>true | false</DefaultItem>
<!-- Кнопки -->
<ChoiceButton>true | false</ChoiceButton>
<ChoiceButtonRepresentation>ShowInInputField | ShowInToolbar | Auto</ChoiceButtonRepresentation>
<OpenButton>true | false</OpenButton>
<ClearButton>true | false</ClearButton>
<SpinButton>true | false</SpinButton>
<CreateButton>true | false</CreateButton>
<DropListButton>true | false</DropListButton>
<TextEdit>true | false</TextEdit>
<ListChoiceMode>true | false</ListChoiceMode>
<!-- Автозаполнение и проверка -->
<AutoMarkIncomplete>true | false</AutoMarkIncomplete>
<MarkIncomplete>true | false</MarkIncomplete>
<AutoComplete>true | false</AutoComplete>
<QuickChoice>true | false</QuickChoice>
<ChoiceHistoryOnInput>Auto | Never | Always</ChoiceHistoryOnInput>
<!-- Подсказка ввода -->
<InputHint>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Placeholder text</v8:content>
</v8:item>
</InputHint>
<Mask>маска ввода</Mask>
<!-- Параметры выбора -->
<ChoiceFoldersAndItems>Items | Folders | FoldersAndItems</ChoiceFoldersAndItems>
<ChoiceParameters>
<v8:Parameter>
<v8:Name>name</v8:Name>
<v8:Value>value</v8:Value>
</v8:Parameter>
</ChoiceParameters>
<!-- Стилизация -->
<TextColor>style:... | web:... | win:...</TextColor>
<BackColor>style:... | web:... | win:...</BackColor>
<BorderColor>style:... | web:... | win:...</BorderColor>
<Font>...</Font>
<!-- События -->
<Events>
<Event name="OnChange">...</Event>
<Event name="StartChoice">...</Event>
<Event name="ChoiceProcessing">...</Event>
<Event name="Clearing">...</Event>
<Event name="AutoComplete">...</Event>
<Event name="TextEditEnd">...</Event>
<Event name="Opening">...</Event>
<Event name="OnEditEnd">...</Event>
<Event name="DragCheck">...</Event>
<Event name="Drag">...</Event>
<Event name="DragStart">...</Event>
</Events>
</InputField>
```
### 8.3. Button — кнопка
```xml
<Button name="..." id="...">
<Type>CommandBarButton | UsualButton | Hyperlink</Type>
<CommandName>Form.Command.Name | Form.StandardCommand.Name | CommonCommand.Name</CommandName>
<DataPath>Attribute</DataPath>
<Picture>
<xr:Ref>StdPicture.Name | CommonPicture.Name</xr:Ref>
<xr:LoadTransparent>true | false</xr:LoadTransparent>
</Picture>
<Representation>Auto | Picture | Text | PictureAndText</Representation>
<ShapeRepresentation>Auto | None | Button</ShapeRepresentation>
<DefaultButton>true | false</DefaultButton>
<LocationInCommandBar>InCommandBar | InAdditionalSubmenu | InCommandBarAndInAdditionalSubmenu | Auto</LocationInCommandBar>
<OnlyInAllActions>true | false</OnlyInAllActions>
<Events>
<Event name="Click">...</Event>
</Events>
</Button>
```
### 8.4. Table — таблица
```xml
<Table name="..." id="...">
<DataPath>ТабличныйРеквизит</DataPath>
<RowPictureDataPath>ТабличныйРеквизит.Иконка</RowPictureDataPath>
<RowsPicture>
<xr:Ref>CommonPicture.Name</xr:Ref>
</RowsPicture>
<!-- Отображение -->
<Representation>List | Tree | HierarchicalList</Representation>
<TitleLocation>Top | None</TitleLocation>
<HeightInTableRows>N</HeightInTableRows>
<Header>true | false</Header>
<Footer>true | false</Footer>
<HorizontalLines>true | false</HorizontalLines>
<VerticalLines>true | false</VerticalLines>
<UseAlternationRowColor>true | false</UseAlternationRowColor>
<!-- Редактирование -->
<SelectionMode>SingleRow | MultiRow</SelectionMode>
<ChangeRowSet>true | false</ChangeRowSet>
<ChangeRowOrder>true | false</ChangeRowOrder>
<AutoInsertNewRow>true | false</AutoInsertNewRow>
<!-- Панели -->
<CommandBarLocation>None | Top | Bottom | Auto</CommandBarLocation>
<SearchStringLocation>None | Top | Bottom | CommandBar | Auto</SearchStringLocation>
<ViewStatusLocation>Top | Bottom | None</ViewStatusLocation>
<SearchControlLocation>Top | Bottom | Auto</SearchControlLocation>
<!-- D&D -->
<EnableStartDrag>true | false</EnableStartDrag>
<EnableDrag>true | false</EnableDrag>
<FileDragMode>AsFile | AsFileRef</FileDragMode>
<!-- Дерево -->
<TopLevelParent xsi:nil="true"/>
<ShowRoot>true | false</ShowRoot>
<AllowRootChoice>true | false</AllowRootChoice>
<ChoiceFoldersAndItems>Items | Folders | FoldersAndItems</ChoiceFoldersAndItems>
<!-- Обновление -->
<AutoRefresh>true | false</AutoRefresh>
<AutoRefreshPeriod>seconds</AutoRefreshPeriod>
<UpdateOnDataChange>Auto | DontUpdate</UpdateOnDataChange>
<!-- Исключённые команды таблицы -->
<CommandSet>
<ExcludedCommand>...</ExcludedCommand>
</CommandSet>
<!-- Служебные элементы -->
<ContextMenu name="..." id="..."/>
<AutoCommandBar name="..." id="..."/>
<SearchStringAddition name="..." id="..."/>
<ViewStatusAddition name="..." id="..."/>
<SearchControlAddition name="..." id="..."/>
<!-- Колонки -->
<ChildItems>
<!-- InputField, LabelField, CheckBoxField, PictureField -->
</ChildItems>
<!-- События -->
<Events>
<Event name="Selection">...</Event>
<Event name="OnActivateRow">...</Event>
<Event name="BeforeRowChange">...</Event>
<Event name="BeforeAddRow">...</Event>
<Event name="BeforeDeleteRow">...</Event>
<Event name="AfterDeleteRow">...</Event>
<Event name="DragStart">...</Event>
<Event name="Drag">...</Event>
<Event name="DragCheck">...</Event>
<Event name="Drop">...</Event>
</Events>
</Table>
```
### 8.5. Pages / Page — вкладки
```xml
<Pages name="..." id="...">
<PagesRepresentation>None | TabsOnTop | TabsOnBottom | TabsOnLeft | TabsOnRight</PagesRepresentation>
<Events>
<Event name="OnCurrentPageChange">...</Event>
</Events>
<ChildItems>
<Page name="..." id="...">
<Title>...</Title>
<Picture>
<xr:Ref>StdPicture.Name</xr:Ref>
</Picture>
<ShowTitle>true | false</ShowTitle>
<ChildItemsWidth>LeftWidest | RightWidest | Equal</ChildItemsWidth>
<ChildItems>
<!-- Любые UI-элементы -->
</ChildItems>
</Page>
</ChildItems>
</Pages>
```
### 8.6. CommandBar — командная панель
```xml
<CommandBar name="..." id="...">
<CommandSource>Form | FormCommandPanelGlobalCommands</CommandSource>
<Autofill>true | false</Autofill>
<EnableContentChange>true | false</EnableContentChange>
<HorizontalLocation>Left | Right</HorizontalLocation>
<VerticalLocation>Top | Bottom</VerticalLocation>
<ChildItems>
<!-- Button, ButtonGroup, Popup -->
</ChildItems>
</CommandBar>
```
### 8.7. ButtonGroup — группа кнопок
```xml
<ButtonGroup name="..." id="...">
<Representation>Auto | Compact | Separate</Representation>
<CommandSource>Form | FormCommandPanelGlobalCommands | CommandPanel</CommandSource>
<ChildItems>
<!-- Button, ButtonGroup -->
</ChildItems>
</ButtonGroup>
```
### 8.8. Popup — выпадающее меню
```xml
<Popup name="..." id="...">
<Picture>
<xr:Ref>StdPicture.Print</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Representation>Auto | Picture | Text | PictureAndText</Representation>
<ShapeRepresentation>Auto | None | Button</ShapeRepresentation>
<LocationInCommandBar>InCommandBar | InAdditionalSubmenu | Auto</LocationInCommandBar>
<ChildItems>
<!-- Button, ButtonGroup, Popup -->
</ChildItems>
</Popup>
```
### 8.9. LabelDecoration — декоративная надпись
```xml
<LabelDecoration name="..." id="...">
<Title formatted="true">...</Title>
<AutoMaxWidth>true | false</AutoMaxWidth>
<AutoMaxHeight>true | false</AutoMaxHeight>
<Hyperlink>true | false</Hyperlink>
<ToolTipRepresentation>Auto | Button | None</ToolTipRepresentation>
<TextColor>style:... | web:... | win:...</TextColor>
<BackColor>style:... | web:... | win:...</BackColor>
<Font>...</Font>
<Border width="N">
<v8ui:style xsi:type="v8ui:ControlBorderType">WithoutBorder | WithBorder</v8ui:style>
</Border>
<Events>
<Event name="Click">...</Event>
</Events>
</LabelDecoration>
```
### 8.10. LabelField — поле надписи (привязанное к данным)
```xml
<LabelField name="..." id="...">
<DataPath>Реквизит.Свойство</DataPath>
<TitleLocation>Left | Right | Top | Bottom | None</TitleLocation>
<TitleTextColor>style:...</TitleTextColor>
<PasswordMode>true | false</PasswordMode>
<Hyperlink>true | false</Hyperlink>
<TextColor>style:... | web:... | win:...</TextColor>
<BackColor>style:... | web:... | win:...</BackColor>
<Font>...</Font>
<Events>
<Event name="Click">...</Event>
<Event name="URLProcessing">...</Event>
</Events>
</LabelField>
```
### 8.11. CheckBoxField — флажок
```xml
<CheckBoxField name="..." id="...">
<DataPath>Реквизит.Свойство</DataPath>
<TitleLocation>Left | Right | Top | Bottom | None</TitleLocation>
<CheckBoxType>Auto | Checkbox | Tumbler</CheckBoxType>
<EditMode>Enter | EnterOnInput</EditMode>
<Events>
<Event name="OnChange">...</Event>
</Events>
</CheckBoxField>
```
### 8.12. PictureDecoration — декоративная картинка
```xml
<PictureDecoration name="..." id="...">
<Picture>
<xr:Ref>StdPicture.Name | CommonPicture.Name</xr:Ref>
<xr:LoadTransparent>true | false</xr:LoadTransparent>
</Picture>
<Zoomable>true | false</Zoomable>
<NonselectedPictureText>текст</NonselectedPictureText>
<Hyperlink>true | false</Hyperlink>
<FileDragMode>AsFile | AsFileRef</FileDragMode>
<DisplayImportance>Auto | VeryLow | Low | Normal | High | VeryHigh</DisplayImportance>
<Border width="N">
<v8ui:style xsi:type="v8ui:ControlBorderType">WithoutBorder | WithBorder</v8ui:style>
</Border>
<Events>
<Event name="Click">...</Event>
</Events>
</PictureDecoration>
```
### 8.13. PictureField — поле картинки (привязанное к данным)
```xml
<PictureField name="..." id="...">
<DataPath>Реквизит.Свойство</DataPath>
<TitleLocation>Left | Right | Top | Bottom | None</TitleLocation>
<ValuesPicture>
<xr:Ref>CommonPicture.Name</xr:Ref>
</ValuesPicture>
<Zoomable>true | false</Zoomable>
<NonselectedPictureText>текст</NonselectedPictureText>
<FileDragMode>AsFile | AsFileRef</FileDragMode>
<Border width="N">
<v8ui:style xsi:type="v8ui:ControlBorderType">WithoutBorder | WithBorder</v8ui:style>
</Border>
<Events>
<Event name="Click">...</Event>
<Event name="StartDrag">...</Event>
<Event name="DragCheck">...</Event>
<Event name="Drag">...</Event>
</Events>
</PictureField>
```
### 8.14. CalendarField — календарь
```xml
<CalendarField name="..." id="...">
<DataPath>Реквизит.Дата</DataPath>
<TitleLocation>Left | Right | Top | Bottom | None</TitleLocation>
<WidthInMonths>N</WidthInMonths>
<HeightInWeeks>N</HeightInWeeks>
<ShowCurrentDate>true | false</ShowCurrentDate>
<BeginOfRepresentationPeriod>date</BeginOfRepresentationPeriod>
<EndOfRepresentationPeriod>date</EndOfRepresentationPeriod>
<Events>
<Event name="Selection">...</Event>
<Event name="OnPeriodOutput">...</Event>
</Events>
</CalendarField>
```
---
## 9. Attributes — реквизиты формы
```xml
<Attributes>
<Attribute name="ИмяРеквизита" id="N">
<Title>...</Title> <!-- multilang, необязательный -->
<ToolTip>...</ToolTip> <!-- multilang, необязательный -->
<Type>...</Type> <!-- определение типа -->
<MainAttribute>true</MainAttribute> <!-- основной реквизит формы -->
<SavedData>true</SavedData> <!-- сохраняемые данные -->
<FillChecking>Show | DontShow</FillChecking> <!-- проверка заполнения -->
<UseAlwaysAttributes>true</UseAlwaysAttributes>
<Columns>...</Columns> <!-- для ValueTable/ValueTree -->
</Attribute>
</Attributes>
```
### 9.1. Система типов
#### Примитивные типы (xs:*)
```xml
<!-- Строка -->
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>100</v8:Length> <!-- 0 = неограниченная -->
<v8:AllowedLength>Variable</v8:AllowedLength> <!-- Variable | Fixed -->
</v8:StringQualifiers>
</Type>
<!-- Число -->
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>15</v8:Digits> <!-- всего цифр -->
<v8:FractionDigits>2</v8:FractionDigits> <!-- дробная часть -->
<v8:AllowedSign>Any</v8:AllowedSign> <!-- Any | Nonnegative -->
</v8:NumberQualifiers>
</Type>
<!-- Булево -->
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<!-- Дата -->
<Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:DateQualifiers>
<v8:DateFractions>Date</v8:DateFractions> <!-- Date | Time | DateTime -->
</v8:DateQualifiers>
</Type>
<!-- Двоичные данные -->
<Type>
<v8:Type>xs:binary</v8:Type>
<v8:BinaryDataQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:BinaryDataQualifiers>
</Type>
```
#### Ссылочные типы (cfg:*)
| Шаблон | Пример | Описание |
|--------|--------|----------|
| `cfg:CatalogRef.<Имя>` | `cfg:CatalogRef.Организации` | Ссылка на элемент справочника |
| `cfg:CatalogObject.<Имя>` | `cfg:CatalogObject.Контрагенты` | Объект справочника |
| `cfg:DocumentRef.<Имя>` | `cfg:DocumentRef.СчетФактура` | Ссылка на документ |
| `cfg:DocumentObject.<Имя>` | `cfg:DocumentObject.ПроцессПокупки` | Объект документа |
| `cfg:EnumRef.<Имя>` | `cfg:EnumRef.СпособДоставки` | Ссылка на перечисление |
| `cfg:ChartOfAccountsRef.<Имя>` | `cfg:ChartOfAccountsRef.Хозрасчетный` | Ссылка на план счетов |
| `cfg:ChartOfCalculationTypesRef.<Имя>` | — | Ссылка на план видов расчёта |
| `cfg:ChartOfCharacteristicTypesRef.<Имя>` | — | Ссылка на план видов характеристик |
| `cfg:ExchangePlanRef.<Имя>` | `cfg:ExchangePlanRef.АвтономнаяРабота` | Ссылка на план обмена |
| `cfg:BusinessProcessRef.<Имя>` | — | Ссылка на бизнес-процесс |
| `cfg:TaskRef.<Имя>` | — | Ссылка на задачу |
| `cfg:InformationRegisterRecordSet.<Имя>` | — | Набор записей регистра сведений |
| `cfg:InformationRegisterRecordManager.<Имя>` | — | Менеджер записи регистра сведений |
| `cfg:AccumulationRegisterRecordSet.<Имя>` | — | Набор записей регистра накопления |
| `cfg:AccountingRegisterRecordSet.<Имя>` | — | Набор записей регистра бухгалтерии |
| `cfg:ChartOfAccountsObject.<Имя>` | — | Объект плана счетов |
| `cfg:ChartOfCharacteristicTypesObject.<Имя>` | — | Объект ПВХ |
| `cfg:ChartOfCalculationTypesObject.<Имя>` | — | Объект плана видов расчёта |
| `cfg:ExchangePlanObject.<Имя>` | — | Объект плана обмена |
| `cfg:BusinessProcessObject.<Имя>` | — | Объект бизнес-процесса |
| `cfg:TaskObject.<Имя>` | — | Объект задачи |
| `cfg:ConstantsSet` | — | Набор констант |
| `cfg:DataProcessorObject.<Имя>` | — | Объект обработки |
| `cfg:ReportObject.<Имя>` | — | Объект отчёта |
| `cfg:DynamicList` | — | Динамический список |
#### Платформенные типы (v8:*)
| Тип | Описание |
|-----|----------|
| `v8:ValueListType` | Список значений |
| `v8:ValueTable` | Таблица значений |
| `v8:ValueTree` | Дерево значений |
| `v8:TypeDescription` | Описание типов |
| `v8:Universal` | Произвольный тип |
| `v8:FixedArray` | Фиксированный массив |
| `v8:FixedStructure` | Фиксированная структура |
| `v8:FillChecking` | Проверка заполнения |
| `v8:Null` | Null |
| `v8:StandardPeriod` | Стандартный период |
| `v8:StandardBeginningDate` | Стандартная начальная дата |
| `v8:Type` | Тип |
| `v8:UUID` | Уникальный идентификатор |
#### UI-типы (v8ui:*)
| Тип | Описание |
|-----|----------|
| `v8ui:FormattedString` | Форматированная строка |
| `v8ui:Picture` | Картинка |
| `v8ui:Color` | Цвет |
| `v8ui:Font` | Шрифт |
| `v8ui:SizeChangeMode` | Режим изменения размера |
| `v8ui:VerticalAlign` | Вертикальное выравнивание |
| `v8ui:HorizontalAlign` | Горизонтальное выравнивание |
#### Типы СКД (dcs*:*)
| Тип | Описание |
|-----|----------|
| `dcsset:DataCompositionSettings` | Настройки СКД |
| `dcssch:DataCompositionSchema` | Схема СКД |
| `dcscor:DataCompositionComparisonType` | Тип сравнения СКД |
| `dcsset:Filter` | Отбор СКД |
| `dcsset:SettingsComposer` | Компоновщик настроек |
| `dcsset:DataCompositionFieldPlacement` | Размещение поля СКД |
| `dcscor:DataCompositionGroupType` | Тип группировки |
| `dcscor:DataCompositionPeriodAdditionType` | Тип дополнения периода |
| `dcscor:DataCompositionSortDirection` | Направление сортировки |
| `dcscor:Field` | Поле СКД |
#### Типы предприятия (ent:*)
| Тип | Описание |
|-----|----------|
| `ent:AccountType` | Тип счёта (Активный/Пассивный/АктивноПассивный) |
| `ent:AccumulationRecordType` | Тип движения регистра накопления (Приход/Расход) |
| `ent:AccountingRecordType` | Тип бухгалтерской записи |
#### Пустой тип
```xml
<Type/> <!-- нетипизированный / произвольный -->
```
### 9.2. Составные типы
Несколько типов в одном реквизите:
```xml
<Type>
<v8:Type>cfg:CatalogRef.Организации</v8:Type>
<v8:Type>cfg:CatalogRef.ИндивидуальныеПредприниматели</v8:Type>
<v8:Type>cfg:CatalogRef.Контрагенты</v8:Type>
</Type>
```
### 9.3. ValueTable / ValueTree с колонками
```xml
<Attribute name="Строки" id="5">
<Type>
<v8:Type>v8:ValueTable</v8:Type>
</Type>
<Columns>
<Column name="Номенклатура" id="1">
<Title>...</Title>
<Type>
<v8:Type>cfg:CatalogRef.Номенклатура</v8:Type>
</Type>
</Column>
<Column name="Количество" id="2">
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>10</v8:Digits>
<v8:FractionDigits>3</v8:FractionDigits>
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Column>
</Columns>
</Attribute>
```
---
## 10. Parameters — параметры формы
```xml
<Parameters>
<Parameter name="ИмяПараметра">
<Type>...</Type> <!-- идентично типам Attributes -->
<KeyParameter>true</KeyParameter> <!-- ключевой параметр -->
</Parameter>
</Parameters>
```
Параметры **не имеют** атрибута `id`. Типы — те же, что для Attributes.
---
## 11. Commands — команды формы
```xml
<Commands>
<Command name="ИмяКоманды" id="N">
<Title>...</Title> <!-- multilang -->
<ToolTip>...</ToolTip> <!-- multilang -->
<Picture>
<xr:Ref>StdPicture.Refresh</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>ИмяОбработчика</Action> <!-- имя процедуры обработки -->
<Shortcut>Ctrl+S</Shortcut> <!-- клавиатурное сочетание -->
<Representation>Auto | Picture | Text | PictureAndText | TextPicture | None | Compact</Representation>
<CurrentRowUse>DontUse | Use | Auto</CurrentRowUse>
<ModifiesData>true | false</ModifiesData>
<ModifiesSavedData>true | false</ModifiesSavedData>
<ChangedStateSavedData>true | false</ChangedStateSavedData>
<Use>Auto</Use>
<Mark>true | false</Mark>
<ParameterUse>...</ParameterUse>
</Command>
</Commands>
```
---
## 12. Ссылки на картинки
Два вида ссылок:
```xml
<!-- Стандартная картинка платформы -->
<xr:Ref>StdPicture.Refresh</xr:Ref>
<!-- Общая картинка конфигурации -->
<xr:Ref>CommonPicture.ЗаполнитьФорму</xr:Ref>
```
С прозрачностью:
```xml
<Picture>
<xr:Ref>StdPicture.Print</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
```
---
## 13. Ссылки на стили, цвета, шрифты
```xml
<!-- Стиль -->
<BackColor>style:FormBackColor</BackColor>
<!-- Web-цвет -->
<TextColor>web:Red</TextColor>
<!-- Windows-цвет -->
<BackColor>win:ButtonFace</BackColor>
<!-- Системный шрифт -->
<Font>sys:DefaultGUIFont</Font>
```
---
## 14. Рамки (Border)
```xml
<Border width="1">
<v8ui:style xsi:type="v8ui:ControlBorderType">WithoutBorder</v8ui:style>
</Border>
```
Значения `ControlBorderType`: `WithoutBorder`, `WithBorder`.
---
## 15. DataPath — привязка к данным
Формат пути:
| Пример | Описание |
|--------|----------|
| `Объект.Организация` | Реквизит основного объекта формы |
| `Объект.Товары.Номенклатура` | Колонка табличной части объекта |
| `Отчет.НачалоПериода` | Параметр отчёта |
| `Запись.ОКОФ` | Поле записи регистра |
| `ТекстСообщения` | Реквизит формы верхнего уровня |
---
## 16. Статистика использования элементов
| Тип элемента | Частота |
|--------------|---------|
| UsualGroup | ~90% форм |
| Button | ~85% |
| InputField | ~80% |
| LabelDecoration | ~75% |
| CommandBar | ~70% |
| Table | ~60% |
| LabelField | ~60% |
| Pages / Page | ~55% |
| ButtonGroup | ~50% |
| CheckBoxField | ~45% |
| Popup | ~40% |
| PictureDecoration | ~40% |
| PictureField | ~15% |
| RadioButtonField | ~8.5% |
| CalendarField | ~5% |
---
## 17. Элементы, не встреченные в конфигурации
Следующие элементы управления существуют в платформе, но не использованы в БП 3.0:
- `TrackBarField`
- `ProgressBarField`
- `TextDocumentField`
- `SpreadSheetDocumentField`
- `HTMLDocumentField`
- `ChartField`
- `GanttChartField`
- `PlannerField`
- `GraphicalSchemaField`
- `FormattedDocumentField`