Автоматизація ведення бази даних індивідуальних програм реабілітації інвалідів
Проектування бази даних та інтерфейсу програми. Розробка бази даних за допомогою Firebird 2.5. Контроль коректності вхідних та вихідних даних. Додавання та редагування інформації. Вплив електронно-обчислювальних машин на стан здоров'я користувачів.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | украинский |
Дата добавления | 12.10.2015 |
Размер файла | 4,7 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Рисунок А.6 - Довідник ступенів обмежень
Рисунок А.7 - Фрагмент довідника реабілітаційних заходів
Рисунок А.8 - Довідник реабілітаційних потенціалів
Рисунок А.9 - Довідник цілей реабілітації
Приклад заповненої таблиці інформації про пацієнта приведено на рисунку А.10. Ця таблиця заповнюється в процесі користування програмою і приведена лише для ознайомлення.
Рисунок А.10 - Таблиця інформації про пацієнта
Додаток Б
Лістинг програми
Лістинг Б.1 - Текст програми
//Текст модуля Main, головна форма
unit Main;
procedure TMainForm.m_exitClick(Sender: TObject);
begin
Close();
end;
procedure TMainForm.m_aboutClick(Sender: TObject);
begin
if (not Assigned(AboutForm)) then
AboutForm:=TAboutForm.Create(Self);
AboutForm.ShowModal();
end;
procedure TMainForm.tb_view_iprClick(Sender: TObject);
begin
if (not Assigned(FormIPRView)) then
FormIPRView:=TFormIPRView.Create(Self);
FormIPRView.showModal();
end;
procedure TMainForm.m_add_iprClick(Sender: TObject);
begin
if (not Assigned(FormAddIPR)) then
Application.CreateForm(TFormAddIPR, FormAddIPR);
if DataModule1.IBQuery3.RecordCount>0 then
begin
FormAddIPR.fio.Text:= DataModule1.IBQuery3.fieldbyname('fio').Value;
FormAddIPR.fio.Tag:= DataModule1.IBQuery3.fieldbyname('id_chel').Value;
FormAddIPR.Tag:=11;
FormAddIPR.ShowModal();
end;
end;
procedure TMainForm.m_zmin_korClick(Sender: TObject);
begin
if (not Assigned(FormRedPas)) then
FormRedPas:=TFormRedPas.Create(Self);
FormRedPas.ShowModal();
end;
procedure TMainForm.m_poiskClick(Sender: TObject);
begin
if (Panel_Poshuk.Visible=true) then Panel_Poshuk.Visible:=false
else begin if (Panel_Poshuk.Visible=false) then Panel_Poshuk.Visible:=true; end;
end;
procedure TMainForm.FormCreate(Sender: TObject);
begin
if DataModule1.Tag=1 then
begin
DBGrid_Inf.DataSource:=Datamodule1.DataSource3;
if (not Assigned(FormAvtoriz)) then Application.CreateForm(TFormAvtoriz, FormAvtoriz);
DataModule1.IBQuery3.Last;
StatusBar1.Panels[0].Text := 'Кількість пацієнтів: '+IntToStr(DataModule1.IBQuery3.RecordCount);
c_osv.Clear;
c_sex.Clear;
c_gr.Clear;
c_obl.Clear;
DataModule1.IBQuery_osvita.Active:=true;
while not DataModule1.IBQuery_osvita.Eof do
Begin
c_osv.Items.Add(DataModule1.IBQuery_osvita.Fields[1].Value);
DataModule1.IBQuery_osvita.Next;
end;
DataModule1.IBQuery_sex.Active:=true;
while not DataModule1.IBQuery_sex.Eof do
Begin
c_sex.Items.Add(DataModule1.IBQuery_sex.Fields[1].Value);
DataModule1.IBQuery_sex.Next;
end;
DataModule1.IBQuery_gr.Active:=true;
while not DataModule1.IBQuery_gr.Eof do
Begin
c_gr.Items.Add(DataModule1.IBQuery_gr.Fields[1].Value);
DataModule1.IBQuery_gr.Next;
end;
DataModule1.IBQuery_obl.Active:=true;
while not DataModule1.IBQuery_obl.Eof do
Begin
c_obl.Items.Add(DataModule1.IBQuery_obl.Fields[1].Value);
DataModule1.IBQuery_obl.Next;
end;
end;
end;
procedure TMainForm.m_add_pacClick(Sender: TObject);
begin
if (not Assigned(FormAddPacient)) then
Application.CreateForm(TFormAddPacient, FormAddPacient);
FormAddPacient.ShowModal();
end;
procedure TMainForm.pop_delClick(Sender: TObject);
var
id:string;
begin
id:=DataModule1.IBQuery3.FieldByName('id_chel').Value;
DataModule1.IBTable_Os.Active:=true;
DataModule1.IBTable_Os.Locate('id_chel',id, []);
if Application.MessageBox('Ви дійсно бажаєте видалити цей запис? Це також видалить всі зв`язані з ним дані по ІПР','Увага!',mb_YesNo+mb_Iconquestion)=idYes then
begin
DataModule1.IBTable_Os.Delete;
end;
DataModule1.IBQuery3.Active:=false;
DataModule1.IBQuery3.Active:=true;
DataModule1.IBQuery3.Last;
StatusBar1.Panels[0].Text := 'Кількість пацієнтів: '+IntToStr(DataModule1.IBQuery3.RecordCount);
end;
procedure TMainForm.tb_excelClick(Sender: TObject);
var
ExcelApp: variant;
i: integer;
s:string;
begin
ExcelApp:=CreateOleObject('Excel.Application');
ExcelApp.Visible := false;
ExcelApp.Application.EnableEvents:=False;
ExcelApp.Workbooks.Open('E:\Diplom\1.xlsx', UpdateLinks:=0);
ExcelApp.ActiveWorkBook.Sheets.Item[1].Activate;
s:=Trim(DataModule1.IBQuery3.FieldByName('fio').AsString);
s:='E:\'+s+'.xls';
ExcelApp.ActiveWorkbook.SaveAs(s, FileFormat:=-4143, Password:='', WriteResPassword:='', ReadOnlyRecommended:=false, CreateBackup:=false);
ExcelApp.Workbooks.Close;
ExcelApp.Workbooks.Open(s, UpdateLinks:=0);
with DataModule1 do begin
ExcelApp.ActiveWorkbook.WorkSheets[1].Cells[20,2]:=DataModule1.IBQuery3.FieldByName('fio').AsString;
ExcelApp.ActiveWorkbook.WorkSheets[1].Cells[22,5]:=DataModule1.IBQuery3.FieldByName('dr').AsString;
ExcelApp.ActiveWorkbook.WorkSheets[1].Cells[26,3]:=DataModule1.IBQuery3.FieldByName('tel').AsString;
ExcelApp.ActiveWorkbook.WorkSheets[1].Cells[30,6]:=DataModule1.IBQuery3.FieldByName('work').AsString;
i:=DataModule1.IBQuery3.FieldByName('sex').AsInteger;
DataModule1.IBTable_Sex.Locate('id_sex',i,[]);
s:=DataModule1.IBTable_Sex.Fields[1].Value;
ExcelApp.ActiveWorkbook.WorkSheets[1].Cells[23,3]:=s;
i:=DataModule1.IBQuery3.FieldByName('osvita').AsInteger;
DataModule1.IBQuery_osvita.Locate('id_osvita',i,[]);
s:=DataModule1.IBQuery_osvita.Fields[1].Value;
ExcelApp.ActiveWorkbook.WorkSheets[1].Cells[28,4]:=s;
i:=DataModule1.IBQuery3.FieldByName('gr_inv').AsInteger;
DataModule1.ibquery_gr.Locate('id_gr_inv',i,[]);
s:=DataModule1.ibquery_gr.Fields[1].Value;
ExcelApp.ActiveWorkbook.WorkSheets[1].Cells[32,5]:=s;
i:=DataModule1.IBQuery3.FieldByName('punkt').AsInteger;
DataModule1.IBQuery_nas_punkt.Locate('id_nas_punkt',i,[]);
s:=DataModule1.IBQuery_nas_punkt.Fields[1].Value;
ExcelApp.ActiveWorkbook.WorkSheets[1].Cells[24,5]:=s;
end;
ExcelApp.Visible:=True;
ExcelApp.Workbooks.Close;
ExcelApp := Unassigned;
end;
procedure TMainForm.DBGrid_InfTitleClick(Column: TColumn);
var
i:integer;
begin
with DataModule1.IBQuery3 do begin
Active:=false;
StatusBar1.Panels[2].Text := '';
SQL.Clear;
SQL.Add('SELECT os.id_chel, os.fio, os.dr, sex.sex as sex1, obl.obl as obl1, osv.osvita as osvita1, os.work, os.street, os.index1, os.tel, ');
SQL.Add('ro.rajon_obl as r_obl1, np.nas_punkt as punkt1, r.rajon as r_punkt1, gr.gr_inv as gr_inv1, prof.prof as id_prof1 From Os_karta os ');
SQL.Add('INNER JOIN Spr_sex sex ON os.sex = sex.id_sex');
SQL.Add('INNER JOIN Spr_GR_INV gr ON os.gr_inv = gr.id_gr_inv');
SQL.Add('INNER JOIN Spr_osvita osv ON os.osvita = osv.id_osvita');
SQL.Add('INNER JOIN Spr_obl obl ON os.obl = obl.id_obl');
SQL.Add('INNER JOIN Spr_rajon_obl ro ON os.r_obl = ro.id_rajon_obl');
SQL.Add('INNER JOIN Spr_rajon r ON os.r_punkt = r.id_rajon');
SQL.Add('INNER JOIN Spr_nas_punkt np ON os.punkt = np.id_nas_punkt');
SQL.Add('INNER JOIN Spr_prof prof ON os.id_prof = prof.id_prof');
SQL.Add('ORDER BY '+ Column.FieldName);
Open;
Active:=true;
end;
for i:=0 to DBGrid_Inf.Columns.Count-1 do
begin
DBGrid_Inf.Columns.Items[i].Color:=clWhite;
end;
for i:=0 to DBGrid_Inf.Columns.Count-1 do
begin
if DBGrid_Inf.Columns.Items[i].DisplayName=Column.FieldName then
begin
DBGrid_Inf.Columns.Items[i].Color:=clSkyBlue;
end;
end;
end;
procedure TMainForm.BitBtn_filtrClick(Sender: TObject);
begin
with DataModule1.IBQuery3 do begin
Close;
SQL.Clear;
SQL.Add('SELECT os.id_chel, os.fio, os.dr, sex.sex as sex1, obl.obl as obl1, osv.osvita as osvita1, os.work, os.street, os.index1, os.tel, ');
SQL.Add('ro.rajon_obl as r_obl1, np.nas_punkt as punkt1, r.rajon as r_punkt1, gr.gr_inv as gr_inv1, prof.prof as id_prof1 From Os_karta os ');
SQL.Add('INNER JOIN Spr_sex sex ON os.sex = sex.id_sex');
SQL.Add('INNER JOIN Spr_GR_INV gr ON os.gr_inv = gr.id_gr_inv');
SQL.Add('INNER JOIN Spr_osvita osv ON os.osvita = osv.id_osvita');
SQL.Add('INNER JOIN Spr_obl obl ON os.obl = obl.id_obl');
SQL.Add('INNER JOIN Spr_rajon_obl ro ON os.r_obl = ro.id_rajon_obl');
SQL.Add('INNER JOIN Spr_rajon r ON os.r_punkt = r.id_rajon');
SQL.Add('INNER JOIN Spr_nas_punkt np ON os.punkt = np.id_nas_punkt');
SQL.Add('INNER JOIN Spr_prof prof ON os.id_prof = prof.id_prof');
SQL.Add('WHERE os.dr> :D1 and os.dr< :D2');
Params.ParamByName('D1').AsDate:=Datetimepicker1.Date;
Params.ParamByName('D2').AsDate:=Datetimepicker2.Date;
Open;
end;
StatusBar1.Panels[2].Text := 'Відфільтровано записів: '+IntToStr(DataModule1.IBQuery3.RecordCount);
end;
procedure TMainForm.pop_add_iprClick(Sender: TObject);
begin
if ((DataModule1.IBQuery3.RecordCount>0) and (DataModule1.IBQuery3.RecNo>0)) then
begin
if (not Assigned(FormAddIPR)) then
FormAddIPR:=TFormAddIPR.Create(Self);
FormAddIPR.fio.Text:= DataModule1.IBQuery3.fieldbyname('fio').Value;
FormAddIPR.fio.Tag:= DataModule1.IBQuery3.fieldbyname('id_chel').Value;
FormAddIPR.Tag:=11;
FormAddIPR.ShowModal();
end;
end;
procedure TMainForm.pop_add_pacClick(Sender: TObject);
begin
if (not Assigned(FormAddPacient)) then
FormAddPacient:=TFormAddPacient.Create(Self);
FormAddPacient.ShowModal();
end;
procedure TMainForm.m_konfClick(Sender: TObject);
begin
if (not Assigned(FormNastr)) then
FormNastr:=TFormNastr.Create(Self);
FormNastr.ShowModal();
end;
procedure TMainForm.tb_add_pacClick(Sender: TObject);
begin
if (not Assigned(FormAddPacient)) then
FormAddPacient:=TFormAddPacient.Create(Self);
FormAddPacient.ShowModal();
end;
procedure TMainForm.m_diagnozClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet1.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[0];
FormDovidnik.PageControl1.Pages[0].Caption:='Дігнози МКХ';
DataModule1.IBQuery_mkh.Active:=true;
FormDovidnik.DBGrid8.DataSource:=DataModule1.ds_mkh;
FormDovidnik.Tag:=1;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_mkhClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet1.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[0];
FormDovidnik.PageControl1.Pages[0].Caption:='Супутні захворювання МКХ-10';
DataModule1.IBQuery_mkh10.Active:=true;
FormDovidnik.DBGrid8.DataSource:=DataModule1.ds_mkh10;
FormDovidnik.Tag:=2;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_profClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Професії';
DataModule1.IBQuery_prof.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_prof;
FormDovidnik.Tag:=3;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_terminClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Терміни реабілітації';
DataModule1.IBQuery_termin.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_termin;
FormDovidnik.Tag:=4;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_obClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Обсяги реабілітації';
DataModule1.IBQuery_obsjag.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_obsjag;
FormDovidnik.Tag:=5;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_miscClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Місця реабілітації';
DataModule1.IBQuery_misce.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_misce;
FormDovidnik.Tag:=6;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_pracClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Працівники МСЕК';
DataModule1.IBQuery_prac.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_prac;
FormDovidnik.Tag:=7;
FormDovidnik.ShowModal();
end;
procedure TMainForm.pop_redClick(Sender: TObject);
begin
if (not Assigned(FormRedpac)) then
FormRedpac:=TFormRedpac.Create(Self);
FormRedpac.fio.Tag:= DataModule1.IBQuery3.fieldbyname('id_chel').Value;
FormRedpac.ShowModal();
end;
procedure TMainForm.BitBtn_cancelClick(Sender: TObject);
var
i:integer;
begin
for i:=0 to DBGrid_Inf.Columns.Count-1 do
begin
DBGrid_Inf.Columns.Items[i].Color:=clWhite;
end;
c_gr.ItemIndex:=-1;
c_obl.ItemIndex:=-1;
c_osv.ItemIndex:=-1;
c_sex.ItemIndex:=-1;
fio.Clear;
with DataModule1.IBQuery3 do begin
Close;
SQL.Clear;
SQL.Add('SELECT os.id_chel, os.fio, os.dr, sex.sex as sex1, obl.obl as obl1, osv.osvita as osvita1, os.work, os.street, os.index1, os.tel, ');
SQL.Add('ro.rajon_obl as r_obl1, np.nas_punkt as punkt1, r.rajon as r_punkt1, gr.gr_inv as gr_inv1, prof.prof as id_prof1 From Os_karta os ');
SQL.Add('INNER JOIN Spr_sex sex ON os.sex = sex.id_sex');
SQL.Add('INNER JOIN Spr_GR_INV gr ON os.gr_inv = gr.id_gr_inv');
SQL.Add('INNER JOIN Spr_osvita osv ON os.osvita = osv.id_osvita');
SQL.Add('INNER JOIN Spr_obl obl ON os.obl = obl.id_obl');
SQL.Add('INNER JOIN Spr_rajon_obl ro ON os.r_obl = ro.id_rajon_obl');
SQL.Add('INNER JOIN Spr_rajon r ON os.r_punkt = r.id_rajon');
SQL.Add('INNER JOIN Spr_nas_punkt np ON os.punkt = np.id_nas_punkt');
SQL.Add('INNER JOIN Spr_prof prof ON os.id_prof = prof.id_prof');
Open;
end;
StatusBar1.Panels[2].Text :='';
end;
procedure TMainForm.c_sexChange(Sender: TObject);
var
s:string;
begin
c_gr.ItemIndex:=-1;
c_obl.ItemIndex:=-1;
c_osv.ItemIndex:=-1;
fio.Clear;
s:=Trim(c_sex.Text);
DataModule1.ibtable_sex.Locate('sex',s,[]);
s:=DataModule1.ibtable_sex.FieldByName('id_sex').Value;
with DataModule1.IBQuery3 do begin
Close;
SQL.Clear;
SQL.Add('SELECT os.id_chel, os.fio, os.dr, sex.sex as sex1, obl.obl as obl1, osv.osvita as osvita1, os.work, os.street, os.index1, os.tel, ');
SQL.Add('ro.rajon_obl as r_obl1, np.nas_punkt as punkt1, r.rajon as r_punkt1, gr.gr_inv as gr_inv1, prof.prof as id_prof1 From Os_karta os ');
SQL.Add('INNER JOIN Spr_sex sex ON os.sex = sex.id_sex');
SQL.Add('INNER JOIN Spr_GR_INV gr ON os.gr_inv = gr.id_gr_inv');
SQL.Add('INNER JOIN Spr_osvita osv ON os.osvita = osv.id_osvita');
SQL.Add('INNER JOIN Spr_obl obl ON os.obl = obl.id_obl');
SQL.Add('INNER JOIN Spr_rajon_obl ro ON os.r_obl = ro.id_rajon_obl');
SQL.Add('INNER JOIN Spr_rajon r ON os.r_punkt = r.id_rajon');
SQL.Add('INNER JOIN Spr_nas_punkt np ON os.punkt = np.id_nas_punkt');
SQL.Add('INNER JOIN Spr_prof prof ON os.id_prof = prof.id_prof');
SQL.Add('WHERE os.SEX='+s);
Open;
StatusBar1.Panels[2].Text := 'Відфільтровано записів: '+IntToStr(DataModule1.IBQuery3.RecordCount);
end;
end;
procedure TMainForm.m_r_oblClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Райони області';
DataModule1.IBQuery_r_obl.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_r_obl;
FormDovidnik.Tag:=8;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_oblClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Oбласті';
DataModule1.IBQuery_obl.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_obl;
FormDovidnik.Tag:=9;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_nas_punktClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Населений пункт';
DataModule1.IBQuery_nas_punkt.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_punkt;
FormDovidnik.Tag:=10;
FormDovidnik.ShowModal();
end;
procedure TMainForm.m_r_punktClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet2.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[1];
FormDovidnik.PageControl1.Pages[1].Caption:='Райони населеного пункту';
DataModule1.IBQuery_rajon.Active:=true;
FormDovidnik.DBGrid7.DataSource:=DataModule1.ds_rajon;
FormDovidnik.Tag:=11;
FormDovidnik.ShowModal();
end;
procedure TMainForm.c_grChange(Sender: TObject);
var
s:string;
begin
c_obl.Text:='';
c_osv.Text:='';
c_sex.Text:='';
fio.Clear;
s:=Trim(c_gr.Text);
DataModule1.ibquery_gr.Locate('gr_inv',s,[]);
s:=DataModule1.ibquery_gr.FieldByName('id_gr_inv').Value;
with DataModule1.IBQuery3 do begin
Close;
SQL.Clear;
SQL.Add('SELECT os.id_chel, os.fio, os.dr, sex.sex as sex1, obl.obl as obl1, osv.osvita as osvita1, os.work, os.street, os.index1, os.tel, ');
SQL.Add('ro.rajon_obl as r_obl1, np.nas_punkt as punkt1, r.rajon as r_punkt1, gr.gr_inv as gr_inv1, prof.prof as id_prof1 From Os_karta os ');
SQL.Add('INNER JOIN Spr_sex sex ON os.sex = sex.id_sex');
SQL.Add('INNER JOIN Spr_GR_INV gr ON os.gr_inv = gr.id_gr_inv');
SQL.Add('INNER JOIN Spr_osvita osv ON os.osvita = osv.id_osvita');
SQL.Add('INNER JOIN Spr_obl obl ON os.obl = obl.id_obl');
SQL.Add('INNER JOIN Spr_rajon_obl ro ON os.r_obl = ro.id_rajon_obl');
SQL.Add('INNER JOIN Spr_rajon r ON os.r_punkt = r.id_rajon');
SQL.Add('INNER JOIN Spr_nas_punkt np ON os.punkt = np.id_nas_punkt');
SQL.Add('INNER JOIN Spr_prof prof ON os.id_prof = prof.id_prof');
SQL.Add('WHERE os.gr_inv='+s);
Open;
StatusBar1.Panels[2].Text := 'Відфільтровано записів: '+IntToStr(DataModule1.IBQuery3.RecordCount);
end;
end;
procedure TMainForm.c_osvChange(Sender: TObject);
var
s:string;
begin
c_gr.ItemIndex:=-1;
c_obl.ItemIndex:=-1;
c_sex.ItemIndex:=-1;
fio.Clear;
s:=Trim(c_osv.Text);
DataModule1.IBQuery_osvita.Locate('osvita',s,[]);
s:=DataModule1.IBQuery_osvita.FieldByName('id_osvita').Value;
with DataModule1.IBQuery3 do begin
Close;
SQL.Clear;
SQL.Add('SELECT os.id_chel, os.fio, os.dr, sex.sex as sex1, obl.obl as obl1, osv.osvita as osvita1, os.work, os.street, os.index1, os.tel, ');
SQL.Add('ro.rajon_obl as r_obl1, np.nas_punkt as punkt1, r.rajon as r_punkt1, gr.gr_inv as gr_inv1, prof.prof as id_prof1 From Os_karta os ');
SQL.Add('INNER JOIN Spr_sex sex ON os.sex = sex.id_sex');
SQL.Add('INNER JOIN Spr_GR_INV gr ON os.gr_inv = gr.id_gr_inv');
SQL.Add('INNER JOIN Spr_osvita osv ON os.osvita = osv.id_osvita');
SQL.Add('INNER JOIN Spr_obl obl ON os.obl = obl.id_obl');
SQL.Add('INNER JOIN Spr_rajon_obl ro ON os.r_obl = ro.id_rajon_obl');
SQL.Add('INNER JOIN Spr_rajon r ON os.r_punkt = r.id_rajon');
SQL.Add('INNER JOIN Spr_nas_punkt np ON os.punkt = np.id_nas_punkt');
SQL.Add('INNER JOIN Spr_prof prof ON os.id_prof = prof.id_prof');
SQL.Add('WHERE os.osvita='+s);
Open;
StatusBar1.Panels[2].Text := 'Відфільтровано записів: '+IntToStr(DataModule1.IBQuery3.RecordCount);
end;
end;
procedure TMainForm.c_oblChange(Sender: TObject);
var
s:string;
begin
c_gr.ItemIndex:=-1;
c_osv.ItemIndex:=-1;
c_sex.ItemIndex:=-1;
fio.Clear;
s:=Trim(c_obl.Text);
DataModule1.IBQuery_obl.Locate('obl',s,[]);
s:=DataModule1.IBQuery_obl.FieldByName('id_obl').Value;
with DataModule1.IBQuery3 do begin
Close;
SQL.Clear;
SQL.Add('SELECT os.id_chel, os.fio, os.dr, sex.sex as sex1, obl.obl as obl1, osv.osvita as osvita1, os.work, os.street, os.index1, os.tel, ');
SQL.Add('ro.rajon_obl as r_obl1, np.nas_punkt as punkt1, r.rajon as r_punkt1, gr.gr_inv as gr_inv1, prof.prof as id_prof1 From Os_karta os ');
SQL.Add('INNER JOIN Spr_sex sex ON os.sex = sex.id_sex');
SQL.Add('INNER JOIN Spr_GR_INV gr ON os.gr_inv = gr.id_gr_inv');
SQL.Add('INNER JOIN Spr_osvita osv ON os.osvita = osv.id_osvita');
SQL.Add('INNER JOIN Spr_obl obl ON os.obl = obl.id_obl');
SQL.Add('INNER JOIN Spr_rajon_obl ro ON os.r_obl = ro.id_rajon_obl');
SQL.Add('INNER JOIN Spr_rajon r ON os.r_punkt = r.id_rajon');
SQL.Add('INNER JOIN Spr_nas_punkt np ON os.punkt = np.id_nas_punkt');
SQL.Add('INNER JOIN Spr_prof prof ON os.id_prof = prof.id_prof');
SQL.Add('WHERE os.obl='+s);
Open;
StatusBar1.Panels[2].Text := 'Відфільтровано записів: '+IntToStr(DataModule1.IBQuery3.RecordCount);
end;
end;
procedure TMainForm.fioChange(Sender: TObject);
begin
with DataModule1.IBQuery3 do begin
Close;
SQL.Clear;
SQL.Add('SELECT os.id_chel, os.fio, os.dr, sex.sex as sex1, obl.obl as obl1, osv.osvita as osvita1, os.work, os.street, os.index1, os.tel, ');
SQL.Add('ro.rajon_obl as r_obl1, np.nas_punkt as punkt1, r.rajon as r_punkt1, gr.gr_inv as gr_inv1, prof.prof as id_prof1 From Os_karta os ');
SQL.Add('INNER JOIN Spr_sex sex ON os.sex = sex.id_sex');
SQL.Add('INNER JOIN Spr_GR_INV gr ON os.gr_inv = gr.id_gr_inv');
SQL.Add('INNER JOIN Spr_osvita osv ON os.osvita = osv.id_osvita');
SQL.Add('INNER JOIN Spr_obl obl ON os.obl = obl.id_obl');
SQL.Add('INNER JOIN Spr_rajon_obl ro ON os.r_obl = ro.id_rajon_obl');
SQL.Add('INNER JOIN Spr_rajon r ON os.r_punkt = r.id_rajon');
SQL.Add('INNER JOIN Spr_nas_punkt np ON os.punkt = np.id_nas_punkt');
SQL.Add('INNER JOIN Spr_prof prof ON os.id_prof = prof.id_prof');
SQL.Add('WHERE os.fio LIKE '''+fio.Text+'%'';');
Open;
end;
end;
procedure TMainForm.FormActivate(Sender: TObject);
begin
StatusBar1.Panels[2].Text:='Сьогодні '+DatetoStr(now);
if FormAvtoriz.tag=1 then
begin
StatusBar1.Panels[1].Text:='В системі: Адміністратор';
MainMenu1.Items[0].Items[0].Enabled:=true;
MainMenu1.Items[3].Enabled:=true;
tb_add_pac.Enabled:=true;
tb_red_pac.Enabled:=true;
pop_add_pac.Enabled:=true;
pop_add_ipr.Enabled:=true;
pop_red.Enabled:=true;
pop_del.Enabled:=true;
end
else
begin
if FormAvtoriz.tag=2 then
begin
StatusBar1.Panels[1].Text:='В системі: Гість';
MainMenu1.Items[0].Items[0].Enabled:=false;
MainMenu1.Items[1].Enabled:=false;
MainMenu1.Items[3].Enabled:=false;
tb_add_pac.Enabled:=false;
tb_red_pac.Enabled:=false;
pop_add_pac.Enabled:=false;
pop_add_ipr.Enabled:=false;
pop_red.Enabled:=false;
pop_del.Enabled:=false;
end;
end;
end;
procedure TMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if Assigned(FormAvtoriz) then FormAvtoriz.Close();
if Assigned(FormAddIPR) then FormAddIPR.Close;
end;
procedure TMainForm.m_exClick(Sender: TObject);
begin
FormAvtoriz.tag:=3;
MainForm.visible:=false;
FormAvtoriz.Visible:=true;
end;
procedure TMainForm.tb_red_pacClick(Sender: TObject);
begin
if ((DataModule1.IBQuery3.RecordCount>0) and (DataModule1.IBQuery3.RecNo>0)) then
begin
if (not Assigned(FormRedpac)) then
FormRedpac:=TFormRedpac.Create(Self);
FormRedpac.fio.Tag:= DataModule1.IBQuery3.fieldbyname('id_chel').Value;
FormRedpac.ShowModal();
end;
end;
procedure TMainForm.m_pathClick(Sender: TObject);
begin
if (not Assigned(Formpath)) then
Formpath:=TFormpath.Create(Self);
Formpath.ShowModal();
end;
end.
//Текст модуля AddDovMKH
unit AddDovMKH;
procedure TFormAddDovMKH.m_cancelClick(Sender: TObject);
begin
Close();
end;
procedure TFormAddDovMKH.m_addClick(Sender: TObject);
var
id:string;
s1,s2:string;
begin
if FormDovidnik.Tag=1 then
begin
if (edit1.Text<>'')and(edit2.Text<>'') then
begin
with DataModule1.IBQuery do begin
Close;
s1:=edit1.Text;
System.Delete(s1,55,100);
s2:=edit2.Text;
System.Delete(s2,10,100);
SQL.Clear;
SQL.Add('INSERT INTO SPR_Diagnoz(diagnoz, kod_diagnozu, id_diagnoz)');
SQL.Add('VALUES(:diagnoz, :kod_diagnozu, gen_id(GEN_SPR_Diagnoz_ID,1))');
ParamByName('diagnoz').Value:=s1;
ParamByName('kod_diagnozu').Value:=s2;
try
ExecSQL;
showmessage('Дані записано');
Except
showmessage('Не вдалося додати запис.');
end;
end;
DataModule1.IBQuery_mkh.Active:=false;
DataModule1.IBQuery_mkh.Active:=true;
DataModule1.IBQuery_prof.Active:=true;
if Assigned(FormAddIPR) then
begin
with DataModule1 do begin
FormAddIPR.diagnoz.Clear;
IBQuery_mkh.close();
IBQuery_mkh.open();
IBQuery_mkh.first();
while not(IBQuery_mkh.eof) do
begin
FormAddIPR.diagnoz.items.add(Trim(IBQuery_mkh.fieldbyname('diagnoz').asstring));
IBQuery_mkh.next;
end;
IBQuery_mkh.first();
end;
end;
end
else Application.MessageBox('Ви заповнили не всі поля','Увага!',MB_OK+MB_Iconerror)
end
...
else if FormDovidnik.Tag=14 then
begin
with DataModule1.IBQuery do begin
if (edit1.Text<>'')and(edit2.Text<>'') then begin
Close;
id:=IntToStr(DataModule1.IBQuery_mkh10.fieldbyname('id_mkh_10').Value);
SQL.Clear;
s1:=edit1.Text;
System.Delete(s1,55,100);
s2:=edit2.Text;
System.Delete(s2,10,100);
SQL.Add('UPDATE SPR_MKH_10 SET MKH_10=:MKH_10, KOD_MKH=:KOD_MKH WHERE ID_MKH_10='+id);
ParamByName('MKH_10').Value:=s1;
ParamByName('KOD_MKH').Value:=s2;
try
ExecSQL;
Application.MessageBox('Дані перезаписано','Увага!',MB_OK+MB_Iconinformation);
Except
Application.MessageBox('Не вдалося відредагувати запис','Увага!',MB_OK+MB_Iconerror);
end;
end
else Application.MessageBox('Ви заповнили не всі поля','Увага!',MB_OK+MB_Iconerror)
end;
DataModule1.IBQuery_mkh10.Active:=false;
DataModule1.IBQuery_mkh10.Active:=true;
DataModule1.IBQuery_prof.Active:=true;
if Assigned(FormAddIPR) then
begin
with DataModule1 do begin
FormAddIPR.s_zah.Clear;
ibquery_mkh10.close();
ibquery_mkh10.open();
ibquery_mkh10.first();
while not(ibquery_mkh10.eof) do
begin
FormAddIPR.s_zah.items.add(Trim(ibquery_mkh10.fieldbyname('mkh_10').asstring));
ibquery_mkh10.next;
end;
ibquery_mkh10.first();
end;
end;
end;
close();
Edit1.Clear;
Edit2.Clear;
end;
procedure TFormAddDovMKH.FormActivate(Sender: TObject);
begin
edit1.Clear;
edit2.Clear;
if FormDovidnik.Tag=13 then
begin
edit1.Text:=Trim(DataModule1.IBQuery_mkh.fieldbyname('DIAGNOZ').Value);
edit2.Text:=Trim(DataModule1.IBQuery_mkh.fieldbyname('KOD_DIAGNOZU').Value);
end
else
begin
if FormDovidnik.Tag=14 then
begin
edit1.Text:=Trim(DataModule1.IBQuery_mkh10.fieldbyname('MKH_10').Value);
edit2.Text:=Trim(DataModule1.IBQuery_mkh10.fieldbyname('KOD_MKH').Value);
end;
end;
end;
end.
//Текст модуля AddDov
unit AddDov;
procedure TFormAddDov.m_addClick(Sender: TObject);
var
id,s:string;
begin
if FormDovidnik.Tag=3 then
begin
if Edit1.Text<>'' then
begin
with DataModule1.IBQuery do begin
Close;
SQL.Clear;
s:=edit1.Text;
System.Delete(s,30,100);
SQL.Add('INSERT INTO SPR_Prof(prof, id_prof)');
SQL.Add('VALUES(:prof, gen_id(GEN_SPR_Prof_ID,1))');
ParamByName('prof').Value:=s;
try
ExecSQL;
Application.MessageBox('Дані записано','Увага!',MB_OK+MB_Iconinformation);
Except
Application.MessageBox('Не вдалося додати запис','Увага!',MB_OK+MB_Iconerror);
end;
end;
DataModule1.IBQuery_prof.Active:=false;
DataModule1.IBQuery_prof.Active:=true;
DataModule1.IBQuery_prof.Active:=true;
with DataModule1 do
begin
if Assigned(FormAddpacient) then
begin
FormAddpacient.c_prof.Clear;
if not(ibquery_prof.active) then ibquery_prof.open();
ibquery_prof.first();
while not(ibquery_prof.eof) do
begin
FormAddpacient.c_prof.items.add(Trim(ibquery_prof.fieldbyname('PROF').asstring));
ibquery_prof.next;
end;
ibquery_prof.first();
end
else if Assigned(FormRedPac) then
begin
FormRedPac.c_prof.Clear;
if not(ibquery_prof.active) then ibquery_prof.open();
ibquery_prof.first();
while not(ibquery_prof.eof) do
begin
FormRedPac.c_prof.items.add(Trim(ibquery_prof.fieldbyname('PROF').asstring));
ibquery_prof.next;
end;
ibquery_prof.first();
end;
end;
end
else Application.MessageBox('Ви не заповнили поле','Увага!',MB_OK+MB_Iconerror)
end
else if FormDovidnik.Tag=23 then
begin
with DataModule1.IBQuery do begin
Close;
if Edit1.Text<>'' then begin
id:=IntToStr(DataModule1.IBQuery_rajon.fieldbyname('ID_RAJON').Value);
SQL.Clear;
s:=edit1.Text;
System.Delete(s,40,100);
SQL.Add('UPDATE SPR_RAJON SET RAJON=:RAJON WHERE ID_RAJON='+id);
ParamByName('RAJON').Value:=s;
try
ExecSQL;
Application.MessageBox('Дані перезаписано','Увага!',MB_OK+MB_Iconinformation);
Except
Application.MessageBox('Не вдалося відредагувати запис','Увага!',MB_OK+MB_Iconerror);
end;
end
else Application.MessageBox('Ви не заповнили поле','Увага!',MB_OK+MB_Iconerror);
end;
DataModule1.IBQuery_rajon.Active:=false;
DataModule1.IBQuery_rajon.Active:=true;
DataModule1.IBQuery_prof.Active:=true;
with DataModule1 do
begin
if Assigned(FormAddpacient) then
begin
FormAddpacient.c_r_nas_punkt.Clear;
if not(ibquery_rajon.active) then ibquery_rajon.open();
ibquery_rajon.first();
while not(ibquery_rajon.eof) do
begin
FormAddpacient.c_r_nas_punkt.items.add(ibquery_rajon.fieldbyname('RAJON').asstring);
ibquery_rajon.next;
end;
ibquery_rajon.first();
end
else if Assigned(FormRedPac) then
begin
FormRedpac.c_r_nas_punkt.Clear;
if not(ibquery_rajon.active) then ibquery_rajon.open();
ibquery_rajon.first();
while not(ibquery_rajon.eof) do
begin
FormRedpac.c_r_nas_punkt.items.add(ibquery_rajon.fieldbyname('RAJON').asstring);
ibquery_rajon.next;
end;
ibquery_rajon.first();
end;
end;
end;
Close();
Edit1.Clear;
end;
procedure TFormAddIPR.FormActivate(Sender: TObject);
var
s:integer;
sovpadenie:boolean;
begin
if FormAddIPR.tag=11 then
begin
sovpadenie:=false;
with datamodule1 do begin
datamodule1.IBQuery_ipr_skl.active:=true;
IBQuery_ipr.first;
while not IBQuery_ipr.eof do
begin
if IBQuery_ipr.FieldByName('id_chel').Value=fio.Tag then sovpadenie:=true;
IBQuery_ipr.Next;
end;
end;
n_pr.Text:='';
msek.Text:='';
edit3.Text:='';
r_potencial.ItemIndex:=-1;
pr_skl.ItemIndex:=-1;
s_zah.ItemIndex:=-1;
meta.ItemIndex:=-1;
diagnoz.ItemIndex:=-1;
c_prac.ItemIndex:=-1;
r_potencial.Clear;
pr_skl.Clear;
s_zah.Clear;
meta.Clear;
diagnoz.Clear;
c_prac.Clear;
sp_prac.Visible:=false;
sp_diagnoz.Visible:=false;
sp_mkh.Visible:=false;
memo1.Clear;
...
memo18.Clear;
end;
with DataModule1 do
begin
ibquery5.close();
ibquery5.Open();
ibquery5.first();
dblistbox1.Clear;
while not(ibquery5.eof) do
begin
dblistbox1.items.add(Trim(ibquery5.fieldbyname('VID_OBMEJ').asstring));
ibquery5.next;
end;
ibquery5.first();
msek.Text:='Обласна №3';
DateTimepicker1.DateTime:=now();
DateTimepicker2.DateTime:=now();
DateTimepicker3.DateTime:=now();
ibquery_mkh10.close();
ibquery_mkh10.open();
ibquery_mkh10.first();
while not(ibquery_mkh10.eof) do
begin
s_zah.items.add(Trim(ibquery_mkh10.fieldbyname('mkh_10').asstring));
ibquery_mkh10.next;
end;
ibquery_mkh10.first();
IBQuery_ipr_skl.close();
IBQuery_ipr_skl.open();
IBQuery_ipr_skl.first();
while not(IBQuery_ipr_skl.eof) do
begin
pr_skl.items.add(Trim(IBQuery_ipr_skl.fieldbyname('prog_skl').asstring));
IBQuery_ipr_skl.next;
end;
IBQuery_ipr_skl.first();
if sovpadenie=true then
begin
datamodule1.IBQuery_ipr_skl.Last;
pr_skl.ItemIndex:=(datamodule1.IBQuery_ipr_skl.fieldbyname('id_prog_skl').value-1);
pr_skl.Tag:=(datamodule1.IBQuery_ipr_skl.fieldbyname('id_prog_skl').value);
end
else
begin
datamodule1.IBQuery_ipr_skl.First;
pr_skl.ItemIndex:=(datamodule1.IBQuery_ipr_skl.fieldbyname('id_prog_skl').value-1);
pr_skl.Tag:=(datamodule1.IBQuery_ipr_skl.fieldbyname('id_prog_skl').value);
end;
IBQuery_r_potencial.close();
IBQuery_r_potencial.open();
IBQuery_r_potencial.first();
while not(IBQuery_r_potencial.eof) do
begin
r_potencial.items.add(Trim(IBQuery_r_potencial.fieldbyname('r_potencial').asstring));
IBQuery_r_potencial.next;
end;
IBQuery_r_potencial.first();
IBQuery_mkh.close();
IBQuery_mkh.open();
IBQuery_mkh.first();
while not(IBQuery_mkh.eof) do
begin
diagnoz.items.add(Trim(IBQuery_mkh.fieldbyname('diagnoz').asstring));
IBQuery_mkh.next;
end;
IBQuery_mkh.first();
IBQuery_prac.close();
IBQuery_prac.open();
IBQuery_prac.first();
while not(IBQuery_prac.eof) do
begin
c_prac.items.add(Trim(IBQuery_prac.fieldbyname('sotrudnic').asstring));
IBQuery_prac.next;
end;
IBQuery_prac.first();
IBQuery_meta.close();
IBQuery_meta.open();
IBQuery_meta.first();
while not(IBQuery_meta.eof) do
begin
meta.items.add(Trim(IBQuery_meta.fieldbyname('meta').asstring));
IBQuery_meta.next;
end;
IBQuery_meta.first();
end;
if FormAddIPR.tag=22 then
begin
DataModule1.ibquery5.close();
DataModule1.ibquery5.Open();
sp_prac.Visible:=true;
sp_diagnoz.Visible:=true;
sp_mkh.Visible:=true;
with DataModule1 do
begin
fio.Text:=Trim(IBQuery_ipr.fieldbyname('fio').Value);
if not IBQuery_ipr_skl.active then IBQuery_ipr_skl.open();
s:=DataModule1.IBQuery_ipr.Fieldbyname('id_prog_skl').Value;
DataModule1.IBQuery_ipr_skl.Locate('id_prog_skl',s, []);
pr_skl.Text:=Trim(IBQuery_ipr.fieldbyname('prog_skl').Value);
pr_skl.Tag:=DataModule1.IBQuery_ipr.Fieldbyname('id_prog_skl').Value;
if not IBQuery_mkh.active then IBQuery_mkh.open();
s:=DataModule1.IBQuery_ipr.Fieldbyname('id_diagnoz').Value;
diagnoz.Tag:=s;
DataModule1.IBQuery_mkh.Locate('id_diagnoz',s, []);
diagnoz.Text:=Trim(IBQuery_mkh.fieldbyname('diagnoz').Value);
if not IBQuery_mkh10.active then IBQuery_mkh10.active:=true;
s:=DataModule1.IBQuery_ipr.Fieldbyname('suput_zahv').Value;
DataModule1.IBQuery_mkh10.Locate('id_mkh_10',s, []);
s_zah.Text:=Trim(IBQuery_mkh10.fieldbyname('mkh_10').Value);
s_zah.Tag:=s;
if not IBQuery_r_potencial.active then IBQuery_r_potencial.open();
s:=DataModule1.IBQuery_ipr.Fieldbyname('id_r_potencial').Value;
DataModule1.IBQuery_r_potencial.Locate('id_r_potencial',s, []);
r_potencial.Text:=Trim(IBQuery_r_potencial.fieldbyname('r_potencial').Value);
r_potencial.Tag:=s;
if not IBQuery_meta.active then IBQuery_meta.open();
s:=DataModule1.IBQuery_ipr.Fieldbyname('id_meta').Value;
DataModule1.IBQuery_meta.Locate('id_meta',s, []);
meta.Text:=Trim(IBQuery_meta.fieldbyname('meta').Value);
meta.Tag:=s;
if not IBQuery_prac.active then IBQuery_prac.open();
s:=DataModule1.IBQuery_ipr.Fieldbyname('sotrudnik').Value;
DataModule1.IBQuery_prac.Locate('id_sotrudnic',s, []);
c_prac.Text:=Trim(IBQuery_prac.fieldbyname('sotrudnic').Value);
c_prac.Tag:=s;
msek.Text:=Trim(IBQuery_ipr.fieldbyname('msek_n').Value);
DateTimepicker1.DateTime:=IBQuery_ipr.fieldbyname('dat_zap').Value;
DateTimepicker2.DateTime:=IBQuery_ipr.fieldbyname('dat_spivb').Value;
DateTimepicker3.DateTime:=IBQuery_ipr.fieldbyname('dat_kontr').Value;
n_pr.Text:=Trim(IBQuery_ipr.fieldbyname('n_prog').Value);
edit3.Text:=IBQuery_ipr.fieldbyname('triv_inv').Value;
if not IBQuery_obmej.Active then IBQuery_obmej.Active:=true;
IBQuery_obmej.First;
while not IBQuery_obmej.Eof do begin
if ((IBQuery_obmej.FieldByName('ID_IPR').Value=IBQuery_ipr.fieldbyname('id_ipr').Value) and (IBQuery_obmej.FieldByName('ID_VID_OBMEJ').Value=1)) then
begin
memo1.Text:=IBQuery_obmej.fieldbyname('ID_STUP').Value;
end;
IBQuery_obmej.Next;
end;
...
if not IBQuery_obmej.Active then IBQuery_obmej.Active:=true;
IBQuery_obmej.First;
while not IBQuery_obmej.Eof do begin
if ((IBQuery_obmej.FieldByName('ID_IPR').Value=IBQuery_ipr.fieldbyname('id_ipr').Value) and (IBQuery_obmej.FieldByName('ID_VID_OBMEJ').Value=18)) then
begin
memo18.Text:=IBQuery_obmej.fieldbyname('ID_STUP').Value;
end;
IBQuery_obmej.Next;
end;
end;
end;
end;
//Текст модуля Dob_ipr
unit Dob_IPR;
procedure TFormAddIPR.m_exitClick(Sender: TObject);
begin
Close();
end;
procedure TFormAddIPR.m_reabilClick(Sender: TObject);
begin
if (not Assigned(FormReabil)) then
FormReabil:=TFormReabil.Create(Self);
FormReabil.ShowModal();
end;
procedure TFormAddIPR.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['1'..'3', #8]) then Key:=#0;
end;
...
end;
procedure TFormAddIPR.Memo16KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['1'..'3', #8]) then Key:=#0;
end;
procedure TFormAddIPR.DBNavigator1Click(Sender: TObject;
Button: TNavigateBtn);
begin
if (DataModule1.IBQuery5.FieldByName('id_vid_obmej').Value=1) then Memo1.SetFocus;
…
if (DataModule1.IBQuery5.FieldByName('id_vid_obmej').Value=16) then Memo16.SetFocus;
end;
procedure TFormAddIPR.DBNavigator1Click(Sender: TObject;
Button: TNavigateBtn);
begin
if (DataModule1.IBQuery5.FieldByName('id_vid_obmej').Value=1) then Memo1.SetFocus;
...
if (DataModule1.IBQuery5.FieldByName('id_vid_obmej').Value=16) then Memo16.SetFocus;
end;
procedure TFormAddIPR.m_addClick(Sender: TObject);
var
res, f1,f2:integer;
global_ID_OFFER:integer;
id: string;
sovpadenie:boolean;
kod1, kod:integer;
begin
if FormAddIPR.Tag=11 then
begin
sovpadenie:=false;
f1:=StrToint(n_pr.Text);
if not Datamodule1.IBQuery_ipr.Active then Datamodule1.IBQuery_ipr.Active:=true;
Datamodule1.IBQuery_ipr.First;
while not Datamodule1.IBQuery_ipr.Eof do
begin
f2:=StrToInt(Datamodule1.IBQuery_ipr.fieldbyname('n_prog').Value);
if f1=f2 then sovpadenie:=true;
Datamodule1.IBQuery_ipr.next;
end;
if sovpadenie=false then begin
if (n_pr.text<>'')and(msek.text<>'')and(r_potencial.ItemIndex<>-1)and(pr_skl.ItemIndex<>-1)and(s_zah.ItemIndex<>-1)and(meta.ItemIndex<>-1)and(diagnoz.ItemIndex<>-1)and(c_prac.ItemIndex<>-1)and(StrToInt(edit3.Text)>=0)and(StrToInt(edit3.Text)<100) then
begin
res:=MonthsBetween(today,DateTimepicker3.Date);
if ((DateTimepicker1.Date<=now)and(DateTimepicker2.Date<=now)and(res>=1)) then
begin
if ((memo1.Text<>'')and(memo2.Text<>'')and(memo3.Text<>'')and(memo4.Text<>'')and(memo5.Text<>'')and(memo6.Text<>'')and(memo7.Text<>'')and(memo8.Text<>'')and(memo9.Text<>'')and(memo10.Text<>'')
and(memo11.Text<>'')and(memo12.Text<>'')and(memo13.Text<>'')and(memo14.Text<>'')and(memo15.Text<>'')and(memo16.Text<>'')and(memo17.Text<>'')and(memo18.Text<>''))then
begin
if (StrToint(memo1.Text)>0)and(StrToint(memo1.Text)<4)and(StrToint(memo2.Text)>0)and(StrToint(memo2.Text)<4)and(StrToint(memo3.Text)>0)and(StrToint(memo3.Text)<4)and(StrToint(memo5.Text)>0)and(StrToint(memo5.Text)<4)
and(StrToint(memo6.Text)>0)and(StrToint(memo6.Text)<4)and(StrToint(memo7.Text)>0)and(StrToint(memo7.Text)<4)and(StrToint(memo8.Text)>0)and(StrToint(memo8.Text)<4)and(StrToint(memo9.Text)>0)and(StrToint(memo9.Text)<4)
and(StrToint(memo10.Text)>0)and(StrToint(memo10.Text)<4)and(StrToint(memo11.Text)>0)and(StrToint(memo11.Text)<4)and(StrToint(memo12.Text)>0)and(StrToint(memo12.Text)<4)and(StrToint(memo13.Text)>0)and(StrToint(memo13.Text)<4)
and(StrToint(memo14.Text)>0)and(StrToint(memo14.Text)<4)and(StrToint(memo15.Text)>0)and(StrToint(memo15.Text)<4)and(StrToint(memo16.Text)>0)and(StrToint(memo16.Text)<4)and(StrToint(memo17.Text)>0)and(StrToint(memo17.Text)<4)
and(StrToint(memo18.Text)>0)and(StrToint(memo18.Text)<4)then
begin
with DataModule1.IBQuery do
begin
Active := False;
SQL.Clear;
SQL.Add('SELECT GEN_ID(GEN_IPR_ID,1) FROM RDB$DATABASE');
Active := True;
global_ID_OFFER:=FieldByName('GEN_ID').AsInteger;
Close;
SQL.Clear;
SQL.Add('INSERT INTO IPR (ID_IPR, ID_CHEL, N_PROG, DAT_ZAP, MSEK_N, ID_PROG_SKL, TRIV_INV, ID_DIAGNOZ, SUPUT_ZAHV, ID_R_POTENCIAL, META, DAT_SPIVB, DAT_KONTR, SOTRUDNIK)');
SQL.Add('VALUES(:ID_IPR, :ID_CHEL, :N_PROG, :DAT_ZAP, :MSEK_N, :ID_PROG_SKL, :TRIV_INV, :ID_DIAGNOZ, :SUPUT_ZAHV, :ID_R_POTENCIAL, :META, :DAT_SPIVB, :DAT_KONTR, :SOTRUDNIK)');
ParamByName('ID_IPR').AsInteger:=global_ID_OFFER;
ParamByName('ID_CHEL').Value:=fio.Tag;
ParamByName('N_PROG').Value:=n_pr.Text;
ParamByName('DAT_ZAP').AsDate:=DateTimePicker1.Date;
ParamByName('MSEK_N').Value:=msek.Text;
ParamByName('ID_PROG_SKL').Value:=pr_skl.Tag;
ParamByName('TRIV_INV').Value:=StrToInt(Edit3.Text);
ParamByName('ID_DIAGNOZ').Value:=diagnoz.Tag;
ParamByName('SUPUT_ZAHV').Value:=s_zah.Tag;
ParamByName('ID_R_POTENCIAL').Value:=r_potencial.Tag;
ParamByName('META').Value:=meta.Tag;
ParamByName('DAT_SPIVB').AsDate:=DateTimePicker2.Date;
ParamByName('DAT_KONTR').AsDate:=DateTimePicker3.Date;
ParamByName('SOTRUDNIK').Value:=c_prac.Tag;
try
ExecSQL;
Application.MessageBox('Дані записано','Увага!',MB_OK+MB_Iconinformation);
m_reabil.Enabled:=false;
Except
Application.MessageBox('Не вдалося додати запис','Увага!',MB_OK+MB_Iconerror);
end;
end;
DataModule1.IBQuery_ipr.Active:=false;
DataModule1.IBQuery_ipr.Active:=true;
kod1:=global_ID_OFFER;
if (not Assigned(FormReabil)) then
FormReabil:=TFormReabil.Create(Self);
FormReabil.TreeView.Tag:=kod1;
with DataModule1.IBQuery do
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO OBMEJ (ID_VID_OBMEJ, ID_STUP, ID_IPR)');
SQL.Add('VALUES( :ID_VID_OBMEJ, :ID_STUP, :ID_IPR)');
ParamByName('ID_VID_OBMEJ').Value:=1;
ParamByName('ID_STUP').Value:=memo1.Text;
ParamByName('ID_IPR').Value:=kod1;
try
ExecSQL;
Except
Application.MessageBox('Не вдалося додати запис про обмеження','Увага!',MB_OK+MB_Iconerror);
end;
...
SQL.Clear;
SQL.Add('INSERT INTO OBMEJ (ID_VID_OBMEJ, ID_STUP, ID_IPR)');
SQL.Add('VALUES( :ID_VID_OBMEJ, :ID_STUP, :ID_IPR)');
ParamByName('ID_VID_OBMEJ').Value:=18;
ParamByName('ID_STUP').Value:=memo18.Text;
ParamByName('ID_IPR').Value:=kod1;
try
ExecSQL;
m_reabil.Enabled:=true;
m_add.Enabled:=false;
Except
Application.MessageBox('Не вдалося додати запис про обмеження','Увага!',MB_OK+MB_Iconerror);
end;
end;
DataModule1.IBQuery_ipr.Active:=false;
DataModule1.IBQuery_ipr.Active:=true;
end
else
Application.MessageBox('Ви невірно заповнили ступені обмеження життедіяльності)','Увага!',MB_OK+MB_Iconerror);
end
else
Application.MessageBox('Ви не заповнили ступені обмеження життедіяльності)','Увага!',MB_OK+MB_Iconerror);
end
else
Application.MessageBox('Ви невірно заповнили дату','Увага!',MB_OK+MB_Iconerror);
end
else
Application.MessageBox('Ви заповнили не всі поля','Увага!',MB_OK+MB_Iconerror);
end
else Application.MessageBox('Такий номер програми реабілітації вже є.','Увага!',MB_Ok+MB_Iconerror);
end
else
if FormAddIPR.Tag=22 then
begin
with DataModule1.IBQuery do
begin
id:=DataModule1.IBQuery_ipr.fieldbyname('id_ipr').value;
Close;
SQL.Clear;
SQL.Add('UPDATE IPR SET N_PROG=:N_PROG, DAT_ZAP=:DAT_ZAP, MSEK_N=:MSEK_N, ID_PROG_SKL=:ID_PROG_SKL, TRIV_INV=:TRIV_INV, ID_DIAGNOZ=:ID_DIAGNOZ, SUPUT_ZAHV=:SUPUT_ZAHV, ID_R_POTENCIAL=:ID_R_POTENCIAL,');
SQL.Add(' META=:META, DAT_SPIVB=:DAT_SPIVB, DAT_KONTR=:DAT_KONTR, SOTRUDNIK=:SOTRUDNIK where id_ipr='+id);
ParamByName('N_PROG').Value:=n_pr.Text;
ParamByName('DAT_ZAP').AsDate:=DateTimePicker1.Date;
ParamByName('MSEK_N').Value:=msek.Text;
ParamByName('ID_PROG_SKL').Value:=pr_skl.Tag;
ParamByName('TRIV_INV').Value:=StrToInt(Edit3.Text);
ParamByName('ID_DIAGNOZ').Value:=diagnoz.Tag;
ParamByName('SUPUT_ZAHV').Value:=s_zah.Tag;
ParamByName('ID_R_POTENCIAL').Value:=r_potencial.Tag;
ParamByName('META').Value:=meta.Tag;
ParamByName('DAT_SPIVB').AsDate:=DateTimePicker2.Date;
ParamByName('DAT_KONTR').AsDate:=DateTimePicker3.Date;
ParamByName('SOTRUDNIK').Value:=c_prac.Tag;
try
ExecSQL;
Application.MessageBox('Дані перезаписано','Увага!',MB_OK+MB_Iconinformation);
Except
Application.MessageBox('Не вдалося відредагувати запис','Увага!',MB_OK+MB_Iconerror);
end;
end;
kod:=DataModule1.IBQuery_ipr.Fieldbyname('ID_IPR').Value;
if (not Assigned(FormReabil)) then
FormReabil:=TFormReabil.Create(Self);
FormReabil.TreeView.Tag:=kod;
with DataModule1.IBQuery do
begin
Close;
SQL.Clear;
SQL.Add('UPDATE OBMEJ SET ID_STUP=:ID_STUP WHERE id_ipr='+id+' and ID_VID_OBMEJ=1');
ParamByName('ID_STUP').Value:=memo1.Text;
try
ExecSQL;
Except
Application.MessageBox('Не вдалося додати запис про обмеження','Увага!',MB_OK+MB_Iconerror);
end;
...
Close;
SQL.Clear;
SQL.Add('UPDATE OBMEJ SET ID_STUP=:ID_STUP WHERE id_ipr='+id+' and ID_VID_OBMEJ=18');
ParamByName('ID_STUP').Value:=memo18.Text;
try
ExecSQL;
Except
Application.MessageBox('Не вдалося додати запис про обмеження','Увага!',MB_OK+MB_Iconerror);
end;
end;
m_reabil.Enabled:=true;
m_add.Enabled:=false;
DataModule1.IBQuery_ipr.Active:=false;
DataModule1.IBQuery_ipr.Active:=true;
DataModule1.IBQuery_obmej.Active:=false;
DataModule1.IBQuery_obmej.Active:=true;
end;
end;
procedure TFormAddIPR.diagnozChange(Sender: TObject);
var
i:integer;
begin
sp_diagnoz.Visible:=true;
DataModule1.ibquery_mkh.first();
for i:=0 to diagnoz.itemindex-1 do begin
DataModule1.ibquery_mkh.Next;
end;
diagnoz.Tag:=DataModule1.IBQuery_mkh.fieldbyname('ID_DIAGNOZ').Value;
end;
…
procedure TFormAddIPR.c_pracChange(Sender: TObject);
var
i:integer;
begin
sp_prac.Visible:=true;
DataModule1.ibquery_prac.first();
for i:=0 to c_prac.itemindex-1 do begin
DataModule1.ibquery_prac.Next;
end;
c_prac.Tag:=DataModule1.IBQuery_prac.fieldbyname('ID_SOTRUDNIC').Value;
end;
procedure TFormAddIPR.sp_diagnozClick(Sender: TObject);
begin
if (not Assigned(FormDovidnik)) then
FormDovidnik:=TFormDovidnik.Create(Self);
FormDovidnik.TabSheet1.TabVisible:=true;
FormDovidnik.PageControl1.ActivePage:=FormDovidnik.PageControl1.Pages[0];
FormDovidnik.PageControl1.Pages[0].Caption:='Дігнози МКХ';
DataModule1.IBQuery_mkh.Active:=true;
FormDovidnik.DBGrid8.DataSource:=DataModule1.ds_mkh;
FormDovidnik.Tag:=1;
FormDovidnik.ShowModal();
end;
…
procedure TFormAddIPR.FormActivate(Sender: TObject);
var
s:integer;
begin
if FormAddIPR.tag=11 then
begin
n_pr.Text:='';
msek.Text:='';
edit3.Text:='';
r_potencial.ItemIndex:=-1;
pr_skl.ItemIndex:=-1;
s_zah.ItemIndex:=-1;
meta.ItemIndex:=-1;
diagnoz.ItemIndex:=-1;
c_prac.ItemIndex:=-1;
r_potencial.Clear;
pr_skl.Clear;
s_zah.Clear;
meta.Clear;
diagnoz.Clear;
c_prac.Clear;
sp_prac.Visible:=false;
sp_diagnoz.Visible:=false;
sp_mkh.Visible:=false;
memo1.Clear;
…
memo18.Clear;
end;
with DataModule1 do
begin
ibquery5.close();
ibquery5.Open();
ibquery5.first();
dblistbox1.Clear;
while not(ibquery5.eof) do
begin
dblistbox1.items.add(Trim(ibquery5.fieldbyname('VID_OBMEJ').asstring));
ibquery5.next;
end;
ibquery5.first();
msek.Text:='Обласна №3';
DateTimepicker1.DateTime:=now();
DateTimepicker2.DateTime:=now();
DateTimepicker3.DateTime:=now();
ibquery_mkh10.close();
ibquery_mkh10.open();
ibquery_mkh10.first();
while not(ibquery_mkh10.eof) do
begin
s_zah.items.add(Trim(ibquery_mkh10.fieldbyname('mkh_10').asstring));
ibquery_mkh10.next;
end;
ibquery_mkh10.first();
IBQuery_ipr_skl.close();
IBQuery_ipr_skl.open();
IBQuery_ipr_skl.first();
while not(IBQuery_ipr_skl.eof) do
begin
pr_skl.items.add(Trim(IBQuery_ipr_skl.fieldbyname('prog_skl').asstring));
IBQuery_ipr_skl.next;
end;
IBQuery_ipr_skl.first();
IBQuery_r_potencial.close();
IBQuery_r_potencial.open();
IBQuery_r_potencial.first();
while not(IBQuery_r_potencial.eof) do
begin
r_potencial.items.add(Trim(IBQuery_r_potencial.fieldbyname('r_potencial').asstring));
IBQuery_r_potencial.next;
end;
IBQuery_r_potencial.first();
IBQuery_mkh.close();
IBQuery_mkh.open();
IBQuery_mkh.first();
while not(IBQuery_mkh.eof) do
begin
diagnoz.items.add(Trim(IBQuery_mkh.fieldbyname('diagnoz').asstring));
IBQuery_mkh.next;
end;
IBQuery_mkh.first();
IBQuery_prac.close();
IBQuery_prac.open();
IBQuery_prac.first();
while not(IBQuery_prac.eof) do
begin
c_prac.items.add(Trim(IBQuery_prac.fieldbyname('sotrudnic').asstring));
IBQuery_prac.next;
end;
IBQuery_prac.first();
IBQuery_meta.close();
IBQuery_meta.open();
IBQuery_meta.first();
while not(IBQuery_meta.eof) do
begin
meta.items.add(Trim(IBQuery_meta.fieldbyname('meta').asstring));
IBQuery_meta.next;
end;
IBQuery_meta.first();
end;
if FormAddIPR.tag=22 then
begin
DataModule1.ibquery5.close();
DataModule1.ibquery5.Open();
sp_prac.Visible:=true;
sp_diagnoz.Visible:=true;
sp_mkh.Visible:=true;
with DataModule1 do
begin
if not ibquery_os_karta.active then ibquery_os_karta.open();
ibquery_os_karta.first();
while not(ibquery_os_karta.eof) do
begin
if ibquery_os_karta.FieldByName('id_chel').Value then
ibquery_os_karta.next;
end;
fio.Text:=Trim(IBQuery_ipr.fieldbyname('fio').Value);
if not IBQuery_ipr_skl.active then IBQuery_ipr_skl.open();
s:=DataModule1.IBQuery_ipr.Fieldbyname('id_prog_skl').Value;
DataModule1.IBQuery_ipr_skl.Locate('id_prog_skl',s, []);
pr_skl.Text:=Trim(IBQuery_ipr.fieldbyname('prog_skl').Value);
pr_skl.Tag:=DataModule1.IBQuery_ipr.Fieldbyname('id_prog_skl').Value;
…
if not IBQuery_prac.active then IBQuery_prac.open();
s:=DataModule1.IBQuery_ipr.Fieldbyname('sotrudnik').Value;
DataModule1.IBQuery_prac.Locate('id_sotrudnic',s, []);
c_prac.Text:=Trim(IBQuery_prac.fieldbyname('sotrudnic').Value);
c_prac.Tag:=s;
msek.Text:=Trim(IBQuery_ipr.fieldbyname('msek_n').Value);
DateTimepicker1.DateTime:=IBQuery_ipr.fieldbyname('dat_zap').Value;
DateTimepicker2.DateTime:=IBQuery_ipr.fieldbyname('dat_spivb').Value;
DateTimepicker3.DateTime:=IBQuery_ipr.fieldbyname('dat_kontr').Value;
n_pr.Text:=Trim(IBQuery_ipr.fieldbyname('n_prog').Value);
edit3.Text:=IBQuery_ipr.fieldbyname('triv_inv').Value;
if not IBQuery_obmej.Active then IBQuery_obmej.Active:=true;
IBQuery_obmej.First;
while not IBQuery_obmej.Eof do begin
if ((IBQuery_obmej.FieldByName('ID_IPR').Value=IBQuery_ipr.fieldbyname('id_ipr').Value) and (IBQuery_obmej.FieldByName('ID_VID_OBMEJ').Value=1)) then
begin
memo1.Text:=IBQuery_obmej.fieldbyname('ID_STUP').Value;
end;
IBQuery_obmej.Next;
end;
…
if not IBQuery_obmej.Active then IBQuery_obmej.Active:=true;
IBQuery_obmej.First;
while not IBQuery_obmej.Eof do begin
if ((IBQuery_obmej.FieldByName('ID_IPR').Value=IBQuery_ipr.fieldbyname('id_ipr').Value) and (IBQuery_obmej.FieldByName('ID_VID_OBMEJ').Value=18)) then
begin
memo18.Text:=IBQuery_obmej.fieldbyname('ID_STUP').Value;
end;
IBQuery_obmej.Next;
end;
end;
end;
end;
procedure TFormAddIPR.FormShow(Sender: TObject);
begin
m_reabil.Enabled:=false;
m_add.Enabled:=true;
if FormAddIPR.tag=22 then
begin
r_potencial.Clear;
pr_skl.Clear;
s_zah.Clear;
meta.Clear;
diagnoz.Clear;
c_prac.Clear;
memo1.Clear;
…
memo18.Clear;
end;
end;
procedure TFormAddIPR.n_prKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9', #8])
then
Key:=#0;
end;
procedure TFormAddIPR.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9', #8])
then
Key:=#0;
end;
end.
//Текст модуля AddPacient
unit AddPacient;
procedure TFormAddPacient.m_exitClick(Sender: TObject);
begin
Close();
end;
procedure TFormAddPacient.FormShow(Sender: TObject);
begin
SpeedButton_prof.Visible:=false;
SpeedButton_obl.Visible:=false;
SpeedButton_r_obl.Visible:=false;
SpeedButton_punkt.Visible:=false;
SpeedButton_r_punkt.Visible:=false;
m_add_pac.Enabled:=true;
m_dd_ipr.Enabled:=false;
fio.Text:='';
work.Text:='';
tel.Text:='';
street.Text:='';
index.Text:='';
c_sex.ItemIndex:=-1;
c_osv.ItemIndex:=-1;
c_gr.ItemIndex:=-1;
c_prof.ItemIndex:=-1;
c_obl.ItemIndex:=-1;
c_r_obl.ItemIndex:=-1;
c_nas_punkt.ItemIndex:=-1;
c_r_nas_punkt.ItemIndex:=-1;
end;
procedure TFormAddPacient.m_add_pacClick(Sender: TObject);
var
res:integer;
f1,f2:string;
sovpadenie, dali: boolean;
begin
m_add_pac.Enabled:=true;
m_dd_ipr.Enabled:=false;
if (fio.Text<>'')and(c_sex.ItemIndex<>-1)and(c_osv.ItemIndex<>-1)and
(c_gr.ItemIndex<>-1)and(c_obl.ItemIndex<>-1)and(c_prof.ItemIndex<>-1)and(c_r_obl.ItemIndex<>-1)and(c_nas_punkt.ItemIndex<>-1)
and(c_r_nas_punkt.ItemIndex<>-1)and(work.Text<>'')and(tel.Text<>'')and(street.Text<>'')and(index.Text<>'') then
begin
res:=YearsBetween(today,DateTimepicker1.Date);
if ((res>=18) and (res<125)) then
begin
sovpadenie:=false;
dali:=false;
f1:=trim(fio.Text);
if not Datamodule1.IBQuery_O.Active then Datamodule1.IBQuery_O.Active:=true;
Datamodule1.IBQuery_O.First;
if Datamodule1.IBQuery3.RecordCount>=1 then
begin
while not Datamodule1.IBQuery_O.Eof do
begin
f2:=Trim(Datamodule1.IBQuery_O.fieldbyname('fio').Value);
if f1=f2 then sovpadenie:=true;
Datamodule1.IBQuery_O.next;
end;
end
ELSE dali:=true;
if sovpadenie=false then dali:=true;
if sovpadenie=true then if (Application.MessageBox('Пацієнт з таким ПІБ вже є в системі, ви точно хочете додати цей запис?','Увага!',MB_YesNo+MB_Iconerror)=idYes) then
Подобные документы
Теоретичні відомості про пакет ІЗВП Borland Delphi та СУБД MS Access, оцінка їх функціональних особливостей. Опис структури бази даних. Проектування інтерфейсу програми, опис її логічної структури та функцій. Контроль коректності вхідних, вихідних даних.
курсовая работа [4,5 M], добавлен 03.01.2014Розробка структури бази даних. ER-моделі предметної області. Проектування нормалізованих відношень. Розробка форм, запитів, звітів бази даних "Автосалон". Тестування роботи бази даних. Демонстрація коректної роботи форми "Додавання даних про покупців".
курсовая работа [4,0 M], добавлен 02.12.2014Опис вхідних та вихідних повідомлень, процедури перетворення даних. Розробка інфологічної моделі, інформаційні об’єкти та їх характеристика. Автоматизація даталогічного проектування. Опис структур таблиць бази даних на фізичному рівні, реалізація запитів.
курсовая работа [2,5 M], добавлен 02.01.2014Розробка бази даних "Автовокзал". Функціональні залежності між атрибутами. Ідентифікація атрибутів, які в реляційної моделі даних використовуються в якості первинних ключів реляційних відносин. Організація вибірки інформації з бази за допомогою запиту.
курсовая работа [35,6 K], добавлен 19.08.2012Проектування і реалізація реляційної бази даних для централізованого зберігання інформації з метою полегшення і систематизації даних замовлень клієнтів готельного комплексу. Розробка сценаріїв для створення бази даних і базових таблиць проекту.
курсовая работа [147,2 K], добавлен 02.06.2019Проектування бази даних предметної області "Магазин будівельних матеріалів". Аналіз сукупності вхідних і вихідних даних, шляхи удосконалення інформаційної системи обліку товару. Організація інформаційної бази, розробка логічної і фізичної моделі.
курсовая работа [559,2 K], добавлен 09.05.2016Розробка бази даних для обробки інформації про діяльність туристичного агентства. Визначення предметної області, вхідних та вихідних даних, їх організації. Генерація схеми бази даних. Реалізація функціональних вимог. Інструкція з експлуатації системи.
курсовая работа [5,3 M], добавлен 12.05.2015Специфікація вимог для кожного з двох користувачів. Концептуальне проектування бази даних. Визначення типів сутностей та зв’язків, доменів. Перетворення концептуальної моделі даних у логічну, визначення набору відношень, підтримки цілісності даних.
курсовая работа [55,1 K], добавлен 15.03.2015Розробка бази даних в середовищі Microsoft SQL Server 2008 для обліку послуг фітнес-клубу. Таблиці для баз даних, їх властивості. Аналіз сукупності вхідних і вихідних параметрів, опис інформаційної бази, розробка логічної і фізичної моделі даних в ІС.
курсовая работа [449,9 K], добавлен 09.05.2016Проектування бази даних, що реалізує звіти про графік робіт на об’єктах впродовж місяця. Графічне зображення нагромаджувачів даних. Побудова діаграм потоків даних і переходів станів, таблиць у вигляді двовимірного масиву, запитів. Створення бази даних.
курсовая работа [1,2 M], добавлен 29.02.2012