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

Набор программных модулей, полученный в результате построения функциональной модели «TO-BE», совместно с базой данных логического уровня определяет структуру пользовательского интерфейса, который на данном этапе представляется деревом меню (см. рис. 3.2).

Ниже представлен программный код модуля «Vnesenie_dannih_o_meropriyatie». Форма ввода информации о новом мероприятии «Новое мероприятие» доступна для пользователя «Зам. директор» на вкладке «Мероприятия» (см. приложение 6, рис. П.6.12) главного окна подсистемы. При нажатии на кнопку «Новое мероприятие» открывается соответствующая форма. После заполнения всех данных необходимо нажать на кнопку «Сохранить», после чего выполняется следующий программный код [9]:

//$$---- Form CPP ----

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "NovSob.h"

#include "MainU.h"

#include "Pomosh.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm6 *Form6;

//---------------------------------------------------------------------------

__fastcall TForm6::TForm6(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm6::N4Click(TObject *Sender)

{

Form6->Close(); //закрытие формы добавления нового мероприятия

}

//---------------------------------------------------------------------------

void __fastcall TForm6::FormActivate(TObject *Sender)

{

Form6->ADOQuery1->Active=true;

Form6->ADOQuery2->Active=true;

Form6->DBLookupComboBox1->KeyValue=-1;

Form6->DBLookupComboBox2->KeyValue=-1;

Form6->Edit1->Text="";

Form6->Edit2->Text="";

Form6->Edit3->Text="";

Form6->Edit4->Text="";

}

//---------------------------------------------------------------------------

void __fastcall TForm6::Button1Click(TObject *Sender)

{

Integer vid, org;

if ((Edit1->Text=="") || (Edit2->Text=="") || (Edit3->Text=="") || (Form6->DBLookupComboBox1->KeyValue==-1) || (Form6->DBLookupComboBox2->KeyValue==-1) )//проверка наличия пустых полей на форме

{

ShowMessage("Введите все данные");

}

else

if ((Edit1->Text!="") && (Edit2->Text!="") && (Edit3->Text!="") && (Form6->DBLookupComboBox1->KeyValue!=-1) && (Form6->DBLookupComboBox2->KeyValue==-1) )

{

vid=Form6->DBLookupComboBox1->KeyValue;

org=Form6->DBLookupComboBox2->KeyValue;

ADOQuery3->Close();

ADOQuery3->SQL->Clear();

ADOQuery3->SQL->Add("Insert into sobitia (nazvanie_s,period_s,mesto_s, id_vid, id_org) Values ('" +Edit1->Text + "','" + Edit2->Text + "','" + Edit3->Text + "', '"+vid+"', '"+org+"' )");//добавление информации о новом мероприятии

ADOQuery3->ExecSQL();

Form1->ADOQuery2->Requery();//обновлении запроса на заполнение таблицы о мероприятиях на главной форме вкладка «Мероприятия»

Form6->Edit1->Text="";

Form6->Edit2->Text="";

Form6->Edit3->Text="";

Form6->Edit4->Text="";

Form6->DBLookupComboBox1->KeyValue=-1;

Form6->DBLookupComboBox2->KeyValue=-1;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm6::N3Click(TObject *Sender)

{

Integer vid, org;

if ((Edit1->Text=="") || (Edit2->Text=="") || (Edit3->Text=="") || (Form6->DBLookupComboBox1->KeyValue==-1) || (Form6->DBLookupComboBox2->KeyValue==-1) )

//проверка наличия пустых полей на форме

{

ShowMessage("Введите все данные");

}

else

if ((Edit1->Text!="") && (Edit2->Text!="") && (Edit3->Text!="") && (Form6->DBLookupComboBox1->KeyValue!="") && (Form6->DBLookupComboBox2->KeyValue==-1) )

{

vid=Form6->DBLookupComboBox1->KeyValue;

org=Form6->DBLookupComboBox2->KeyValue;

ADOQuery3->Close();

ADOQuery3->SQL->Clear();

ADOQuery3->SQL->Add("Insert into sobitia (nazvanie_s,period_s,mesto_s, id_vid, id_org) Values ('" +Edit1->Text + "','" + Edit2->Text + "','" + Edit3->Text + "', '"+vid+"', '"+org+"' )"); //добавление информации о новом мероприятии

ADOQuery3->ExecSQL();

Form1->ADOQuery2->Requery();//обновлении запроса на заполнение таблицы о мероприятиях на главной форме вкладка «Мероприятия»

Form6->Edit1->Text="";

Form6->Edit2->Text="";

Form6->Edit3->Text="";

Form6->Edit4->Text="";

Form6->DBLookupComboBox1->KeyValue=-1;

Form6->DBLookupComboBox2->KeyValue=-1;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm6::N2Click(TObject *Sender)

{

Form8->ShowModal();

}

//---------------------------------------------------------------------------

void __fastcall TForm6::Button2Click(TObject *Sender)

{

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

ADOQuery4->Close();

ADOQuery4->SQL->Clear();

ADOQuery4->SQL->Add("Insert into organizator (nazvanie_org)Values ('" +Edit4->Text + "')");//добавление нового организатора в базу данных

ADOQuery4->ExecSQL();

Form6->ADOQuery2->Requery();//обновление списка организаторов на форме добавления нового мероприятия

Edit4->Text="";

}

else

ShowMessage("Введите организатора для добавления");

}

//---------------------------------------------------------------------------

Рис. 3.2 Дерево меню подсистемы