Курсовые работы / ПРИС П _27
.pdfСПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1 Абрамов Г. В., Медведкова И. Е., Коробова Л. А. Проектирование информационных систем [электронный ресурс]. Воронеж, Воронежский Государственный университет инженерных технологий, 2014. 172 с. Режим доступа:
http://biblioclub.ru/index.php?page=book_red&id=141626&sr=1
2 Вендров А. М. Проектирование программного обеспечения экономических информационных систем: Учебник для студентов вузов М. : Финансы и статистика,
2013. 352 с.
3 Карпова Т. С. Базы данных: Модели, разработка, реализация. СПб: Питер,
2012. 253 с.
4 Ревунков Г. И. Проектирование баз данных [электронный ресурс]: учебное пособие. М. : МГТУ им. Н.Э. Баумана (Московский государственный технический университет имени Н.Э. Баумана), 2013. 20 с. Режим доступа:
http://e.lanbook.com/books/element.php?pl1_id=52390
5 Вендров А. М. CASE технологии. Современные методы и средства
проектирования информационных систем. М. : Финансы и статистика, 2012. 254 с.
6 Проектирование информационных систем [Электронный ресурс]: Режим
доступа: URL http://www.kgau.ru/istiki/umk/pis/pis.htm
7 Вендров А. М. Современные технологии анализа и проектирования информационных систем [Электронный ресурс] // Центр Информационных
Технологий: Режим доступа: URL http://www.citmgu.ru/
8 Арутюнов, В. В. Теория экономических информационных систем. М. :
Синтег, 2012. 360 с.
9 Аньшин В. М., Алешин А. В., Багратиони К. А. Управление проектами:
фундаментальный курс: учебник. М. : Высшая школа экономики, 2013. 624 с.
10 Елманова Н. Корпоративные СУБД – 2012 [Электронный ресурс]//
КомпьютерПресс: Режим доступа: URL
http://www.compress.ru/article.aspx?id=20548&iid=939
32
11 Хоменко А. Д. Базы данных. Учебник для вузов. М. : Синтег, 2014. 262 с.
12Богданова С. В., Ермакова А. Н. Информационные технологии: учебное пособие для студентов вузов [электронный ресурс]: Ставрополь: Сервисшкола, 2014. 211 с. Режим доступа: http://biblioclub.ru/index.php?page=book_red&id=277476&sr=1
13Дарахвелидзе П. Г. Программирование в Delphi 7. Спб. : БХВ-Петербург, 2013. 784 с.
14Беломойцев Д. Е., Волосатова Т. М., Радионов С. В. Основные методы криптографической обработки данных: учебное пособие. М. : Изд. МГТУ им. Н.Э.
Баумана (Московский государственный технический университет имени Н.Э.
Баумана), 2014. 76 с.
15 Гусятников В. Н. Безруков А. И. Стандартизация и разработка программных систем. [Электронный ресурс]: Электрон. текстовые дан. СПб. : Лань, 2012. Режим доступа: URL http://e.lanbook.com/ books/element.php?pl1_id=5321.
16 Ачкасов В. Ю. Программирование баз данных в Delphi [электронный ресурс]: М. : Интернет-Университет Информационных Технологий, 2011. 382 с.
Режим доступа: URL http://biblioclub.ru/index.php?page=book_red&id=233558&sr=1
17 Описание бизнес процессов [Электронный ресурс]: Режим доступа: URL: http://www.bsc-consulting.ru/services/business_consulting/business_processes_definition/ 18 Нечаев Д. Ю., Чекмарев Ю. В. Надежность информационных систем
[электронный ресурс]: учебное пособие. М. : Изд. «ДМК Пресс» 2012. 64 с. Режим доступа: http://e.lanbook.com/books/element.php?pl1_id=3030
33
ПРИЛОЖЕНИЕ А
Модель бизнес-процессов предметной области по стандарту IDEF0
Рисунок А.1 - Верхний блок диаграммы бизнес-процессов IDEF0
Рисунок А.2 - Декомпозиция блока «Автоматизация деятельности туроператора»
Рисунок А.3 - Декомпозиция блока «Ведение базы данных»
34
Рисунок А.4 - Декомпозиция блока «Ввод и редактирование данных»
Рисунок А.5 - Декомпозиция блока «Работа с сервисными функциями»
Рисунок А.6 - Декомпозиция блока «Аналитическая обработка данных»
35
ПРИЛОЖЕНИЕ Б Описание таблиц базы данных
Таблица Б.1 – Описание свойств полей таблицы PWDTBL
Имя поля |
Тип данных |
Размер |
Обязательное |
Индексированное |
Комментарий |
|
|
поля |
поле |
поле |
|
USER_ID |
Счетчик |
Длинное |
Да |
Да (Совпадения |
Ключевое поле |
|
|
целое |
|
не допускаются) |
|
USER |
Текстовый |
50 |
Да |
Нет |
Имя |
|
|
|
|
|
пользователя |
PASS |
Текстовый |
50 |
Нет |
Нет |
Пароль |
Таблица Б.2 – Описание свойств полей таблицы Klient
Имя поля |
Тип данных |
Размер |
Обязательное |
Индексированное |
Комментарий |
|
|
поля |
поле |
поле |
|
ID_kl |
Счетчик |
Длинное |
Да |
Да (Совпадения |
Ключевое поле |
|
|
целое |
|
не допускаются) |
|
fam_kl |
Текстовый |
50 |
Нет |
Нет |
Фамилия |
|
|
|
|
|
клиента |
imya_kl |
Текстовый |
50 |
Нет |
Нет |
Имя клиента |
otch_kl |
Текстовый |
50 |
Нет |
Нет |
Отчество |
|
|
|
|
|
клиента |
sernompas |
Текстовый |
50 |
Нет |
Нет |
Серия и номер |
_kl |
|
|
|
|
паспорта |
|
|
|
|
|
клиента |
adres_kl |
Текстовый |
50 |
Нет |
Нет |
Адрес клиента |
|
|
|
|
|
|
tel_kl |
Текстовый |
50 |
Нет |
Нет |
Телефон клиента |
|
|
|
|
|
|
log_kl |
Логический |
- |
- |
Нет |
Метка занятости |
Таблица Б.3 – Описание свойств полей таблицы Marshrut
Имя поля |
Тип данных |
Размер |
Обязательное |
Индексированное |
Комментарий |
|
|
поля |
поле |
поле |
|
ID_mar |
Счетчик |
Длинное |
Да |
Да (Совпадения |
Ключевое поле |
|
|
целое |
|
не допускаются) |
|
strana_mar |
Текстовый |
50 |
Нет |
Нет |
Страна |
|
|
|
|
|
маршрута |
nazv_mar |
Текстовый |
50 |
Нет |
Нет |
Название |
|
|
|
|
|
маршрута |
ID_op |
Числовой |
Длинное |
Да |
Да |
Код |
|
|
целое |
|
|
туроператора |
log_mar |
Логический |
- |
- |
Нет |
Метка занятости |
36
Таблица Б.4 – Описание свойств полей таблицы Oplata
Имя поля |
Тип данных |
Размер |
Обязательное |
Индексированное |
Комментарий |
|
|
|
поля |
поле |
поле |
|
|
ID_opl |
Счетчик |
Длинное |
Да |
Да (Совпадения |
Ключевое поле |
|
|
|
целое |
|
не допускаются) |
|
|
ID_put |
Числовой |
Длинное |
Да |
Да |
Код путевки |
|
|
|
целое |
|
|
|
|
data_opl |
Дата/время |
- |
Нет |
Нет |
Дата оплаты |
|
|
|
|
|
|
|
|
stoim_opl |
Денежный |
- |
Да |
Да |
Стоимость |
|
|
|
|
|
|
путевки |
для |
|
|
|
|
|
турагентства |
|
log_opl |
Логический |
- |
- |
Нет |
Метка занятости |
Таблица Б.5 – Описание свойств полей таблицы Putevka
Имя поля |
Тип данных |
Размер |
Обязательное |
Индексированное |
Комментарий |
|
|
|
поля |
поле |
поле |
|
|
ID_put |
Счетчик |
Длинное |
Да |
Да (Совпадения |
Ключевое поле |
|
|
|
целое |
|
не допускаются) |
|
|
nomer_put |
Текстовый |
50 |
Нет |
Нет |
Номер путевки |
|
|
|
|
|
|
|
|
ID_kl |
Числовой |
Длинное |
Да |
Да |
Код клиента |
|
|
|
целое |
|
|
|
|
dataoplaty |
Дата/время |
- |
Нет |
Нет |
Дата оплаты |
|
_put |
|
|
|
|
|
|
ID_mar |
Числовой |
Длинное |
Да |
Да |
Код маршрута |
|
|
|
целое |
|
|
|
|
Stoim_put |
Денежный |
- |
Да |
Да |
Стоимость |
|
|
|
|
|
|
путевки |
для |
|
|
|
|
|
клиента |
|
log_put |
Логический |
- |
- |
Нет |
Метка занятости |
Таблица Б.6 – Описание свойств полей таблицы Stoimost
Имя поля |
Тип данных |
Размер |
Обязательное |
Индексированное |
Комментарий |
|
|
поля |
поле |
поле |
|
ID_st |
Счетчик |
Длинное |
Да |
Да (Совпадения |
Ключевое поле |
|
|
целое |
|
не допускаются) |
|
ID_mar |
Числовой |
Длинное |
Да |
Да |
Код маршрута |
|
|
целое |
|
|
|
Data_st |
Дата/время |
- |
Нет |
Нет |
Дата, на которую |
|
|
|
|
|
указана |
|
|
|
|
|
стоимость |
Stoim_st |
Денежный |
- |
Нет |
Нет |
Стоимость |
|
|
|
|
|
маршрута |
log_st |
Логический |
- |
- |
Нет |
Метка занятости |
37
Таблица Б.7 – Описание свойств полей таблицы Telefon
Имя поля |
Тип данных |
Размер |
Обязательное |
Индексированное |
Комментарий |
|
|
поля |
поле |
поле |
|
ID_tel |
Счетчик |
Длинное |
Да |
Да (Совпадения |
Ключевое поле |
|
|
целое |
|
не допускаются) |
|
ID_op |
Числовой |
Длинное |
Да |
Да |
Код |
|
|
целое |
|
|
туроператора |
nomer_tel |
Текстовый |
50 |
Нет |
Нет |
Номер телефона |
|
|
|
|
|
|
log_tel |
Логический |
- |
- |
Нет |
Метка занятости |
Таблица Б.8 – Описание свойств полей таблицы Turoperator
Имя поля |
Тип данных |
Размер |
Обязательное |
Индексированное |
Комментарий |
|
|
|
поля |
поле |
поле |
|
|
ID_op |
Счетчик |
Длинное |
Да |
Да (Совпадения |
Ключевое поле |
|
|
|
целое |
|
не допускаются) |
|
|
nazv_op |
Текстовый |
50 |
Нет |
Нет |
Название |
|
|
|
|
|
|
туроператора |
|
adres_op |
Текстовый |
50 |
Нет |
Нет |
адрес |
|
|
|
|
|
|
туроператора |
|
datazakdog |
Дата/время |
- |
Нет |
Нет |
дата заключения |
|
_op |
|
|
|
|
договора |
с |
|
|
|
|
|
туроператором |
|
dataokdog |
Дата/время |
- |
Нет |
Нет |
дата окончания |
|
_op |
|
|
|
|
договора |
с |
|
|
|
|
|
туроператором |
|
log_op |
Логический |
- |
- |
Нет |
Метка занятости |
38
ПРИЛОЖЕНИЕ В |
|
|
Текст программы |
|
|
unit DataModule; |
TVhodForm = class(TForm) |
|
|
Label1: TLabel; |
|
interface |
Label2: TLabel; |
|
|
Edit1: TEdit; |
|
uses |
Button1: TButton; |
|
SysUtils, Classes, DB, ADODB, Dialogs, ExtCtrls; |
Button2: TButton; |
|
|
DBLookupComboBox1: TDBLookupComboBox; |
|
type |
OpenDialog1: TOpenDialog; |
|
TDM = class(TDataModule) |
procedure Button2Click(Sender: TObject); |
|
ADOConnection1: TADOConnection; |
procedure DBLookupComboBox1CloseUp(Sender: TObject); |
|
OpenDialog1: TOpenDialog; |
procedure Button1Click(Sender: TObject); |
|
TuroperatorDataSource: TDataSource; |
procedure FormShow(Sender: TObject); |
|
TuroperatorQuery: TADOQuery; |
private |
|
MarshrutQuery: TADOQuery; |
{ Private declarations } |
|
StoimostQuery: TADOQuery; |
public |
|
MarshrutDataSource: TDataSource; |
{ Public declarations } |
|
StoimostDataSource: TDataSource; |
end; |
|
ADOCommand1: TADOCommand; |
|
|
temp: TADODataSet; |
var |
|
Timer1: TTimer; |
VhodForm: TVhodForm; |
|
TelefonDataSource: TDataSource; |
pwd:string; // верный пароль |
|
TelefonQuery: TADOQuery; |
flag:boolean; // признак существования формы |
|
KlientDataSource: TDataSource; |
posetitel:string; // переменная в которой будем запоминать |
|
PutevkaDataSource: TDataSource; |
посетителя |
|
KlientQuery: TADOQuery; |
|
|
PutevkaQuery: TADOQuery; |
|
|
OplataDataSource: TDataSource; |
implementation |
|
OplataQuery: TADOQuery; |
|
|
VhodDataSource: TDataSource; |
{$R *.dfm} |
|
VhodQuery: TADOQuery; |
|
|
procedure Timer1Timer(Sender: TObject); |
procedure TVhodForm.Button2Click(Sender: TObject); |
|
private |
begin |
|
{ Private declarations } |
if button1.caption='Войти' then |
|
public |
Application.terminate |
|
{ Public declarations } |
else |
|
end; |
VhodForm.Hide; |
|
|
end; |
|
var |
|
|
DM: TDM; |
procedure |
TVhodForm.DBLookupComboBox1CloseUp(Sender: |
tm:integer; |
TObject); |
|
tmp,id_op,id_mar,id_st,id_tel,id_put,id_kl,id_opl, stoim_put:string; |
begin |
|
rn:integer; |
posetitel:= DBLookupComboBox1.Text; |
|
path:string; |
if posetitel<>'' then |
|
|
begin |
|
implementation |
//устанавливаем фокус в поле ввода пароля |
|
|
Edit1.SetFocus; |
|
{$R *.dfm} |
DM.VhodQuery.Close; |
|
|
DM.VhodQuery.SQL.Clear; |
|
procedure TDM.Timer1Timer(Sender: TObject); |
//формируем запрос по ключевому полю для выбранного |
|
begin |
пользователя |
|
if TuroperatorQuery.Active=true then TuroperatorQuery.Requery(); |
DM.VhodQuery.SQL.Add('SELECT * FROM PWDTBL WHERE |
|
if MarshrutQuery.Active=true then MarshrutQuery.Requery(); |
USER_ID='+inttostr(DBLookupComboBox1.KeyValue)+';'); |
|
if StoimostQuery.Active=true then StoimostQuery.Requery(); |
DM.VhodQuery.Open; |
|
end; |
// сохраняем пароль |
|
end. |
pwd:=DM.VhodQuery.FieldByName('PASS').AsString; |
|
|
DM.VhodQuery.SQL.Clear; |
|
|
// возвращаем запрос в исходное состояние |
|
unit VhodUnit; |
DM.VhodQuery.SQL.Add('SELECT * FROM PWDTBL;'); |
|
|
DM.VhodQuery.Open; |
|
interface |
end; |
|
uses |
end; |
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, |
|
|
Forms, |
procedure TVhodForm.Button1Click(Sender: TObject); |
|
Dialogs, Inifiles, StdCtrls, DBCtrls, DataModule, MainMenuUnit; |
begin |
|
|
if posetitel<>'' then |
// если пользователь ясен |
|
// если пароль не совпадает |
|
type |
if pwd<>Trim(Edit1.Text) then |
39
// то выдаём сообщение
MessageDlg('Не верный пароль!!!',mtError, [mbOk], 0) else // иначе
begin flag:=false;
//если основная форма еще не создана, то создаём, то есть это вход в систему
if not flag then begin
MainMenuForm:= TMainMenuForm.Create(self); // создание формы основного меню
flag:=true;
end;
// вывод формы основного меню на экран
MainMenuForm.Show;
//устанавливаем ограничения в соответствии с пользователем if posetitel='Гость' then
begin MainMenuForm.N2.Enabled:=false; MainMenuForm.N8.Enabled:=false; MainMenuForm.N12.Enabled:=false; MainMenuForm.N3.Enabled:=false; MainMenuForm.N1.Enabled:=true; MainMenuForm.N4.Enabled:=true; MainMenuForm.N11.Enabled:=true; MainMenuForm.N12.Enabled:=true; MainMenuForm.N13.Enabled:=false; MainMenuForm.N14.Enabled:=false; MainMenuForm.N17.Enabled:=true; MainMenuForm.N22.Enabled:=true; MainMenuForm.N18.Enabled:=false; MainMenuForm.N19.Enabled:=false; MainMenuForm.N20.Enabled:=false; MainMenuForm.N21.Enabled:=false; MainMenuForm.N23.Enabled:=false;
// Main_MenuForm.ServiceN.Enabled:=false; end;
if posetitel='Менеджер' then begin
MainMenuForm.N1.Enabled:=true;
MainMenuForm.N2.Enabled:=true;
MainMenuForm.N8.Enabled:=true;
MainMenuForm.N11.Enabled:=true;
MainMenuForm.N12.Enabled:=true;
MainMenuForm.N13.Enabled:=false;
MainMenuForm.N14.Enabled:=false;
MainMenuForm.N15.Enabled:=true;
MainMenuForm.N17.Enabled:=true;
MainMenuForm.N18.Enabled:=false;
MainMenuForm.N19.Enabled:=false;
MainMenuForm.N20.Enabled:=false;
MainMenuForm.N21.Enabled:=false;
MainMenuForm.N22.Enabled:=true;
MainMenuForm.N23.Enabled:=false;
end;
if posetitel='Администратор'then begin
MainMenuForm.N1.Enabled:=true;
MainMenuForm.N2.Enabled:=true;
MainMenuForm.N8.Enabled:=true;
MainMenuForm.N11.Enabled:=true;
MainMenuForm.N12.Enabled:=true;
MainMenuForm.N15.Enabled:=true;
end;
// скрываем форму
VhodForm.Hide;
DM.VhodQuery.SQL.Clear;
DM.VhodQuery.Close;
end // пользователь не выбран
else MessageDlg('Укажите пользователя',mtWarning, [mbOk], 0);
end;
procedure TVhodForm.FormShow(Sender: TObject); var DBPath:widestring; //путь к БД
F :TIniFile; // файл с путем к БД
begin
//если происходит исключительная ситуация, то предлагаем пользователю связать с БД
try DM.ADOConnection1.Open; except
//если пользователь соглашается то запускаем диалог открытия
if MessageDlg('Возможно утеряна связь с БД. Связать?',mtError, [mbYes, mbNo], 0)=6 then
begin
F:=TiniFile.Create(ExtractFilePath(Application.ExeName)+'Options.ini'); if OpenDialog1.Execute then
begin DM.ADOConnection1.Close;
DBPath:=ExtractFilePath(OpenDialog1.FileName); F.WriteString('Section_DBPath','Path',DBPath); DM.ADOConnection1.Open;
end;
F.Free;
end;
end;
DM.VhodQuery.SQL.Clear; DM.VhodQuery.SQL.Add('SELECT * FROM PWDTBL;'); DM.VhodQuery.Open;
end;
end.
unit AccessDB;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, Menus,inifiles,DataModule;
function data(data:tdatetime):string; function Update(rs,tab,temp:string):boolean; function Delete(rs,tab,temp:string):boolean;
Procedure Zan(rs,tab,temp:string;tm:integer);
implementation var tmp:string;
tm:integer;
function data (data:tdatetime):string; var g,m,d:word;
begin decodedate(data,g,m,d);
result:=''+currtostr(m)+'/'+currtostr(d)+'/'+currtostr(g)+'';
end;
function Update(rs,tab,temp:string):boolean; begin
dm.temp.Active:=false;
dm.temp.CommandText:='Select log_'+rs+' from '+tab+' where (id_'+rs+'='+temp+')';
dm.temp.Active:=true;
if dm.temp.Fields[0].AsBoolean=true then begin
result:=false; end
else begin
dm.ADOCommand1.CommandText:='Update '+tab+' set log_'+rs+'=TRUE where id_'+rs+'='+temp+'';
dm.ADOCommand1.Execute;
result:=true;
end;
end;
function Delete(rs,tab,temp:string):boolean; begin
dm.temp.Active:=false;
40
dm.temp.CommandText:='Select log_'+rs+' from '+tab+' where (id_'+rs+'='+temp+')';
dm.temp.Active:=true;
if dm.temp.Fields[0].AsBoolean=true then begin
result:=false; end
else if application.MessageBox('Вы хотите удалить запись?','Удаление',mb_yesno+mb_iconquestion)=idyes then
begin
dm.ADOCommand1.CommandText:='Delete * from '+tab+' where (id_'+rs+'='+temp+')';
dm.ADOCommand1.Execute;
result:=true;
end;
end;
Procedure Zan(rs,tab,temp:string;tm:integer); begin
if tm=1 then begin
dm.ADOCommand1.CommandText:='Update '+tab+' set log_'+rs+'=FALSE WHERE (id_'+rs+'='+temp+')';
dm.ADOCommand1.Execute;
end;
end;
end.
unit MainMenuUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, inifiles;
type
TMainMenuForm = class(TForm) MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem; OpenDialog1: TOpenDialog; N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
procedure N4Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure N5Click(Sender: TObject); procedure N6Click(Sender: TObject); procedure N7Click(Sender: TObject); procedure N9Click(Sender: TObject); procedure N10Click(Sender: TObject); procedure N13Click(Sender: TObject); procedure N14Click(Sender: TObject); procedure N17Click(Sender: TObject); procedure N16Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure N18Click(Sender: TObject);
procedure N21Click(Sender: TObject); procedure N19Click(Sender: TObject); procedure N20Click(Sender: TObject); procedure N22Click(Sender: TObject); procedure N23Click(Sender: TObject);
private
{Private declarations } public
{Public declarations } end;
var
MainMenuForm: TMainMenuForm;
implementation
uses DataModule, TuroperatorUnit, MarshrutUnit, StoimostUnit, KlientUnit,
PutevkaUnit, PassChangeUnit, VhodUnit, OtchPutUnit, OtchMarFormUnit,
OtchOpUnit, OtchPribUnit, OtchPriceUnit, OtchDohodUnit; {$R *.dfm}
procedure TMainMenuForm.N4Click(Sender: TObject); begin
Application.Terminate;
end;
procedure TMainMenuForm.N3Click(Sender: TObject); var F:TiniFile;//дискриптор ini-файла
DBPath:widestring; //путь к БД begin
//создаём объект Ini-файла, ассоциируя его с физическим файлом на диске
F:=TiniFile.Create(ExtractFilePath(Application.ExeName)+'Options.ini');
//запускаем диалог открытия, если запущен успешно, то...
if OpenDialog1.Execute then begin
//сохраняем указанный в диалоговом окне пользователем путь
DBPath:=ExtractFilePath(OpenDialog1.FileName);
//записываем в раздел Section_DBPath значение переменной DBPath в параметр Path ini-файла
F.WriteString('Section_DBPath','Path',DBPath); DM.ADOConnection1.Close;
//формируем ConnectionString
DM.ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLE DB.4.0;Data Source='+DBPath+'Turagentstvo.mdb;Persist Security Info=False';
//открываем соединение
DM.ADOConnection1.Open;
end;
// освобождаем память
F.Free;
end;
procedure TMainMenuForm.N5Click(Sender: TObject); begin TuroperatorForm:=TTuroperatorForm.Create(self); TuroperatorForm.ShowModal;
end;
procedure TMainMenuForm.N6Click(Sender: TObject); begin
MarshrutForm:=TMarshrutForm.Create(self);
MarshrutForm.ShowModal;
end;
procedure TMainMenuForm.N7Click(Sender: TObject); begin
StoimostForm:=TStoimostForm.Create(self);
StoimostForm.ShowModal;
end;
procedure TMainMenuForm.N9Click(Sender: TObject);
41