
- •Практический раздел содержание
- •Лабораторная работа №1
- •Основные понятия диаграмм классов uml
- •Классы, атрибуты, операции
- •Категории связей. Связь-зависимость
- •Связи-обобщения и механизм наследования классов в uml
- •Связи-ассоциации: роли, кратность, агрегация
- •Получение схемы реляционной базы данных из диаграммы классов uml
- •Лабораторная работа №2
- •Лабораторная работа №3
- •Лабораторная работа №4
- •Лабораторная работа №5
- •Лабораторная работа №6
- •3Апрос 6-2-1
- •3Апрос 6-2-2
- •Лабораторная работа №7
- •Лабораторная работа №8
- •Создание макроса
- •Сведения о построителе макросов
- •Создание изолированного макроса
- •Создание группы макросов
- •Создание внедренного макроса
- •Изменение макроса
- •Использование условий для контроля за действиями макроса
- •Примеры условных выражений в макросах
- •Лабораторная работа №9
- •Описание
- •Порядок обработки элементов оператора select:
- •Конструкция where
- •Конструкция group by
- •Конструкция having
- •Конструкция order by
- •Seller (Продавцы)
- •Sale (Продажи)
- •Supplier (Поставщики)
- •Goods (Товары)
- •Model (Модели)
- •Custom (Заказ)
- •Простые запросы
- •Агрегатные функции
- •Лабораторная работа №10
- •Многотабличные запросы
- •Примеры многотабличных запросов
- •Подзапросы и многотабличные запросы
- •Лабораторная работа №11
- •Операторы манипулирования данными
- •Лабораторная работа №12
- •Лабораторная работа №13
- •Примеры
- •Синтаксис
- •Примеры
- •Лабораторная работа №14
- •Лабораторная работа №15
- •Лабораторная работа №16
- •Лабораторная работа №17
- •Лабораторная работа №18
- •Лабораторная работа №19
- •Работа с данными
- •Состояния и режимы набора данных
- •Поля и класс tField
- •Типы полей и типы данных
- •Сортировка
- •Навигация
- •Фильтрация
- •Редактирование
- •Добавление и удаление
- •Лабораторная работа №20
- •Лабораторная работа №21
- •Лабораторная работа №22
- •Лабораторная работа №23
- •Компонент dbCtrlGrid
- •Лабораторная работа №24
- •Импорт информации из Delphi в Word
- •1. Как определить установлен ли Excel
- •2. Как определить запущен ли Excel
- •3. Как вывести данные в Excel
- •Лабораторная работа №25
- •Поиск и фильтрация данных в Delphi
- •Общие положения
- •Поиск данных
- •Лабораторная работа №26
- •Лабораторная работа №27
- •Отчеты в Delphi
- •Лабораторная работа №28
- •Лабораторная работа №29
- •Лабораторная работа №30
- •Лабораторная работа №31
- •Лабораторная работа №32
- •Стандартные функции php для работы с MySql
- •Пример простейшей поисковой системы на php
- •Сортировка таблиц
- •Лабораторная работа №33
- •Работа с соединениями
- •Постоянные соединения с базами данных
- •Лабораторная работа №34
- •Создание бд и таблиц
- •Создание бд и таблиц с помощью php
- •Создание бд и таблиц с использованием phpMyAdmin
- •Лабораторная работа №35
- •Лабораторная работа №36
- •Применение информации о структуре таблицы
- •Лабораторная работа №37
- •Лабораторная работа №39
- •Роль сервера приложений: Настройка сервера приложений
- •Предварительная подготовка
- •Настройка сервера приложений
- •Параметры сервера приложений
- •Сводка выбранных параметров
- •Завершение работы мастера настройки сервера
- •Удаление роли сервера приложений
- •Дальнейшие действия: выполнение дополнительных задач
- •Подготовка данных для сервера приложений
- •Создание сервера приложений
- •Лабораторная работа №40
- •Создание локального клиентского приложения (на том же пк, что и сервер)
- •Удаленный клиент с использованием olEnterprise
- •Об удаленном клиенте с использованием dcom
- •Удаленный клиент с использованием ActiveForm
Компонент dbCtrlGrid
Особняком от других компонентов для отображения информации баз данных стоит компонент DBCtrlGrid, не имеющий прямых аналогов среди "обычных" компонентов VCL. Он состоит из набора однотипных панелей и позволяет отображать данные в произвольной форме. При этом каждая панель является платформой, на которой размещены простые БД-компоненты - такие, как DBText, DBEdit, DBCheckBox и т.п. У всех этих компонентов будет общий источник данных, который задается централизованно в свойствах самого DBCtrlGrid. Соответственно, останется лишь выбрать поля, которые помещенные на DBCtrlGrid компоненты будут отображать.
Во время разработки определяют единственную панель, по образу которой будут созданы ее точные копии. Например, можно взять за основу форму вывода таблицы клиентов в виде DBText и DBEdit, поместив на нее DBCtrlGrid, на котором, в свою очередь, расположить метку с редактором. В результате после запуска приложения эти 2 компонента будут продублированы на всех видимых панелях сетки (рисунок 23.1).
Рисунок 23.1 – Компонент DBCtrlGrid во время разработки (слева) и во время выполнения (справа)
Данные в таких панелях-ячейках могут располагаться как вертикально, так и горизонтально, либо вообще в качестве таблицы - в несколько рядов и колонок. Формат вывода панелей, как и их размеры, а так же ряд иных параметров этого компонента, определяется при помощи ряда свойств, перечисленных в таблице 23.1.
Таблица 23.1 – Свойства компонента DBCtrlGrid
Свойство |
Тип |
Описание |
AllowDelete |
Boolean |
Определяет, может ли пользователь удалить текущую запись, нажав Ctrl+Delete. |
AllowInsert |
Boolean |
Определяет, может ли пользователь вставить новую запись, нажав клавишу Insert или добавить запись в конец, нажав Ctrl+Insert |
ColCount |
Integer |
Определяет число столбцов с панелями |
DataSource |
TDataSource |
Определяет источник данных для отображения |
Orientation |
TDBCtrlGridOrientation |
Определяет порядок следования записей. Допустимые значения: goVertical (с вертикальной прокруткой) и goHorizontal (с горизонтальной прокруткой) |
PanelBorder |
TDBCtrlGridBorder |
Определяет, должна ли быть рамка вокруг каждой панели. Допустимые значения: gbNone, gbRaised |
PanelCount |
Integer |
Указывает на число видимых панелей |
PanelHeight |
Integer |
Определяет высоту каждой панели в пикселях |
PanelIndex |
Integer |
Определяет порядковый номе выбранной панели |
PanelWidth |
Integer |
Определяет ширину каждой панели в пикселях |
RowCount |
Integer |
Определяет число строк с панелями |
SelectedColor |
TColor |
Определяет цвет фона активной панели |
ShowFocus |
Boolean |
Определяет, должна ли отображаться дополнительная рамка вокруг панели при получении фокуса ввода |
Размеры панелей определяются при помощи свойств PanelHeight и PanelWidth, а размеры компонента в целом определяются так же количеством панелей по горизонтали и по вертикали, определяемые через свойства ColCount и RowRount.
ПРИМЕЧАНИЕ!
Не рекомендуется помещать на панели ресурсоемкие компоненты вроде блокнота или изображения, особенно если панелей много. Так же следует учитывать, что все компоненты будут иметь один и тот же источник данных, определенный для самого DBCtrlGrid.
СОДЕРЖАНИЕ И ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ
Изучить теоретические сведения.
Создать новый проект.
Поместить на форму основные компоненты подключения БД – Table, DataSource, DBGrid, DBNavigator.
Добавить на форму списочные компоненты для работы с БД: DBLookUpComboBox, DBLookUpListBox и др.
Подключить базу данных и связать компоненты визуализации данных.
Подключить списочные компоненты для отображения данных (на примере вашей БД).
Проверить работоспособность подключения.
Написать код программы с использованием списочных компонентов (извлечение данных из таблицы, просмотр информации в таблице и т.д.).
Проверить работу всего проекта.
Продемонстрировать преподавателю работу разработанного образца проекта.
Получить от преподавателя индивидуальное задание и создать проект (по аналогии) для выполнения индивидуального задания.
Подготовиться к защите лабораторной работы, которая включает в себя демонстрацию индивидуального варианта, защиту по контрольным вопросам теоретической части работы.
Вопросы выходного контроля:
Расскажите, какие компоненты доступа к базам данных вы использовали в своей работе.
Назовите отличие визуальных от невизуальных компонентов доступа к БД.
Продемонстрируйте подключение БД к проекту.
Расскажите о компоненте DBCtrlGrid.
Перечислите наиболее часто используемые компоненты для работы с БД.
Расскажите, как подключать компоненты DBLookUpComboBox, DBLookUpListBox и т.д.