Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
tula.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.85 Mб
Скачать
      1. Вкладка «Отчеты»

Создадим отчет «Прайс-лист видео-проката» в среде Rave Reports. Для этого добавим на вкладку компоненты работы с отчетами : RvDataSetConnection1, RvSystem1, RvProject1. RvDataSetConnection1 свяжем с нужной таблицей, RvProject1 с RvSystem1. С помощью RvProject1 создадим новый проект в Rave Reports. Добавим нужные поля и внесем в отчет. Для его открытия создадим кнопку «Открыть отчет» со следующим обработчиком:

RvProject1->Execute();

Созданный отчет выглядит следующим образом (см. рис.2.16).

Рисунок 2.25 – Отчет «Прайс-лист»

  1. Создание клиентского приложения для базы данных «прием цветов в магазин»

Цель работы – научиться создавать клиентское приложение для работы с базой данных с применением встроенных инструментов в среде Builder C++.

    1. Разработка клиентского приложения

      1. Создание контейнера для связи с базой данных

Для создания клиентского приложения используем пример базы данных c названием «Прием цветов в магазин». На форму DM добавим компонент ADOConnection, 3 компонента типа ADOTable , 4 компонентов типа DataSource и один компонент типа ADOQuery. Настроим нужные свойства у компонентов. Свяжем ADOConnection с базой данных все компоненты типа ADOTable свяжем с ADOConnection. Вид формы DM (см. рис. 3.1).

Рисунок 3.26 – Вид контейнера для связи с базой данных

      1. Главная форма

Добавим на текущую форму главное меню (см. рис. 3.2), с разделом «Просмотр данных», имеющим следующие пункты:

  • О цветах

  • О поставщиках

  • О поставках

  • Запросы

  • Форма для просмотра записей

  • Связи

  • Отчеты

Рисунок 3.27 – Пункты главного меню

Для открытия подчиненных форм добавим в обработчик события к каждому пункту следующие строки:

  • Пункт «О цветах».

TForm3 *Form3= new TForm3(Application);

Form3->Show() ;

  • Пункт «О поставщиках».

TForm4 *Form4= new TForm4(Application);

Form4->Show() ;

  • Пункт «О поставках».

TForm5 *Form5= new TForm5(Application); Form5->Show() ;

  • Пункт «Запросы».

TForm6 *Form6= new TForm6(Application);

Form6->Show() ;

  • Пункт «Форма для просмотра записей».

TForm7 *Form7= new TForm7(Application);

Form7->Show() ;

  • Пункт «Связи».

TForm8 *Form8= new TForm8(Application);

Form8->Show() ;

  • Пункт «Отчеты».

TForm9 *Form9= new TForm9(Application);

Form9->Show() ;

      1. Форма Цветы

Добавим на форму DBGrid и DBNavigator, для отображения записей и навигации по ним. Для удобного просмотра разработаем на форме сортировку, фильтр и поиск по записям. Вид формы (см. рис. 3.3).

Рисунок 3.28 – Вид формы Цветы

Программный код для выполнения сортировки:

AnsiString s= ComboBox1->Items->Strings[ComboBox1->ItemIndex];

if(f==0) DM->AT1->IndexFieldNames=s+" DESC";

else DM->AT1->IndexFieldNames=s+" ASC";

Программный код для выполнения фильтра:

int f=RadioGroup2->ItemIndex;

DM->AT1->Filtered= false;

switch (f) {

case 0 : { AnsiString a="Название";

DM->AT1->Filter = a+ "='" +

DBGrid1->Columns->Items[1] ->Field->Text+"'";

DM->AT1->Filtered= true;

break; }

case 1 : { AnsiString a="Сорт";

DM->AT1->Filter = a+ "='" +

DBGrid1->Columns->Items[2] ->Field->Text+"'";

DM->AT1->Filtered= true;

break; }

case 2 : { AnsiString a="Тип_листа";

DM->AT1->Filter = a+ "='" +

DBGrid1->Columns->Items[4] ->Field->Text+"'";

DM->AT1->Filtered= true;

break; }

case 3 : { AnsiString a="Цветущий";

DM->AT1->Filter = a+ "='" +

DBGrid1->Columns->Items[5] ->Field->Text+"'";

DM->AT1->Filtered= true;

break;

}

}

Программный код для выполнения поиска:

int f=RadioGroup3->ItemIndex;

if (Edit1->Text!="") {

switch(f)

{

case 0: { TLocateOptions Opts;

Opts << loPartialKey<<loCaseInsensitive;

DM->AT1->Locate( "Код_цветка",Edit1->Text,Opts);

break; }

case 1: { TLocateOptions Opts;

Opts << loPartialKey<<loCaseInsensitive;

DM->AT1->Locate( "Название",Edit1->Text,Opts);

break; }

} }

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]