- •Методичні вказівки
- •Лабораторна робота №1
- •Хід роботи
- •Короткі теоретичні відомості
- •Контрольні питання
- •Лабораторна робота №2
- •Короткі теоретичні відомості
- •Котрольні питання
- •Лабораторна робота №3 Тема: Використання масивів
- •Хід роботи
- •Котрольні питання
- •Лабораторна робота №4
- •Хід роботи
- •Котрольні питання
- •Лабораторна робота №5
- •Котрольні питання
- •Лабораторна робота №6 Тема: Розробка мультимедійних програм
- •Хід роботи
- •Завдання для самостійного виконання:
- •Контрольні питання
- •Лабораторна робота №7 Тема: Створення нової компоненти
- •Хід роботи
- •1. Вибір базового класу
- •2. Створення модуля компоненту
- •3. Встановлення компоненту
- •4. Ресурси компоненту
- •5. Установка
- •6. Перевірка компоненти
- •Контрольні питання
- •Лабораторна робота №8 Тема: Створення довідкової системи
- •1. Підготовка довідкової інформації
- •2. Проект довідкової системи
- •2. Використання Microsoft Word
- •3. Використання html Help Workshop
- •4. Створення файлу довідки
- •5. Компіляція
- •6. Вивід довідкової інформації
- •Контрольні питання
- •Лабораторна робота №9 Тема: Створення інсталяційного пакету
- •1. Новий проект
- •2. Структура
- •3. Вибір встановлюваних компонентів
- •4. Конфігурування системи користувача
- •5. Настройка діалогів
- •6. Системні вимоги
- •7. Створення образу установчого диску
- •Котрольні питання
- •Лабораторна робота №10
- •Завдання для самостійної роботи:
- •Короткі теоретичні відомості Компонент tTable
- •Контрольні питання
- •Лабораторна робота №11
- •Хід роботи
- •12. Змінити дану програму так, щоб всі невізуальні компоненти мітились на модулі даних. Короткі теоретичні відомості
- •Модулі даних
- •Контрольні питання
- •Лабораторна робота №12 Тема: Налаштування та робота з базами даних
- •Хід роботи
- •Короткі теоретичні відомості
- •Контрольні питання
- •11. Розмітити на першій формі дві кнопки для перегляду створених звітів. Короткі теоретичні відомості Створення простого звіту
- •Створення звітів "master-detail"
- •Відображення графічних і мемо-полів в звітах
- •Попередній перегляд звітів
- •Котрольні питання
- •Лабораторна робота № 14
- •Хід роботи
- •Короткі теоретичні відомості
- •Контрольні питання
- •Література:
- •Студентами денного відділення спеціальності
- •5.05010301 «Розробка програмного забезпечення»
- •8 2100, Вул.Раневицька, 12, м.Дрогобич Львівської обл.
Завдання для самостійної роботи:
Реалізувати пошук за назвою тварини методами SetKey- GotoKey.
Реалізувати пошук у діапазоні за полем SIZE.
Відключати активність кнопок переміщення наступний/попередній, якщо цей запис останній чи перший.
Короткі теоретичні відомості Компонент tTable
Найбільш простим способом звернення до таблиць баз даних є використовування компоненту TTable, що надає доступ до однієї таблиці. Для цієї цілі найбільш часто використовуються наступні властивості:
Active - вказує, відкрита (true) чи ні (false) дана таблиця.
DatabaseName - ім'я каталога, що містить шукану таблицю, або псевдонім (alias) видаленої БД (псевдоніми встановлюються за допомогою утиліти конфігурації BDE, опис якої присутній в багато яких джерелах, присвячених продуктам Borland, або за допомогою SQL Explorer, що викликається за допомогою пункту меню Database/Explore). Ця властивість може бути змінене тільки у випадку, якщо таблиця закрита (її властивість Active рівно false), наприклад:
Table1->Active = false; Table1->DatabaseName = "BCDEMOS" Table1->Active = true;
TableName - ім'я таблиці.
Exclusive - якщо ця властивість приймає значення true, то ніякий інший користувач не може відкрити таблицю, якщо вона відкрита даним додатком. Якщо ця властивість рівно false (значення за умовчанням), то інші користувачі можуть відкривати цю таблицю.
IndexName - ідентифікує повторний індекс для таблиці. Цю властивість не можна змінити, поки таблиця відкрита.
MasterFields - визначає ім'я поля для створення зв'язку з іншою таблицею.
MasterSource - ім'я компоненту TDataSource, за допомогою якого TTable буде одержувати дані із зв'язаної таблиці.
ReadOnly - якщо ця властивість рівно true, таблиця відкрита в режимі "тільки для читання". Не можна змінити властивість ReadOnly, поки таблиця відкрита.
Eof, Bof - ці властивості приймають значення true, коли покажчик поточного запису розташований на останній або відповідно першому запису таблиці.
Fields - масив об'єктів TField. Використовуючи цю властивість, можна звертатися до полів по номеру, що зручно, коли наперед невідома структура таблиці:
Edit1->Text=Table1->Fields[2]->AsString;
Найбільш часто при роботі з компонентом TTable використовуються наступні методи:
Open і Close встановлюють значення властивості Active рівними True і False відповідно.
Refresh дозволяє наново рахувати набір даних з БД.
First, Last, Next, Prior переміщають покажчик поточного запису на перший, останню, наступний і попередній записи відповідно, наприклад:
Table1->First(); while (!Table1->Eof) { //щось робимо... Table1->Next(); };
MoveBy переміщає покажчик на вказане число рядків (воно може бути і негативним) в межах таблиці
Insert, Edit, Delete, Append - переводять таблицю в режими вставки запису, редагування, видалення, додавання запису відповідно.
Post - здійснює фізичне збереження змінених даних. Наприклад:
Table2->Insert(); Table2->Fields[0]->AsInteger = 100; Table2->Fields[1]->AsString =Edit1->Text; Table2->Post();
Cancel - відміняє внесені зміни, не збережені фізично.
FieldByName - надає можливість звернення до даних в полях на ім'я поля:
S=Table1->FieldByName("area")->AsString;
SetKey перемикає таблицю в режим пошуку.
GotoKey починає пошук рядка, значення Fields[n] якої рівно вибраному, де n - номер колонки таблиці, починаючи з 0:
Table1->SetKey(); Table1->Fields[0]->AsString=Edit1->Text; Table1->GotoKey();
SetRangeStart, SetRangeEnd, ApplyRange дозволяють вибрати потрібні рядки на основі діапазону значень якого-небудь поля.
Table1->SetRangeStart(); Table1->Fields[0]->AsString = Edit1->Text; Table1->SetRangeEnd(); Table1->Fields[0]->AsString = Edit2->Text; Table1->ApplyRange();
FreeBookmark, GetBookmark, GotoBookmark- дозволяють створити помічений рядок в таблиці і потім повернутися до неї пізніше. Методи Bookmark використовують клас TBookmark. Метод GetBookmark встановлює закладку на поточному рядку таблиці. GotoBookmark здійснює переміщення в таблиці до рядка, раніше відзначеною закладкою. Метод FreeBookmark використовується для знищення об'єкту типу TBookmark:
TBookmark Marker =Table1->GetBookmark(); Table1->GotoBookmark(Marker); Table1->FreeBookmark(Marker);
Події компоненту TTable дозволяють будувати і контролювати поведінку програм БД. Наприклад, подія BeforePost наступає перед вставкою або зміною запису, подія AfterPost - після збереження вставленого або зміненого запису, подія AfterDelete - після видалення запису і т.д.
Приклад: Створимо обробник події OnCalcFields компоненту TTable:
Table1pop2->Value=Table1Population->Value/Table1Area->Value;
