Створення налаштувань компонування даних із вбудованої мови
У цій статті наведено приклади того, яким чином можна додавати деякі елементи налаштувань компонування даних за допомогою вбудованої мови.Додавання відбору. Додавання впорядкування. Встановлення параметрів виведення. Додавання умовного оформлення. Додавання групування. Додавання детальних записів. Додавання діаграми. Додавання таблиці. Приклад
Встановлення параметрів виведення
У цій статті наведено приклади того, яким чином можна додавати деякі елементи налаштувань компонування даних за допомогою вбудованої мови.
Додавання вибраного поля
Приклад додавання вибраного поля:
// Додамо вибране поле для виведення у звіт. ВыбранноеПоле = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных")); ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных("КоличествоОстаток");
У цьому прикладі до списку вибраних полів було додано поле КоличествоОстаток.
Для зазначення взаємного розташування полів до списку вибраних полів можна додати групу вибраних полів і помістити до неї вибрані поля.
Приклад:
// Створимо групу полів, щоб виводити в ній склад в окремих колонках. ГруппаПолей = Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); // Встановимо заголовок групи полів. ГруппаПолей.Заголовок = "Реквізити складу"; // Зазначимо розміщення. ГруппаПолей.Расположение = РасположениеПоляКомпоновкиДанных.Горизонтально; // Додамо вибране поле до групи для виведення у звіт. ВыбранноеПоле = ГруппаПолей.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных")); ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных("Склад"); // Додамо вибране поле до групи для виведення у звіт. ВыбранноеПоле = ГруппаПолей.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных")); ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных("Склад.Код"); // Встановимо заголовок поля. ВыбранноеПоле.Заголовок = "Код";
У цьому прикладі створено групу вибраних полів, до неї поміщено два поля. Для групи зазначено, яким чином розташовувати вкладені в неї поля. Для поля Склад.Код встановлено заголовок.
Додавання відбору
Приклад додавання елемента відбору:
// Додамо відбір на групу номенклатури. ЭлементОтбора = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Номенклатура"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВИерархии; ЭлементОтбора.ПравоеЗначение = ГруппаНоменклатуры;
У цьому прикладі до звіту додано елемент відбору з видом порівняння "У Групі".
До відбору можна додавати складні умови. Це робиться за допомогою груп елементів відбору.
Приклад додавання групової умови:
ГруппаЭлементовОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); ГруппаЭлементовОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; ЭлементОтбора = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КоличествоОстаток"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно; ЭлементОтбора.ПравоеЗначение = 100; ЭлементОтбора = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КоличествоОстаток"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно; ЭлементОтбора.ПравоеЗначение = 200;
У цьому прикладі додано умову КоличествоОстаток >= 100 И КоличествоОстаток <=200.
Додавання впорядкування
Приклад додавання впорядкування:
// Додамо впорядкування. ЭлементПорядка = Настройки.Порядок.Элементы.Добавить(Тип("ЭлементПорядкаКомпоновкиДанных")); ЭлементПорядка.Поле = Новый ПолеКомпоновкиДанных("КоличествоОстаток"); ЭлементПорядка.ТипУпорядочивания = НаправлениеСортировкиКомпоновкиДанных.Убыв;
У цьому прикладі показано додавання впорядкування за полем КоличествоОстаток у спадному порядку.
Встановлення параметрів виведення
Приклад встановлення параметрів виведення:
// Встановимо макет оформлення. ЭлементОформления = Настройки.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("МакетОформления")); ЭлементОформления.Использование = Истина; ЭлементОформления.Значение = "Море"; // Зазначимо, що відбір не потрібно виводити у звіт. ЭлементОформления = Настройки.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ВыводитьОтбор")); ЭлементОформления.Использование = Истина; ЭлементОформления.Значение = ТипВыводаТекстаКомпоновкиДанных.НеВыводить;
У цьому прикладі для звіту встановлено макет оформлення та зазначено, що виводити відбір до результату звіту не потрібно.
Додавання умовного оформлення
Приклад додавання умовного оформлення:
// Додамо умовне оформлення. ЭлементУсловногоОформления = Настройки.УсловноеОформление.Элементы.Добавить(); // Створимо умову оформлення. ГруппаЭлементовОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); ГруппаЭлементовОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; ЭлементОтбора = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КоличествоОстаток"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно; ЭлементОтбора.ПравоеЗначение = 100; ЭлементОтбора = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КоличествоОстаток"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно; ЭлементОтбора.ПравоеЗначение = 200; // Зазначимо колір. ЭлементОформления = ЭлементУсловногоОформления.Оформление.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ЦветТекста")); ЭлементОформления.Использование = Истина; ЭлементОформления.Значение = Новый Цвет(255, 0, 0); // Зазначимо, що оформлення потрібно застосовувати лише до одного поля. ОформляемоеПоле = ЭлементУсловногоОформления.Поля.Элементы.Добавить(); ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("КоличествоОстаток");
У цьому прикладі додано оформлення для поля КоличествоОстаток. Поле відображатиметься червоним кольором, якщо його значення більше або дорівнює 100 і менше або дорівнює 200.
Додавання групування
Приклад додавання групування:
// Додамо нове групування до структури звіту. Группировка = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных")); // Зазначимо, за якими полями потрібно групувати. ПолеГруппировки = Группировка.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных")); ПолеГруппировки.Поле = Новый ПолеКомпоновкиДанных("Номенклатура"); // Зазначимо тип ієрархії. ПолеГруппировки.ТипГруппировки = ТипГруппировкиКомпоновкиДанных.Иерархия;
У цьому прикладі додано групування за полем Номенклатура з ієрархією.
Зауважимо, що для групування потрібно зазначити, які поля в ньому потрібно виводити, як упорядковувати групування. Якщо потрібно, щоб склад виведених полів і полів упорядкування визначався системою самостійно на підставі полів групування, вищих групувань і звіту, то потрібно додати до вибраних полів і полів упорядкування автополя.
Приклад додавання автополів до порядку та вибраних полів.
// Зазначимо, що поля, які потрібно виводити в групуванні, система має визначати самостійно. Группировка.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); // Зазначимо, що системі необхідно самостійно визначати порядок, у якому виводити групування. Группировка.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
Додавання детальних записів
Детальні записи є групуванням, у якому відсутні поля групування.
Приклад додавання детальних записів, вкладених у групування:
// Додамо до звіту детальні записи, вкладені у групування. ДетальныеЗаписи = Группировка.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных")); // Зазначимо, що поля, які потрібно виводити в детальних записах, система має визначати самостійно. ДетальныеЗаписи.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); // Зазначимо, що системі необхідно самостійно визначати порядок, у якому виводити детальні записи. ДетальныеЗаписи.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных")); // Додамо оформлення для детальних записів. ЭлементУсловногоОформления = ДетальныеЗаписи.УсловноеОформление.Элементы.Добавить(); // Зазначимо похилий шрифт. ЭлеменОформления = ЭлементУсловногоОформления.Оформление.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Шрифт")); ЭлеменОформления.Использование = Истина; ЭлеменОформления.Значение = Новый Шрифт(,,, Истина);
У цьому прикладі детальні записи додано до групування, до детальних записів додано автополя вибору та порядку, зазначено умовне оформлення, яке діятиме в цих детальних записах.
Додавання діаграми
Приклад додавання діаграми:
// Додамо до звіту діаграму. Диаграмма = Настройки.Структура.Добавить(Тип("ДиаграммаКомпоновкиДанных")); // Встановимо заголовок діаграми ПараметрВывода = Диаграмма.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Заголовок")); ПараметрВывода.Значение = "Залишки за складами"; ПараметрВывода.Использование = Истина; // Зазначимо, який ресурс потрібно виводити в діаграмі ВыбранноеПоле = Диаграмма.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных")); ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных("КоличествоОстаток"); // Додамо до діаграми серію. Серия = Диаграмма.Серии.Добавить(); // Зазначимо, за яким полем потрібно групувати в серії. ПолеГруппировки = Серия.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных")); ПолеГруппировки.Поле = Новый ПолеКомпоновкиДанных("Склад"); // Зазначимо, що система сама має визначати, які поля потрібно виводити в серії. Серия.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); // Зазначимо, яким чином потрібно впорядковувати дані серії ЭлементПорядка = Серия.Порядок.Элементы.Добавить(Тип("ЭлементПорядкаКомпоновкиДанных")); ЭлементПорядка.Поле = Новый ПолеКомпоновкиДанных("Склад");
У цьому прикладі до звіту додано діаграму, до діаграми додано серію, у серії зазначено, яким чином її потрібно впорядковувати.
Додавання таблиці
Приклад додавання таблиці:
// Додамо до звіту таблицю Таблица = Настройки.Структура.Добавить(Тип("ТаблицаКомпоновкиДанных")); // Додамо до таблиці рядок Строка = Таблица.Строки.Добавить(); // Зазначимо, що система сама має визначати, які поля потрібно виводити в групуванні Строка.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); // Зазначимо, що системі необхідно самостійно визначати порядок, у якому виводити групування Строка.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных")); // Зазначимо, за яким полем потрібно групувати ПолеГруппировки = Строка.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных")); ПолеГруппировки.Поле = Новый ПолеКомпоновкиДанных("Номенклатура"); // Додамо до таблиці колонку Колонка = Таблица.Колонки.Добавить(); // Зазначимо, що система сама має визначати, які поля потрібно виводити в групуванні Колонка.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); // Зазначимо, що системі необхідно самостійно визначати порядок, у якому виводити групування Колонка.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных")); // Зазначимо, за яким полем потрібно групувати ПолеГруппировки = Колонка.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных")); ПолеГруппировки.Поле = Новый ПолеКомпоновкиДанных("Склад");
У цьому прикладі до звіту додано таблицю, у таблиці в рядках виводиться групування за полем Номенклатура, а в колонках виводиться групування за полем Склад.
Приклад
Наведений у цій статті приклад можна переглянути у зовнішньому звіті ПримерПрограммнойРаботыСНастройкамиКомпоновкиДанных, який можна знайти в каталозі C:ItsEXEExtRepsSamples8
Ви можете встановити їх на комп’ютер просто зараз
Копіювати
Цей зовнішній звіт працює на конфігурації "Приклади 8.1".