
- •Практический раздел содержание
- •Лабораторная работа №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
Лабораторная работа №22
Тема: Использование компонентов для визуализации полей текущей записи
Цель работы: Изучить использование компонента для визуализации данных и полей текущей записи при разработке приложений в Delphi.
Время работы: 2 учебных часа.
Правила по ТБ: Общие.
Оборудование рабочего места: Практикум, ПК.
Программное обеспечение: Windows, MS Office, Delphi
Вопросы входного контроля:
Дайте определение понятию БД.
Расскажите, что вы знаете о компоненте Table, и для чего он используется.
Расскажите, что вы знаете о компоненте Query, и для чего он используется.
Приведите пример использования Query и Table.
Расскажите, какие невизуальные компоненты доступа к БД вы знаете.
Расскажите, какие визуальные компоненты доступа к БД вы знаете.
КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
Компоненты Delphi, обеспечивающие доступ к БД
Имеются несколько основных компонентов (объектов), которые используют постоянно для доступа к БД. Эти объекты могут быть разделены на три группы:
1.Невизуальные: Table, Query, TDataSet, TField
2.Визуальные: DBGrid, DBNavigator, DBEdit, DBMemo.
3. Связующие: TDataSource
Первая группа включает невизуальные классы, которые используются для управления таблицами и запросами. Эта группа сосредотачивается вокруг компонент типа Table, Query, и классами TDataSet и TField. В Палитре компонент они расположены на странице Data Access и BDE.
Вторая группа классов - визуальные, которые показывают данные пользователю, и позволяют ему просматривать и модифицировать их. Эта группа классов включает компоненты типа DBGrid, DBNavigator, DBEdit, DBMemo, DBImage и DBComboBox. В Палитре Компонентов они расположены на странице Data Controls.
Имеется и третий тип классов, который используется для того, чтобы связать предыдущие два типа объектов. К 3 типу относится только невизуальный компонент DataSource.
При организации работы с БД следует иметь в виду определенный порядок связи между этими компонентами и БД:
БД <-> BDE <-> Невизуальный компонент <-> Связующий компонент <-> Визуальный компонент
Рисунок 1 – Компонент DBGrid
Компонент DBGrid обеспечивает представление базы данных в виде таблицы. Свойства компонента DBGrid определяют вид таблицы и действия, которые могут быть выполнены над данными во время работы программы. Для того чтобы задать, какая информация будет отображена в таблице во время работы программы, нужно сначала определить источник данных для таблицы (установить значение свойства DataSource), затем — установить значения уточняющих параметров свойства Columns.
Свойства компонента DBGrid
Name Имя компонента
DataSource Источник отображаемых в таблице данных
Columns Отображаемую в таблице информацию
Options = dgTitles Разрешает вывод строки заголовка столбцов
Options = dgIndicator Разрешает вывод колонки индикатора. Во время работы с базой данных текущая запись помечается в колонке индикатора треугольником, новая запись — звездочкой, редактируемая — спец. знаком
Options = dgColumnResize Разрешает менять во время работы программы ширину колонок таблицы
Options = dgColLines Разрешает выводить линии, разделяющие колонки таблицы
Options = dgRowLines Разрешает выводить линии, разделяющие строки таблицы
Чтобы установить значение свойства Columns, надо в окне Object Inspector выбрать это свойство и щелкнуть на кнопке с тремя точками. В результате открывается окно редактора колонок
Для того чтобы в компонент DBGrid добавить колонку, обеспечивающую просмотр содержимого поля записи файла данных, необходимо нажать кнопку Add New, находящуюся на панели инструментов в верхней части окна (это единственная доступная после запуска редактора кнопка), выделить добавленный элемент и, используя Object Inspector, установить значения свойств этой колонки . Свойство columns компонента DBGrid представляет собой массив компонентов типа TCoiumn. Каждой колонке соответствует элемент массива. Устанавливая значения свойств компонентов column, программист задает вид колонок компонента DBGrid и определяет вид всей таблицы.
Свойства объекта column
FieldName Поле записи, содержимое которого выводится в колонке
Width Ширина колонки в пикселах
Font Шрифт, используемый для вывода текста
Color Цвет фона колонки
Alignment Способ выравнивания текста. Текст может быть выровнен по левому краю (taLeftJustify), по центру (taCenter) или по правому (taRight Justify)
Title. Caption Заголовок колонки. Значением по умолчанию является имя поля записи
Title .Alignment Способ выравнивания заголовка. По левому краю (taLeftJustify), по центру (taCenter), по правому краю (taRight Justify)
Title. Color Цвет фона заголовка колонки
Title. Font Шрифт заголовка колонки
Рисунок 2 – Компонент DB Navigator
Внешний вид компонента представляет собой сроку управляющих кнопок:
Назначение управляющих кнопок
Можно прямо связать каждую кнопку компонента с методами класса TDataSet.
Некоторые компоненты визуализации данных.
Компонент DBGrid имеет свойство Columns, представляющее собой набор объектов, каждый из которых отражает один столбец таблицы. При выделении этого свойства появляется кнопка, при нажатии на которую открывается окно Редактора Столбцов. Добавлять столбцы в Редактора Столбцов можно по одному, щелкая на первой слева кнопке Add и указывая для них в Инспекторе Объектов соответствующие поля в свойстве FieldName (или выбирая в контекстном меню раздел Add). А можно выбрать все столбцы сразу, выбрав в контекстном меню раздел Add All Fields или щелкнув на второй кнопке справа.
Для выделенного столбца в Инспекторе Объектов отметим следующие свойства:
- ButtonStyle – определяет стиль ввода данных в поле текущей записи, может принимать следующие значения:
cbsAuto |
Появление при редактировании кнопки, связанной с выпадающим списком допустимых значений |
cbsEllipsis |
Появление при редактировании кнопки с многоточием …, при щелчке на которой возникает событие OnEditButtonClick компонента DBGrid, в котором можно предусмотреть выбор соответствующего значения. Какое именно поле редактируется в обработчике OnEditButtonClick можно узнать по свойству SelectedField компонента DBGrid. Через это же свойство в поле заносится установленное пользователем значение. |
cbsNone |
Обычное редактирование без каких-либо кнопок |
-
PickList – список допустимых значений поля (для столбца Dep можно занести «Бухгалтерия», «Цех 1», «Цех 2»; а для столбца Sex – «м», «ж».). Если список PickList не заполнен, то никакой кнопки при редактировании не появляется.
- DropDownRows (по умолчанию 7) – определяет допустимое число строк в списке, отображаемое без появления полос прокрутки. Если реальное число строк меньше, размер списка устанавливается автоматически.
Обзор компонентов отображения данных со страницы Data Control:
DBText |
аналог обычной метки Label, но связанный сданными. Позволяет отображать данные некоторого поля, но не дает возможности его редактировать. Тип отображаемого поля может быть различным: строка, число, булева величина. Компонент автоматически переводит соответствующие типы в отображаеме символы. |
DBEdit |
связанный с данными аналог обычного окна редактирования Edit. Позволяет отображать и редактировать данные полей различных типов: строка, число, булева величина. Если задать в компоненте свойство ReadOnly=true, то он превратиться в элемент отображения, как и DBText |
DBMemo |
связанный с данными аналог обычного многострочного редактора Memo. Позволяет отображать и редактировать данные поля типа Memo, а также данные любых типов, указанных выше для предыдущих компонентов. |
DBRichEdit |
связанный с данными аналог обычного многострочного окна редактирования текста в обогащенном формате RTF, область применения та же, что и для компонента DBMemo. |
DBImage |
связанный с данными аналог обычного компонента Image. Компонент позволяет отображать графические поля, например фоторгафии сотрудников. |
DBCheckBox |
связанный с данными аналог обычного индикатора CheckBox. Позволяет отображать и редактировать данные поля булевского типа. Если при выводе ланных поле имеет значение True, то индикатор включсется. И наоборот, при редактировании поля присваиваемое ему значение определяется состоянием индикатора. |
DBRadioGroup |
связанный с данными аналог группы радиокнопок RadioGroup. Позволяет отображать и редактировать поля с ограниченным множеством возможных значений. В нашеи примере это может относится к полю Dep.!!! |
Все перечисленные компоненты имеют свойства DataSource – источник данных (компонент типа TDataSource) и DataField – поле, с которым связан компонент.
Для всех этих компонентов в Инспекторе Объектов отсутствуют основные свойства, отображающие содержание: Caption, Text, Image и т.п. Все эти свойства доступны в компонентах только во время выполнения. Эти свойства – это значения соответствующих полей таблицы базы данных.
СОДЕРЖАНИЕ И ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ
Изучить теоретические сведения.
Создать новый проект.
Поместить на форму основные компоненты подключения БД – Table, DataSource, DBGrid, DBNavigator.
Добавить на форму компоненты визуализации данных: DBText, DBEdit, DBMemo и др.
Подключить базу данных и связать компоненты визуализации данных.
Проверить работоспособность подключения.
Написать код программы с использованием компонентов визуализации (извлечение данных из таблицы, просмотр информации в таблице и т.д.).
Проверить работу всего проекта.
Продемонстрировать преподавателю работу разработанного образца проекта.
Получить от преподавателя индивидуальное задание и создать проект (по аналогии) для выполнения индивидуального задания.
Подготовиться к защите лабораторной работы, которая включает в себя демонстрацию индивидуального варианта, защиту по контрольным вопросам теоретической части работы.
Вопросы выходного контроля:
Расскажите, какие компоненты доступа к базам данных вы использовали в своей работе.
Назовите отличие визуальных от невизуальных компонентов доступа к БД.
Перечислите наиболее часто используемые компоненты для работы с БД.
Расскажите, как подключать компоненты DBEdit, DBText и т.д.
Назовите сходства и отличий при работе с компонентами визуализации данных и обычными.