Перейти к содержанию

Таблица: различия между версиями

Материал из Химсофт Вики
Строка 27: Строка 27:


==Изменение высоты строк==
==Изменение высоты строк==
*для изменения высоты строк необходимо выбрать одну или несколько строк таблицы, перейти в окно свойств таблицы, пункт меню <code>Layout >> Height</code> (рис. 4.6) и ввести необходимые данные (например, 0,55).
*для изменения высоты строк необходимо выбрать одну или несколько строк таблицы, перейти в окно свойств таблицы, пункт меню <code>Layout >> Height</code> и ввести необходимые данные (например, 0,55).
[[Файл:Table6.png|center]]


==Создание и удаление столбцов==
==Создание и удаление столбцов==

Версия от 08:57, 25 декабря 2025

Таблица (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 от выделенного столбца (рис. 4.7);
  • для удаления столбцов в таблицу необходимо выбрать один или несколько столбцов, нажать правую клавишу мыши и в контекстном меню выбрать удаление столбца Delete Columns (рис. 4.7).

Объединение и разделение ячеек

  • для объединения необходимо выделить объединяемые ячейки, вызвать правой кнопкой мышки контекстное меню, выбрать пункт Merge Cells (рис. 4.8);
  • для разделения необходимо выделить разделяемую ячейку, вызвать правой кнопкой мышки контекстное меню, выбрать пункт Split Cells (рис. 4.9).

Объединение соседних ячеек с одинаковыми значениями

  • левой кнопкой мыши выделить необходимую ячейку таблицы;
  • в разделе свойств элемента Layout >> AutoMergeMode нажать левой кнопкой мыши на стрелку (рис. 4.11);
  • выбрать значение из списка: Never (по умолчанию, никогда не объединяются), Always (всегда объединяются) и Restricted (объединяются только в том случае, если соответствующие ячейки в предыдущих столбцах объединены аналогичным образом – Always или Restricted).

Изменение свойств границ

Для отображения всех границ таблицы:

  • выделить всю таблицу на основном поле конструктора или в дереве отчета ReportSection1 >> Body >> Table1;
  • перейти в окно свойств таблицы, в пункте меню Appearance >> BorderStyle (рис. 4.12);
  • в раскрывающемся списке выбрать значение Solid или другое требуемое (по умолчанию при создании таблицы границы не отображаются – значение None).

Также можно настроить отображение каждой границы ячейки отдельно. Для этого:

  • выбрать одну или несколько ячеек;
  • раскрыть пункт меню Appearance >> BorderStyle (рис. 4.13);
  • в раскрывающемся списке выбрать значение Solid для любой из четырех границ (в данном случае значение Solid установлено для нижней границы).

Наименование и форматирование заголовков

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

Определение нумерации строк

  • на ячейке данных, в которой будут выводиться номера строк (в данном случае – первый столбец, первая строка после заголовка) правой кнопкой вызвать контекстное меню;
  • выбрать пункт Expression… (рис. 4.15);
  • в появившемся окне Expression Editor (рис. 4.16) в поле Expression: ввести с клавиатуры =RowNumber() или выбрать (двойной клик) данную функцию из меню Fields: >> Common Functions >> Miscellaneous >> RowNumber;
  • в дальнейшем, при необходимости, можно создать фильтр ReportParametrNumberFirstString для ввода начального значения первой строки пользователем; в таком случае выражение будет иметь вид =RowNumber() + Parameters!ReportParametrNumberFirstString.Value – 1.

Добавление данных БД в ячейки из DataSet

  • для ввода простого значения из подключенного набора данных DataSet необходимо выбрать желаемую конечную ячейку таблицы;
  • в правой верхней части ячейки левой кнопкой мыши нажать на три горизонтальных синих черточки (рис. 4.17);
  • в появившемся списке всех доступных в DataSet полей выбрать необходимое поле;
  • при этом значение поля в DataSet имеет ряд синонимов
    • в списке название фигурирует как fio;
    • в ячейке после выбора будет отображаться в сокращенном формате как =[fio];
    • в окне Expression Editor будет отображаться в полном формате как =Fields!fio.Value.

Группировка данных таблицы

Создание группировки таблицы

  • выделить таблицу на основном поле конструктора или в дереве;
  • нажать на кнопку диалогового окна свойств Property dialog… (рис. 4.19);
  • в открывшемся окне в левом столбце перейти на вкладку Table - Groups и нажать на кнопку + (рис. 4.20);
  • в результате появится группа MainTable_Group1 (рис. 4.21);
  • в области Group on: нажать на стрелку поля Expression и в раскрывшемся списке выбрать поле из DataSet, по которому будет проводиться группировка (рис. 4.19);
  • в результате на основном поле конструктора выше и ниже основной строки с данными появятся строки добавленной группировки (рис. 4.22).

Удаление результирующей строки группировки

  • выделить таблицу на основном поле конструктора или в дереве;
  • нажать на кнопку диалогового окна свойств Property dialog… (рис. 4.19);
  • в открывшемся окне в левом столбце перейти на вкладку Table - Groups;
  • в правом разделе окна перейти на вкладку Layout (рис. 4.23);
  • убрать галочку из поля Include group footer.

Нумерация

Сквозная нумерация строк

  • левой кнопкой мыши выделить ячейку таблицы (обычно крайнюю левую);
  • правой кнопкой мыши вызвать контекстное меню
  • выбрать пункт Expression…;
  • в появившемся окне Expression Editor в левой части окна в области Fields: выбрать пункт Common Function >> Miscellaneous >> RowNumber (рис. 4.23) и двойным кликом или кнопкой Append добавить пункт RowNumber в область Expression:;
  • также можно с клавиатуры в поле Expression: ввести =RowNumber().

Сквозная нумерация строк со значения, заданного пользователем

  • создать простой фильтр ReportParametrNumberFirstString (пп. 5.1-5.2);
  • задать имя фильтра, тип данных Integer и текст-приглашение для ввода данных на вкладке Report – Parameters >> General (рис. 4.24);
  • задать значение по умолчанию 1, тип данных Integer и текст-приглашение для ввода данных на вкладке Report – Parameters >> DefaultValues (рис. 4.25);
  • левой кнопкой мыши выбрать ячейку таблицы (обычно крайнюю левую);
  • правой кнопкой мыши вызвать контекстное меню;
  • выбрать пункт Expression…;
  • в поле Expression: ввести с клавиатуры =RowNumber() + Parameters!ReportParametrNumberFirstString.Value - 1 или выбрать соответствующие элементы в поле Fields: (рис. 4.26);
  • в результате получится простой фильтр (рис. 4.27).

Нумерация групп и строк внутри групп

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