Таблица: различия между версиями
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) |
||
| Строка 120: | Строка 120: | ||
[[Файл:sorting_2.png|center|thumb]] | [[Файл:sorting_2.png|center|thumb]] | ||
Для настройки интерактивной сортировки используются следующие поля: | |||
*<code>Sort Expression:</code> - выражение, задающее значение сортировки (например - поле) для данных, содержащихся в столбце; | |||
*<code>Data region or group to sort:</code> - выберите уровень группировки или область данных в отчете для сортировки; | |||
**<code>Current scope</code> - значением по умолчанию является текущая область; | |||
**<code>Choose data region or grouping</code> - выбор альтернативной области данных или группировки; | |||
*<code>Evaluate sort expression in this scope:</code> - выберите уровень группировки в отчете, на котором будет оцениваться выражение сортировки выражение агрегированной сортировки; | |||
**<code>Current scope</code> - значением по умолчанию является текущая область; | |||
**<code>Choose data region or grouping</code> - выбор альтернативной области данных или группировки. | |||
После настройки интерактивной сортировки в элементе управления TextBox при предварительном просмотре отчета в элементе управления textbox отображается значок сортировки [[Файл:sorting_3.png|20px|baseline|link=]]. | После настройки интерактивной сортировки в элементе управления TextBox при предварительном просмотре отчета в элементе управления textbox отображается значок сортировки [[Файл:sorting_3.png|20px|baseline|link=]]. | ||
Пользователь может сортировать данные, отображаемые в текстовом поле, в порядке возрастания или убывания, щелкая по | Пользователь может сортировать данные, отображаемые в текстовом поле, в порядке возрастания или убывания, щелкая по значкам. | ||
значкам | |||
==Группировка данных таблицы== | ==Группировка данных таблицы== | ||
Версия от 01:55, 24 марта 2026
Таблица (Table) - область данных, которая используется для отображения информации в табличном формате в табличных отчётах.
Общие сведения
- таблица состоит из столбцов и строк, в которых организованы данные;
- по умолчанию в таблице три столбца и три строки, всего девять ячеек, каждая из которых заполнена текстовым полем;
- во время разработки вы можете добавлять или удалять столбцы, строки и группы в соответствии с вашими потребностями;
- в ячейки таблицы можно встраивать другие области данных (текстовые поля, поля форматированного текста, картинки и др.).
Создание таблицы
- для добавления таблицы необходимо в левой части окна Дизайнера левой кнопкой мыши нажать на элемент
Tableи, не отпуская, перенести его в желаемое место и отпустить кнопку мыши;

- по умолчанию в таблице три столбца и три строки, всего девять ячеек, каждая из которых заполнена текстовым полем;
- по умолчанию в таблице три столбца и три строки, всего девять ячеек, каждая из которых заполнена текстовым полем;

- первая строка
Table Headerявляется строкой заголовка, может располагаться только на первой странице или повторяться на всех; - вторая строка
Table Detailsявляется строкой собственно данных; - третья строка
Table Footerявляется результирующей (можно использовать для итоговых вычислений), также может располагаться только на первой странице или повторяться на всех; - для скрытия результирующей строки в контекстном меню таблицы отжать значение
Table Footer;

- аналогичным образом можно регулировать отображение остальных разделов строк (
Table Header,Table Details).
Изменение размера таблицы
- для изменения размера таблицы необходимо левой кнопкой мыши перетащить узловую точку границы таблицы в желаемое место и отпустить кнопку мыши;

- также для изменения размера таблицы можно использовать окно свойств таблицы, пункт меню
Layout >> Size.

Изменение высоты строк
- для изменения высоты строк необходимо выбрать одну или несколько строк таблицы, перейти в окно свойств таблицы, пункт меню
Layout >> Heightи ввести необходимые данные (например, 0,55).

Создание и удаление столбцов
- для добавления столбцов в таблицу необходимо выбрать один из столбцов таблицы, нажать правую клавишу мыши и в контекстном меню выбрать добавление столбца справа
Insert Column to the Rightили слеваInsert Column to the Leftот выделенного столбца;

- для удаления столбцов в таблицу необходимо выбрать один или несколько столбцов, нажать правую клавишу мыши и в контекстном меню выбрать удаление столбца
Delete Columns.
Объединение и разделение ячеек
- для объединения необходимо выделить объединяемые ячейки, вызвать правой кнопкой мышки контекстное меню, выбрать пункт
Merge Cells;

- для разделения необходимо выделить разделяемую ячейку, вызвать правой кнопкой мышки контекстное меню, выбрать пункт
Split Cells.

Объединение соседних ячеек с одинаковыми значениями
- левой кнопкой мыши выделить необходимую ячейку таблицы;
- в разделе свойств элемента
Layout >> AutoMergeModeнажать левой кнопкой мыши на стрелку;

- выбрать значение из списка:
Never(по умолчанию, никогда не объединяются),Always(всегда объединяются) иRestricted(объединяются только в том случае, если соответствующие ячейки в предыдущих столбцах объединены аналогичным образом –AlwaysилиRestricted).

Примечание: другие свойства сочетания границ и содержимого текстовых ячеек.
Изменение свойств границ
Для отображения всех границ таблицы:
- выделить всю таблицу на основном поле конструктора или в дереве отчета
ReportSection1 >> Body >> Table1; - перейти в окно свойств таблицы, в пункте меню
Appearance >> BorderStyle;

- в раскрывающемся списке выбрать значение
Solidили другое требуемое (по умолчанию при создании таблицы границы не отображаются – значениеNone).
Также можно настроить отображение каждой границы ячейки отдельно. Для этого:
- выбрать одну или несколько ячеек;
- раскрыть пункт меню
Appearance >> BorderStyle;

- в раскрывающемся списке выбрать значение
Solidдля любой из четырех границ (в данном случае значениеSolidустановлено для нижней границы).
Наименование и форматирование заголовков
По умолчанию каждая ячейка таблицы является текстовым полем, соответственно форматирование содержимого такое же:

Для шрифта вносятся изменения в следующие свойства:
- стиль
Appearance >> Font >> FontStyle– нормальныйNormalили курсивItalic; - название
Appearance >> Font >> FontFamily; - размер
Appearance >> Font >> FontSize; - толщина
Appearance >> Font >> FontWeight– нормальныйNormal, жирныйBoldи другие.
Выравнивание текста:
- по горизонтали
Appearance >> Font >> TextAlign; - выравнивание текста по вертикали
Appearance >> Font >> VerticalAlign.
Изменение имени текстового поля:
Data >> DataElementName;Design >> Name.
Определение нумерации строк
- на ячейке данных, в которой будут выводиться номера строк (в данном случае – первый столбец, первая строка после заголовка) правой кнопкой вызвать контекстное меню;
- выбрать пункт
Expression…;

- в появившемся окне
Expression Editorв полеExpression:ввести с клавиатуры=RowNumber()или выбрать (двойной клик) данную функцию из менюFields: >> Common Functions >> Miscellaneous >> RowNumber;

- в дальнейшем, при необходимости, можно создать фильтр
ReportParametrNumberFirstStringдля ввода начального значения первой строки пользователем; в таком случае выражение будет иметь вид=RowNumber() + Parameters!ReportParametrNumberFirstString.Value – 1.
Добавление данных БД в ячейки из DataSet
- для ввода простого значения из подключенного набора данных
DataSetнеобходимо выбрать желаемую конечную ячейку таблицы; - в правой верхней части ячейки левой кнопкой мыши нажать на три горизонтальных синих черточки;

- в появившемся списке всех доступных в
DataSetполей выбрать необходимое поле; - при этом значение поля в
DataSetимеет ряд синонимов- в списке название фигурирует как
fio; - в ячейке после выбора будет отображаться в сокращенном формате как
=[fio]; - в окне
Expression Editorбудет отображаться в полном формате как=Fields!fio.Value.
- в списке название фигурирует как
Сортировка таблицы (статическая)
Сортировка помогает лучше упорядочить и представить данные в отчете.
Статическая сортировка данных (в отличие от интерактивной) выполняется до вывода отчета на экран и является условно неизменяемой (для изменения нужны выход из режима Preview, изменение в свойствах таблицы полей и/или порядка сортировки, повторная генерация отчета в режиме Preview).
Сортировку можно выполнить в порядке возрастания или убывания.
Порядок сортировки области данных таблицы:
- выберите таблицу и щелкните ссылку
Property dialog..., чтобы открыть диалоговое окноTable; - перейдите в раздел
Sortingи нажмите+; - в поле
Expressionвыберите значение для сортировки данных отчета (например,=[fio]); - выберите направление сортировки, выбрав варианты по возрастанию (
Ascending) или по убыванию (Descending); - нажмите
ОК.

Сортировка таблицы (интерактивная)
Интерактивная сортировка используется для сортировки столбцов данных в области данных в уже опубликованном отчете.
Функция интерактивной сортировки настраивается на вкладке Interactive Sort, которая доступна в диалоговом окне TextBox.

Для настройки интерактивной сортировки используются следующие поля:
Sort Expression:- выражение, задающее значение сортировки (например - поле) для данных, содержащихся в столбце;Data region or group to sort:- выберите уровень группировки или область данных в отчете для сортировки;Current scope- значением по умолчанию является текущая область;Choose data region or grouping- выбор альтернативной области данных или группировки;
Evaluate sort expression in this scope:- выберите уровень группировки в отчете, на котором будет оцениваться выражение сортировки выражение агрегированной сортировки;Current scope- значением по умолчанию является текущая область;Choose data region or grouping- выбор альтернативной области данных или группировки.
После настройки интерактивной сортировки в элементе управления TextBox при предварительном просмотре отчета в элементе управления textbox отображается значок сортировки
.
Пользователь может сортировать данные, отображаемые в текстовом поле, в порядке возрастания или убывания, щелкая по значкам.
Группировка данных таблицы
Создание группировки таблицы
- выделить таблицу на основном поле конструктора или в дереве;
- нажать на кнопку диалогового окна свойств
Property dialog…;

- в открывшемся окне в левом столбце перейти на вкладку
Table - Groupsи нажать на кнопку+;

- в результате появится группа
MainTable_Group1;

- в области
Group on:нажать на стрелку поляExpressionи в раскрывшемся списке выбрать поле изDataSet, по которому будет проводиться группировка; - в результате на основном поле конструктора выше и ниже основной строки с данными появятся строки добавленной группировки.

Удаление результирующей строки группировки
- выделить таблицу на основном поле конструктора или в дереве;
- нажать на кнопку диалогового окна свойств
Property dialog…(рис. 4.19);

- в открывшемся окне в левом столбце перейти на вкладку
Table - Groups; - в правом разделе окна перейти на вкладку
Layout(рис. 4.23);

- убрать галочку из поля
Include group footer.
Нумерация
Сквозная нумерация строк
- левой кнопкой мыши выделить ячейку таблицы (обычно крайнюю левую);
- правой кнопкой мыши вызвать контекстное меню
- выбрать пункт
Expression…; - в появившемся окне
Expression Editorв левой части окна в областиFields:выбрать пунктCommon Function >> Miscellaneous >> RowNumberи двойным кликом или кнопкойAppendдобавить пунктRowNumberв областьExpression:;

- также можно с клавиатуры в поле
Expression:ввести=RowNumber().
Сквозная нумерация строк со значения, заданного пользователем
- создать простой фильтр
ReportParametrNumberFirstString; - задать имя фильтра, тип данных
Integerи текст-приглашение для ввода данных на вкладкеReport – Parameters >> General;

- задать значение по умолчанию
1, тип данныхIntegerи текст-приглашение для ввода данных на вкладкеReport – Parameters >> DefaultValues;

- левой кнопкой мыши выбрать ячейку таблицы (обычно крайнюю левую);
- правой кнопкой мыши вызвать контекстное меню;
- выбрать пункт
Expression…; - в поле
Expression:ввести с клавиатуры=RowNumber() + Parameters!ReportParametrNumberFirstString.Value - 1или выбрать соответствующие элементы в полеFields:;

- в результате получится простой фильтр.

Нумерация групп и строк внутри групп
- для нумерации групп и строк групп необходимо дважды провести группировку таблицы;

- создать группу верхнего уровня
Type_Group(«Тип объекта анализа») на основании поляtype_nameиз текущего набора данных;

- левой кнопкой мыши выбрать ячейку таблицы (обычно крайнюю левую);
- правой кнопкой мыши вызвать контекстное меню;
- выбрать пункт
Expression…; - в поле
Expression:ввести с клавиатуры (или выбрать в полеFields:)=GroupIndex("Type_Group") + 1 & ". " & Fields.type_name.Value; - создается группа второго уровня
AO_Group(«Объект анализа») на основании поляao_nameиз текущего набора данных;

- левой кнопкой мыши выбрать ячейку таблицы (обычно крайнюю левую);
- правой кнопкой мыши вызвать контекстное меню;
- выбрать пункт
Expression…; - в поле
Expression:ввести с клавиатуры (или выбрать в полеFields:)=GroupIndex("Type_Group") + 1 & "." & GroupIndex("AO_Group") + 1 & ". " & Fields!ao_name.Value.