Иногда встречаются случаи, когда приходится описывать схему компоновки данных при помощи встроенного языка.
Данная обработка позволяет сформировать код по уже имеющейся схеме.
В тонком клиенте доступна загрузка схемы только из файла.
В толстом клиенте появляется возможность ещё использовать конструктор схемы компоновки данных.
В качестве примера генерации кода возьмем схему отчета «_ДемоДинамикаИзмененийФайлов» из демо базы БСП 3.1.3.331
<?xml version="1.0" encoding="UTF-8"?>
<DataCompositionSchema xmlns="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcscom="http://v8.1c.ru/8.1/data-composition-system/common" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<dataSource>
<name>ИсточникДанных1</name>
<dataSourceType>Local</dataSourceType>
</dataSource>
<dataSet xsi:type="DataSetQuery">
<name>ДинамикаАрхива</name>
<field xsi:type="DataSetFieldField">
<dataPath>Период</dataPath>
<field>Период</field>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Период</v8:content>
</v8:item>
</title>
<role>
<dcscom:periodNumber>1</dcscom:periodNumber>
<dcscom:periodType>Main</dcscom:periodType>
</role>
<appearance/>
<inputParameters/>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>Том</dataPath>
<field>Том</field>
<appearance/>
<inputParameters/>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>Количество</dataPath>
<field>Количество</field>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Количество</v8:content>
</v8:item>
</title>
<appearance/>
<inputParameters/>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>Автор</dataPath>
<field>Автор</field>
<appearance/>
<inputParameters/>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>Размер</dataPath>
<field>Размер</field>
<appearance/>
<inputParameters/>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>Расширение</dataPath>
<field>Расширение</field>
<appearance/>
<inputParameters/>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>Ссылка</dataPath>
<field>Ссылка</field>
<appearance/>
<inputParameters/>
</field>
<dataSource>ИсточникДанных1</dataSource>
<query>ВЫБРАТЬ РАЗРЕШЕННЫЕ
НАЧАЛОПЕРИОДА(ВерсииФайлов.ДатаСоздания, ДЕНЬ) КАК Период,
ВерсииФайлов.Ссылка КАК Ссылка,
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВерсииФайлов.Ссылка) КАК Количество,
ВерсииФайлов.Размер КАК Размер,
ВерсииФайлов.Расширение,
ВерсииФайлов.Том,
ВерсииФайлов.Автор
ИЗ
Справочник.ВерсииФайлов КАК ВерсииФайлов
{ГДЕ
(ВерсииФайлов.ДатаМодификацииФайла МЕЖДУ &НачалоПериода И &КонецПериода)}
СГРУППИРОВАТЬ ПО
ВерсииФайлов.Ссылка,
ВерсииФайлов.Размер,
ВерсииФайлов.Расширение,
ВерсииФайлов.Том,
ВерсииФайлов.Автор,
НАЧАЛОПЕРИОДА(ВерсииФайлов.ДатаСоздания, ДЕНЬ)</query>
</dataSet>
<totalField>
<dataPath>Количество</dataPath>
<expression>Сумма(Количество)</expression>
</totalField>
<parameter>
<name>Период</name>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Период</v8:content>
</v8:item>
</title>
<valueType>
<v8:Type>v8:StandardPeriod</v8:Type>
</valueType>
<value xsi:type="v8:StandardPeriod">
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
<v8:startDate>0001-01-01T00:00:00</v8:startDate>
<v8:endDate>0001-01-01T00:00:00</v8:endDate>
</value>
<useRestriction>false</useRestriction>
</parameter>
<parameter>
<name>НачалоПериода</name>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Начало периода</v8:content>
</v8:item>
</title>
<valueType>
<v8:Type>xs:dateTime</v8:Type>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</valueType>
<value xsi:type="xs:dateTime">0001-01-01T00:00:00</value>
<useRestriction>true</useRestriction>
<expression>&Период.ДатаНачала</expression>
</parameter>
<parameter>
<name>КонецПериода</name>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Конец периода</v8:content>
</v8:item>
</title>
<valueType>
<v8:Type>xs:dateTime</v8:Type>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</valueType>
<value xsi:type="xs:dateTime">0001-01-01T00:00:00</value>
<useRestriction>true</useRestriction>
<expression>&Период.ДатаОкончания</expression>
</parameter>
<parameter>
<name>ВсеПользователи</name>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Для проверки предопределенных элементов в модели сервиса</v8:content>
</v8:item>
</title>
<valueType>
<v8:Type xmlns:d4p1="http://v8.1c.ru/8.1/data/enterprise/current-config">d4p1:CatalogRef.ГруппыПользователей</v8:Type>
</valueType>
<value xsi:type="dcscor:DesignTimeValue">Справочник.ГруппыПользователей.ВсеПользователи</value>
<useRestriction>false</useRestriction>
<availableAsField>false</availableAsField>
</parameter>
<parameter>
<name>АвторВерсии</name>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Автор версии</v8:content>
</v8:item>
</title>
<valueType>
<v8:Type xmlns:d4p1="http://v8.1c.ru/8.1/data/enterprise/current-config">d4p1:CatalogRef.Файлы</v8:Type>
<v8:Type>xs:decimal</v8:Type>
<v8:Type xmlns:d4p1="http://v8.1c.ru/8.1/data/enterprise/current-config">d4p1:CatalogRef.Пользователи</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>15</v8:Digits>
<v8:FractionDigits>2</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</valueType>
<useRestriction>false</useRestriction>
<valueListAllowed>true</valueListAllowed>
<inputParameters>
<dcscor:item>
<dcscor:parameter>СвязиПараметровВыбора</dcscor:parameter>
<dcscor:value xsi:type="dcscor:ChoiceParameterLinks">
<dcscor:item>
<dcscor:choiceParameter>Ссылка</dcscor:choiceParameter>
<dcscor:value>ПараметрыДанных.Автор</dcscor:value>
<dcscor:mode xmlns:d7p1="http://v8.1c.ru/8.1/data/enterprise" xsi:type="d7p1:LinkedValueChangeMode">Clear</dcscor:mode>
</dcscor:item>
</dcscor:value>
</dcscor:item>
<dcscor:item>
<dcscor:parameter>СвязьПоТипу</dcscor:parameter>
<dcscor:value xsi:type="dcscor:TypeLink">
<dcscor:field>ПараметрыДанных.Автор</dcscor:field>
</dcscor:value>
</dcscor:item>
</inputParameters>
</parameter>
<parameter>
<name>Вид анализа</name>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Вид анализа</v8:content>
</v8:item>
</title>
<valueType>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>0</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</valueType>
<value xsi:type="xs:decimal">0</value>
<useRestriction>false</useRestriction>
<availableValue>
<value xsi:nil="true"/>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>По всем</v8:content>
</v8:item>
</presentation>
</availableValue>
<availableValue>
<value xsi:type="xs:decimal">1</value>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Анализ 1</v8:content>
</v8:item>
</presentation>
</availableValue>
<availableValue>
<value xsi:type="xs:decimal">2</value>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Анализ 2</v8:content>
</v8:item>
</presentation>
</availableValue>
<denyIncompleteValues>true</denyIncompleteValues>
</parameter>
<parameter>
<name>Организация</name>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Организация</v8:content>
</v8:item>
</title>
<value xsi:nil="true"/>
<useRestriction>false</useRestriction>
</parameter>
<parameter>
<name>МинимальнаяСкоростьФормирования</name>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Минимальная скорость формирования</v8:content>
</v8:item>
</title>
<valueType>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>0</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</valueType>
<value xsi:nil="true"/>
<useRestriction>false</useRestriction>
<availableValue>
<value xsi:nil="true"/>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Как можно быстрее</v8:content>
</v8:item>
</presentation>
</availableValue>
<availableValue>
<value xsi:type="xs:decimal">1</value>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>1 секунда</v8:content>
</v8:item>
</presentation>
</availableValue>
<availableValue>
<value xsi:type="xs:decimal">2</value>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>2 секунды</v8:content>
</v8:item>
</presentation>
</availableValue>
<availableValue>
<value xsi:type="xs:decimal">3</value>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>3 секунды</v8:content>
</v8:item>
</presentation>
</availableValue>
<availableValue>
<value xsi:type="xs:decimal">5</value>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>5 секунд</v8:content>
</v8:item>
</presentation>
</availableValue>
<availableValue>
<value xsi:type="xs:decimal">10</value>
<presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>10 секунд</v8:content>
</v8:item>
</presentation>
</availableValue>
</parameter>
<settingsVariant>
<dcsset:name>Основной</dcsset:name>
<dcsset:presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Демо: Динамика изменений файлов</v8:content>
</v8:item>
</dcsset:presentation>
<dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows">
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Период</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Размер</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Количество</dcsset:field>
</dcsset:item>
</dcsset:selection>
<dcsset:dataParameters>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:parameter>Период</dcscor:parameter>
<dcscor:value xsi:type="v8:StandardPeriod">
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
<v8:startDate>2014-01-01T00:00:00</v8:startDate>
<v8:endDate>2014-12-31T23:59:59</v8:endDate>
</dcscor:value>
<dcsset:userSettingID>1cd980f2-e3e0-43fc-9399-260ca88a85a4</dcsset:userSettingID>
</dcscor:item>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:use>false</dcscor:use>
<dcscor:parameter>АвторВерсии</dcscor:parameter>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>35ba3b10-e6a9-47c4-adeb-0e421232e4f3</dcsset:userSettingID>
</dcscor:item>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:use>false</dcscor:use>
<dcscor:parameter>[Вид анализа]</dcscor:parameter>
<dcscor:value xsi:type="xs:decimal">1</dcscor:value>
<dcsset:userSettingID>a4aa56b4-b148-43c5-aed4-e80cc2040794</dcsset:userSettingID>
</dcscor:item>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:use>false</dcscor:use>
<dcscor:parameter>Организация</dcscor:parameter>
<dcscor:value xsi:nil="true"/>
<dcsset:userSettingID>24a410fb-505d-4d2a-a582-2e04c02ca9bb</dcsset:userSettingID>
</dcscor:item>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:parameter>МинимальнаяСкоростьФормирования</dcscor:parameter>
<dcscor:value xsi:type="xs:decimal">3</dcscor:value>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>53fa07cc-be79-4e2c-a29b-b0b854f36f19</dcsset:userSettingID>
</dcscor:item>
</dcsset:dataParameters>
<dcsset:outputParameters>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:parameter>ВертикальноеРасположениеОбщихИтогов</dcscor:parameter>
<dcscor:value xsi:type="dcscor:DataCompositionTotalPlacement">None</dcscor:value>
</dcscor:item>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:use>false</dcscor:use>
<dcscor:parameter>Заголовок</dcscor:parameter>
<dcscor:value xsi:type="v8:LocalStringType"/>
</dcscor:item>
</dcsset:outputParameters>
<dcsset:item xsi:type="dcsset:StructureItemGroup">
<dcsset:groupItems>
<dcsset:item xsi:type="dcsset:GroupItemField">
<dcsset:field>Период</dcsset:field>
<dcsset:groupType>Items</dcsset:groupType>
<dcsset:periodAdditionType>Month</dcsset:periodAdditionType>
<dcsset:periodAdditionBegin xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionBegin>
<dcsset:periodAdditionEnd xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionEnd>
</dcsset:item>
</dcsset:groupItems>
<dcsset:filter>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:filter>
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:order>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:selection>
<dcsset:conditionalAppearance>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:conditionalAppearance>
<dcsset:outputParameters>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:parameter>Заголовок</dcscor:parameter>
<dcscor:value xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>По месяцам</v8:content>
</v8:item>
</dcscor:value>
</dcscor:item>
</dcsset:outputParameters>
<dcsset:userSettingID>bd57fb4b-2995-4ac0-9415-6f8bd1482b54</dcsset:userSettingID>
<dcsset:itemsViewMode>Normal</dcsset:itemsViewMode>
</dcsset:item>
<dcsset:item xsi:type="dcsset:StructureItemChart">
<dcsset:point>
<dcsset:groupItems>
<dcsset:item xsi:type="dcsset:GroupItemField">
<dcsset:field>Период</dcsset:field>
<dcsset:groupType>Items</dcsset:groupType>
<dcsset:periodAdditionType>Month</dcsset:periodAdditionType>
<dcsset:periodAdditionBegin xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionBegin>
<dcsset:periodAdditionEnd xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionEnd>
</dcsset:item>
</dcsset:groupItems>
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
</dcsset:order>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
</dcsset:selection>
</dcsset:point>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:selection>
<dcsset:conditionalAppearance>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:conditionalAppearance>
<dcsset:outputParameters>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:parameter>ТипДиаграммы</dcscor:parameter>
<dcscor:value xsi:type="v8ui:ChartType">Pie3D</dcscor:value>
</dcscor:item>
</dcsset:outputParameters>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>45eaa305-ab24-4caa-a9a5-db6578389aa9</dcsset:userSettingID>
<dcsset:pointsViewMode>Normal</dcsset:pointsViewMode>
<dcsset:seriesViewMode>Normal</dcsset:seriesViewMode>
</dcsset:item>
<dcsset:item xsi:type="dcsset:StructureItemChart">
<dcsset:point>
<dcsset:groupItems>
<dcsset:item xsi:type="dcsset:GroupItemField">
<dcsset:field>Период</dcsset:field>
<dcsset:groupType>Items</dcsset:groupType>
<dcsset:periodAdditionType>Day</dcsset:periodAdditionType>
<dcsset:periodAdditionBegin xsi:nil="true"/>
<dcsset:periodAdditionEnd xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionEnd>
</dcsset:item>
</dcsset:groupItems>
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
</dcsset:order>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
</dcsset:selection>
</dcsset:point>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:selection>
<dcsset:conditionalAppearance>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:conditionalAppearance>
<dcsset:outputParameters>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:parameter>ТипДиаграммы</dcscor:parameter>
<dcscor:value xsi:type="v8ui:ChartType">Area</dcscor:value>
</dcscor:item>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:parameter>Заголовок</dcscor:parameter>
<dcscor:value xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>По дням</v8:content>
</v8:item>
</dcscor:value>
</dcscor:item>
</dcsset:outputParameters>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>e3bc8f4c-9e9a-4181-b19d-cf05469b1517</dcsset:userSettingID>
<dcsset:pointsViewMode>Normal</dcsset:pointsViewMode>
<dcsset:seriesViewMode>Normal</dcsset:seriesViewMode>
</dcsset:item>
</dcsset:settings>
</settingsVariant>
<settingsVariant>
<dcsset:name>Дополнительный1</dcsset:name>
<dcsset:presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Демо: Дополнительный 1</v8:content>
</v8:item>
</dcsset:presentation>
<dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows">
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Автор</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Период</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Размер</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Расширение</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Том</dcsset:field>
</dcsset:item>
</dcsset:selection>
<dcsset:item xsi:type="dcsset:StructureItemGroup">
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
</dcsset:order>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
</dcsset:selection>
</dcsset:item>
</dcsset:settings>
</settingsVariant>
<settingsVariant>
<dcsset:name>Дополнительный2</dcsset:name>
<dcsset:presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Демо: Дополнительный 2</v8:content>
</v8:item>
</dcsset:presentation>
<dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows">
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Автор</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Период</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Размер</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Расширение</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Том</dcsset:field>
</dcsset:item>
</dcsset:selection>
<dcsset:item xsi:type="dcsset:StructureItemGroup">
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
</dcsset:order>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
</dcsset:selection>
</dcsset:item>
</dcsset:settings>
</settingsVariant>
<settingsVariant>
<dcsset:name>Дополнительный3</dcsset:name>
<dcsset:presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Демо: Дополнительный 3</v8:content>
</v8:item>
</dcsset:presentation>
<dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows">
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Автор</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Период</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Размер</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Расширение</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Том</dcsset:field>
</dcsset:item>
</dcsset:selection>
<dcsset:item xsi:type="dcsset:StructureItemGroup">
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
</dcsset:order>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
</dcsset:selection>
</dcsset:item>
</dcsset:settings>
</settingsVariant>
<settingsVariant>
<dcsset:name>Дополнительный4</dcsset:name>
<dcsset:presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Демо: Дополнительный 4</v8:content>
</v8:item>
</dcsset:presentation>
<dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows">
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Автор</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Период</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Размер</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Расширение</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Том</dcsset:field>
</dcsset:item>
</dcsset:selection>
<dcsset:item xsi:type="dcsset:StructureItemGroup">
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
</dcsset:order>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
</dcsset:selection>
</dcsset:item>
</dcsset:settings>
</settingsVariant>
<settingsVariant>
<dcsset:name>Дополнительный5</dcsset:name>
<dcsset:presentation xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Демо: Дополнительный 5</v8:content>
</v8:item>
</dcsset:presentation>
<dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows">
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Автор</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Период</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Размер</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Расширение</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>Том</dcsset:field>
</dcsset:item>
</dcsset:selection>
<dcsset:item xsi:type="dcsset:StructureItemGroup">
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
</dcsset:order>
<dcsset:selection>
<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
</dcsset:selection>
</dcsset:item>
</dcsset:settings>
</settingsVariant>
</DataCompositionSchema>
После загрузки схемы в обработку и нажатии кнопки «Сгенерировать код», генерируется код для конфигуратора, который в дальнейшем можно применить при разработке.
Работоспособность обработки проверена на платформе 1С:Предприятие 8.3 (8.3.16.1814), БСП 3.1.3.331
//======================================================================================================================
//Схема СКД
СхемаКомпоновкиДанных = Новый СхемаКомпоновкиДанных;
//======================================================================================================================
//Источники данных
ИсточникДанных = СхемаКомпоновкиДанных.ИсточникиДанных.Добавить();
ИсточникДанных.Имя = "ИсточникДанных1";
ИсточникДанных.ТипИсточникаДанных = "Local";
//======================================================================================================================
//Наборы данных
//Набор данных: ДинамикаАрхива
НаборДанныхЗапросСхемыКомпоновкиДанных = СхемаКомпоновкиДанных.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных"));
НаборДанныхЗапросСхемыКомпоновкиДанных.Имя = "ДинамикаАрхива";
НаборДанныхЗапросСхемыКомпоновкиДанных.ИсточникДанных = "ИсточникДанных1";
НаборДанныхЗапросСхемыКомпоновкиДанных.АвтоЗаполнениеДоступныхПолей = Истина;
НаборДанныхЗапросСхемыКомпоновкиДанных.ИспользоватьГруппировкиЗапросаЕслиВозможно = Истина;
НаборДанныхЗапросСхемыКомпоновкиДанных.Запрос = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| НАЧАЛОПЕРИОДА(ВерсииФайлов.ДатаСоздания, ДЕНЬ) КАК Период,
| ВерсииФайлов.Ссылка КАК Ссылка,
| КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВерсииФайлов.Ссылка) КАК Количество,
| ВерсииФайлов.Размер КАК Размер,
| ВерсииФайлов.Расширение,
| ВерсииФайлов.Том,
| ВерсииФайлов.Автор
|ИЗ
| Справочник.ВерсииФайлов КАК ВерсииФайлов
|{ГДЕ
| (ВерсииФайлов.ДатаМодификацииФайла МЕЖДУ &НачалоПериода И &КонецПериода)}
|
|СГРУППИРОВАТЬ ПО
| ВерсииФайлов.Ссылка,
| ВерсииФайлов.Размер,
| ВерсииФайлов.Расширение,
| ВерсииФайлов.Том,
| ВерсииФайлов.Автор,
| НАЧАЛОПЕРИОДА(ВерсииФайлов.ДатаСоздания, ДЕНЬ)";
//Поле: Период
ПолеНабораДанныхСхемыКомпоновкиДанных = НаборДанныхЗапросСхемыКомпоновкиДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
ПолеНабораДанныхСхемыКомпоновкиДанных.Поле = "Период";
ПолеНабораДанныхСхемыКомпоновкиДанных.ПутьКДанным = "Период";
ПолеНабораДанныхСхемыКомпоновкиДанных.Заголовок = "Период";
//Поле: Том
ПолеНабораДанныхСхемыКомпоновкиДанных = НаборДанныхЗапросСхемыКомпоновкиДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
ПолеНабораДанныхСхемыКомпоновкиДанных.Поле = "Том";
ПолеНабораДанныхСхемыКомпоновкиДанных.ПутьКДанным = "Том";
//Поле: Количество
ПолеНабораДанныхСхемыКомпоновкиДанных = НаборДанныхЗапросСхемыКомпоновкиДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
ПолеНабораДанныхСхемыКомпоновкиДанных.Поле = "Количество";
ПолеНабораДанныхСхемыКомпоновкиДанных.ПутьКДанным = "Количество";
ПолеНабораДанныхСхемыКомпоновкиДанных.Заголовок = "Количество";
//Поле: Автор
ПолеНабораДанныхСхемыКомпоновкиДанных = НаборДанныхЗапросСхемыКомпоновкиДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
ПолеНабораДанныхСхемыКомпоновкиДанных.Поле = "Автор";
ПолеНабораДанныхСхемыКомпоновкиДанных.ПутьКДанным = "Автор";
//Поле: Размер
ПолеНабораДанныхСхемыКомпоновкиДанных = НаборДанныхЗапросСхемыКомпоновкиДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
ПолеНабораДанныхСхемыКомпоновкиДанных.Поле = "Размер";
ПолеНабораДанныхСхемыКомпоновкиДанных.ПутьКДанным = "Размер";
//Поле: Расширение
ПолеНабораДанныхСхемыКомпоновкиДанных = НаборДанныхЗапросСхемыКомпоновкиДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
ПолеНабораДанныхСхемыКомпоновкиДанных.Поле = "Расширение";
ПолеНабораДанныхСхемыКомпоновкиДанных.ПутьКДанным = "Расширение";
//Поле: Ссылка
ПолеНабораДанныхСхемыКомпоновкиДанных = НаборДанныхЗапросСхемыКомпоновкиДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
ПолеНабораДанныхСхемыКомпоновкиДанных.Поле = "Ссылка";
ПолеНабораДанныхСхемыКомпоновкиДанных.ПутьКДанным = "Ссылка";
//======================================================================================================================
//Связи наборов данных
//======================================================================================================================
//Вычисляемые поля
//======================================================================================================================
//Ресурсы
ПолеРесурса = СхемаКомпоновкиДанных.ПоляИтога.Добавить();
ПолеРесурса.ПутьКДанным = "Количество";
ПолеРесурса.Выражение = "Сумма(Количество)";
//======================================================================================================================
//Параметры
//Параметр: Период
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Добавить();
ПараметрСхемы.Имя = "Период";
ПараметрСхемы.Заголовок = "Период";
ПараметрСхемы.ВключатьВДоступныеПоля = Истина;
ПараметрСхемы.Использование = ИспользованиеПараметраКомпоновкиДанных.Авто;
//Типы значений для параметра - Период
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("СтандартныйПериод"));
ПараметрСхемы.ТипЗначения = Новый ОписаниеТипов(МассивТипов,,,,);
//Параметр: НачалоПериода
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Добавить();
ПараметрСхемы.Имя = "НачалоПериода";
ПараметрСхемы.Заголовок = "Начало периода";
ПараметрСхемы.Выражение = "&Период.ДатаНачала";
ПараметрСхемы.ВключатьВДоступныеПоля = Истина;
ПараметрСхемы.ОграничениеИспользования = Истина;
ПараметрСхемы.Использование = ИспользованиеПараметраКомпоновкиДанных.Авто;
//Типы значений для параметра - НачалоПериода
КвалификаторДаты = Новый КвалификаторыДаты(ЧастиДаты.ДатаВремя);
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("Дата"));
ПараметрСхемы.ТипЗначения = Новый ОписаниеТипов(МассивТипов,,,КвалификаторДаты,);
//Параметр: КонецПериода
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Добавить();
ПараметрСхемы.Имя = "КонецПериода";
ПараметрСхемы.Заголовок = "Конец периода";
ПараметрСхемы.Выражение = "&Период.ДатаОкончания";
ПараметрСхемы.ВключатьВДоступныеПоля = Истина;
ПараметрСхемы.ОграничениеИспользования = Истина;
ПараметрСхемы.Использование = ИспользованиеПараметраКомпоновкиДанных.Авто;
//Типы значений для параметра - КонецПериода
КвалификаторДаты = Новый КвалификаторыДаты(ЧастиДаты.ДатаВремя);
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("Дата"));
ПараметрСхемы.ТипЗначения = Новый ОписаниеТипов(МассивТипов,,,КвалификаторДаты,);
//Параметр: ВсеПользователи
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Добавить();
ПараметрСхемы.Имя = "ВсеПользователи";
ПараметрСхемы.Заголовок = "Для проверки предопределенных элементов в модели сервиса";
ПараметрСхемы.Использование = ИспользованиеПараметраКомпоновкиДанных.Авто;
//Значения для параметра - ВсеПользователи
ПараметрСхемы.Значение = Справочники.ГруппыПользователей.ВсеПользователи;
//Типы значений для параметра - ВсеПользователи
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("СправочникСсылка.ГруппыПользователей"));
ПараметрСхемы.ТипЗначения = Новый ОписаниеТипов(МассивТипов,,,,);
//Параметр: АвторВерсии
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Добавить();
ПараметрСхемы.Имя = "АвторВерсии";
ПараметрСхемы.Заголовок = "Автор версии";
ПараметрСхемы.ВключатьВДоступныеПоля = Истина;
ПараметрСхемы.Использование = ИспользованиеПараметраКомпоновкиДанных.Авто;
ПараметрСхемы.ДоступенСписокЗначений = Истина;
//Типы значений для параметра - АвторВерсии
КвалификаторЧисла = Новый КвалификаторыЧисла(15,2,ДопустимыйЗнак.Любой);
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("СправочникСсылка.Файлы"));
МассивТипов.Добавить(Тип("Число"));
МассивТипов.Добавить(Тип("СправочникСсылка.Пользователи"));
ПараметрСхемы.ТипЗначения = Новый ОписаниеТипов(МассивТипов,КвалификаторЧисла,,,);
//Параметр: Вид анализа
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Добавить();
ПараметрСхемы.Имя = "Вид анализа";
ПараметрСхемы.Заголовок = "Вид анализа";
ПараметрСхемы.ВключатьВДоступныеПоля = Истина;
ПараметрСхемы.ЗапрещатьНезаполненныеЗначения = Истина;
ПараметрСхемы.Использование = ИспользованиеПараметраКомпоновкиДанных.Авто;
//Типы значений для параметра - Вид анализа
КвалификаторЧисла = Новый КвалификаторыЧисла(0,0,ДопустимыйЗнак.Любой);
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("Число"));
ПараметрСхемы.ТипЗначения = Новый ОписаниеТипов(МассивТипов,КвалификаторЧисла,,,);
//Параметр: Организация
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Добавить();
ПараметрСхемы.Имя = "Организация";
ПараметрСхемы.Заголовок = "Организация";
ПараметрСхемы.ВключатьВДоступныеПоля = Истина;
ПараметрСхемы.Использование = ИспользованиеПараметраКомпоновкиДанных.Авто;
//Параметр: МинимальнаяСкоростьФормирования
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Добавить();
ПараметрСхемы.Имя = "МинимальнаяСкоростьФормирования";
ПараметрСхемы.Заголовок = "Минимальная скорость формирования";
ПараметрСхемы.ВключатьВДоступныеПоля = Истина;
ПараметрСхемы.Использование = ИспользованиеПараметраКомпоновкиДанных.Авто;
//Типы значений для параметра - МинимальнаяСкоростьФормирования
КвалификаторЧисла = Новый КвалификаторыЧисла(0,0,ДопустимыйЗнак.Любой);
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("Число"));
ПараметрСхемы.ТипЗначения = Новый ОписаниеТипов(МассивТипов,КвалификаторЧисла,,,);
//======================================================================================================================
//Варианты настроек
ВариантНастройки = СхемаКомпоновкиДанных.ВариантыНастроек.Добавить();
ВариантНастройки.Имя = "Дополнительный1";
ВариантНастройки.Представление = "Демо: Дополнительный 1";
Настройки = ВариантНастройки.Настройки;
//Поля выбора для всего отчета
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Автор");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Период");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Размер");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Расширение");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Том");
//Группировка - ДЗ
ГруппировкаДЗ = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
ГруппировкаДЗ.Использование = Истина;
//Поля выбора для ДЗ
ВыбранныеПоля = ГруппировкаДЗ.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Сортировка для ДЗ
ЭлементПорядка = ГруппировкаДЗ.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Использование = Истина;
ВариантНастройки = СхемаКомпоновкиДанных.ВариантыНастроек.Добавить();
ВариантНастройки.Имя = "Дополнительный2";
ВариантНастройки.Представление = "Демо: Дополнительный 2";
Настройки = ВариантНастройки.Настройки;
//Поля выбора для всего отчета
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Автор");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Период");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Размер");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Расширение");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Том");
//Группировка - ДЗ
ГруппировкаДЗ = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
ГруппировкаДЗ.Использование = Истина;
//Поля выбора для ДЗ
ВыбранныеПоля = ГруппировкаДЗ.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Сортировка для ДЗ
ЭлементПорядка = ГруппировкаДЗ.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Использование = Истина;
ВариантНастройки = СхемаКомпоновкиДанных.ВариантыНастроек.Добавить();
ВариантНастройки.Имя = "Дополнительный3";
ВариантНастройки.Представление = "Демо: Дополнительный 3";
Настройки = ВариантНастройки.Настройки;
//Поля выбора для всего отчета
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Автор");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Период");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Размер");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Расширение");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Том");
//Группировка - ДЗ
ГруппировкаДЗ = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
ГруппировкаДЗ.Использование = Истина;
//Поля выбора для ДЗ
ВыбранныеПоля = ГруппировкаДЗ.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Сортировка для ДЗ
ЭлементПорядка = ГруппировкаДЗ.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Использование = Истина;
ВариантНастройки = СхемаКомпоновкиДанных.ВариантыНастроек.Добавить();
ВариантНастройки.Имя = "Дополнительный4";
ВариантНастройки.Представление = "Демо: Дополнительный 4";
Настройки = ВариантНастройки.Настройки;
//Поля выбора для всего отчета
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Автор");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Период");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Размер");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Расширение");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Том");
//Группировка - ДЗ
ГруппировкаДЗ = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
ГруппировкаДЗ.Использование = Истина;
//Поля выбора для ДЗ
ВыбранныеПоля = ГруппировкаДЗ.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Сортировка для ДЗ
ЭлементПорядка = ГруппировкаДЗ.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Использование = Истина;
ВариантНастройки = СхемаКомпоновкиДанных.ВариантыНастроек.Добавить();
ВариантНастройки.Имя = "Дополнительный5";
ВариантНастройки.Представление = "Демо: Дополнительный 5";
Настройки = ВариантНастройки.Настройки;
//Поля выбора для всего отчета
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Автор");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Период");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Размер");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Расширение");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Том");
//Группировка - ДЗ
ГруппировкаДЗ = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
ГруппировкаДЗ.Использование = Истина;
//Поля выбора для ДЗ
ВыбранныеПоля = ГруппировкаДЗ.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Сортировка для ДЗ
ЭлементПорядка = ГруппировкаДЗ.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Использование = Истина;
//======================================================================================================================
//Настройки по умолчанию
Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;
//Параметры
ПараметрСхемы = Настройки.ПараметрыДанных.Элементы.Добавить();
ПараметрСхемы.Параметр = Новый ПараметрКомпоновкиДанных("Период");
ПараметрСхемы.Значение = Новый СтандартныйПериод(Дата("01.01.2014 0:00:00"),Дата("31.12.2014 23:59:59"));
ПараметрСхемы.Использование = Истина;
ПараметрСхемы = Настройки.ПараметрыДанных.Элементы.Добавить();
ПараметрСхемы.Параметр = Новый ПараметрКомпоновкиДанных("АвторВерсии");
ПараметрСхемы.Использование = Ложь;
ПараметрСхемы = Настройки.ПараметрыДанных.Элементы.Добавить();
ПараметрСхемы.Параметр = Новый ПараметрКомпоновкиДанных("[Вид анализа]");
ПараметрСхемы.Значение = 1;
ПараметрСхемы.Использование = Ложь;
ПараметрСхемы = Настройки.ПараметрыДанных.Элементы.Добавить();
ПараметрСхемы.Параметр = Новый ПараметрКомпоновкиДанных("Организация");
ПараметрСхемы.Использование = Ложь;
ПараметрСхемы = Настройки.ПараметрыДанных.Элементы.Добавить();
ПараметрСхемы.Параметр = Новый ПараметрКомпоновкиДанных("МинимальнаяСкоростьФормирования");
ПараметрСхемы.Значение = 3;
ПараметрСхемы.Использование = Истина;
//Поля выбора для всего отчета
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Период");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Размер");
ВыбранныеПоля = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
ВыбранныеПоля.Поле = Новый ПолеКомпоновкиДанных("Количество");
//Другие настройки для всего отчета
ПараметрВывода = Настройки.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ВертикальноеРасположениеОбщихИтогов"));
ПараметрВывода.Использование = Истина;
ПараметрВывода.Значение = РасположениеИтоговКомпоновкиДанных.Нет;
//Группировка - Период
ГруппировкаПериод = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
ГруппировкаПериод.Использование = Истина;
ПолеПериод = ГруппировкаПериод.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
ПолеПериод.Использование = Истина;
ПолеПериод.Поле = Новый ПолеКомпоновкиДанных("Период");
//Поля выбора для Период
ВыбранныеПоля = ГруппировкаПериод.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Сортировка для Период
ЭлементПорядка = ГруппировкаПериод.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Использование = Истина;
//Другие настройки для Период
ПараметрВывода = ГруппировкаПериод.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Заголовок"));
ПараметрВывода.Использование = Истина;
ПараметрВывода.Значение = "По месяцам";
//Диаграмма
Диаграмма = Настройки.Структура.Добавить(Тип("ДиаграммаКомпоновкиДанных"));
//Поля выбора для Диаграмма
ВыбранныеПоля = Диаграмма.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Другие настройки для Диаграмма
ПараметрВывода = Диаграмма.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТипДиаграммы"));
ПараметрВывода.Использование = Истина;
ПараметрВывода.Значение = ТипДиаграммы.КруговаяОбъемная;
//Точка - Период
ТочкаПериод = Диаграмма.Точки.Добавить();
ТочкаПериод.Использование = Истина;
ПолеПериод = ТочкаПериод.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
ПолеПериод.Использование = Истина;
ПолеПериод.Поле = Новый ПолеКомпоновкиДанных("Период");
//Поля выбора для Период
ВыбранныеПоля = ТочкаПериод.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Сортировка для Период
ЭлементПорядка = ТочкаПериод.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Использование = Истина;
//Диаграмма
Диаграмма = Настройки.Структура.Добавить(Тип("ДиаграммаКомпоновкиДанных"));
//Поля выбора для Диаграмма
ВыбранныеПоля = Диаграмма.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Другие настройки для Диаграмма
ПараметрВывода = Диаграмма.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТипДиаграммы"));
ПараметрВывода.Использование = Истина;
ПараметрВывода.Значение = ТипДиаграммы.ГрафикСОбластями;
ПараметрВывода = Диаграмма.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Заголовок"));
ПараметрВывода.Использование = Истина;
ПараметрВывода.Значение = "По дням";
//Точка - Период
ТочкаПериод = Диаграмма.Точки.Добавить();
ТочкаПериод.Использование = Истина;
ПолеПериод = ТочкаПериод.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
ПолеПериод.Использование = Истина;
ПолеПериод.Поле = Новый ПолеКомпоновкиДанных("Период");
//Поля выбора для Период
ВыбранныеПоля = ТочкаПериод.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
ВыбранныеПоля.Использование = Истина;
//Сортировка для Период
ЭлементПорядка = ТочкаПериод.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Использование = Истина;