Разработка экспертной системы диагностики заболеваний с помощью серологических маркеров
Анализ организационно-штатной структуры Государственного бюджетного учреждения здравоохранения "Городская клиническая больница №5". Существующие программно-аппаратные комплексы для диагностики заболеваний. Листинг программы "Окно добавления маркера".
Рубрика | Медицина |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 24.06.2015 |
Размер файла | 1,7 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
fmAddMarker.MODE:=wmEdit;
fmAddMarker.MARKER_ID:=qMarkers.FieldByName('ID').AsInteger;
fmAddMarker.ShowModal;
end;
procedure TfmMain.RzToolButton4Click(Sender: TObject);
begin
if fmAddDisease=nil then
Application.CreateForm(TfmAddDisease,fmAddDisease);
fmAddDisease.MODE:=wmAdd;
fmAddDisease.ShowModal;
end;
procedure TfmMain.FormShow(Sender: TObject);
begin
RefreshData;
end;
procedure TfmMain.RzToolButton5Click(Sender: TObject);
begin
if fmAddDisease=nil then
Application.CreateForm(TfmAddDisease,fmAddDisease);
fmAddDisease.MODE:=wmEdit;
fmAddDisease.DISEASE_ID:=qDisease.FieldByName('ID').AsInteger;
fmAddDisease.ShowModal;
end;
procedure TfmMain.RzToolButton3Click(Sender: TObject);
var
Tb:TADOQuery;
begin
if MessageDlg('Выдействительнохотитеудалитьмаркер?',mtConfirmation,[mbYes,mbNo], 0) = mrNo then
exit;
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
Tb.SQL.Text:='delete from oncological_diseases where marder_id =:ID1;'+
'delete from markers where id =:ID2;';
Tb.Parameters[0].Value:=qMarkers.FieldByName('ID').AsInteger;
Tb.Parameters[1].Value:=qMarkers.FieldByName('ID').AsInteger;
Tb.ExecSQL;
finally
Tb.Free;
end;
RefreshData;
end;
procedure TfmMain.qMarkersAfterOpen(DataSet: TDataSet);
begin
RzToolButton2.Enabled:=not qMarkers.IsEmpty;
RzToolButton3.Enabled:=not qMarkers.IsEmpty;
end;
procedure TfmMain.RzToolButton6Click(Sender: TObject);
var
Tb:TADOQuery;
begin
if MessageDlg('Выдействительнохотитеудалитьболезнь?',mtConfirmation,[mbYes,mbNo], 0) = mrNo then
exit;
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
Tb.SQL.Text:='delete from oncological_diseases where disease_id =:ID1;'+
'delete from disease where id =:ID2;';
Tb.Parameters[0].Value:=qDisease.FieldByName('ID').AsInteger;
Tb.Parameters[1].Value:=qDisease.FieldByName('ID').AsInteger;
Tb.ExecSQL;
finally
Tb.Free;
end;
RefreshData;
end;
procedure TfmMain.BtnInsertRecordClick(Sender: TObject);
begin
if fmAddPatients = nil then
Application.CreateForm(TfmAddPatients,fmAddPatients);
fmAddPatients.MODE:=wmAdd;
fmAddPatients.ShowModal;
end;
procedure TfmMain.BtnDeleteClick(Sender: TObject);
var
Tb:TADOQuery;
begin
if MessageDlg('Выдействительнохотитеудалитьпациента?',mtConfirmation,[mbYes,mbNo], 0) = mrNo then
exit;
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
Tb.SQL.Text:='delete from patients where id =:ID';
Tb.Parameters[0].Value:=qPatients.FieldByName('ID').AsInteger;
Tb.ExecSQL;
finally
Tb.Free;
end;
RefreshData;
end;
procedure TfmMain.BtnEditClick(Sender: TObject);
begin
if fmAddPatients = nil then
Application.CreateForm(TfmAddPatients,fmAddPatients);
fmAddPatients.MODE:=wmEdit;
fmAddPatients.PATIENT_ID:=qPatients.FieldByName('ID').AsInteger;
fmAddPatients.ShowModal;
end;
procedure TfmMain.N4Click(Sender: TObject);
begin
if fmAbout = nil then
Application.CreateForm(TfmAbout, fmAbout);
fmAbout.ShowModal;
end;
procedure TfmMain.N5Click(Sender: TObject);
begin
ShellExecute(Handle, 'open', 'C:\Medical.chm',nil, nil, SW_SHOW);
end;
end.
Приложение Б
заболевание программный комплекс диагностика
Листинг программы «Окно добавления маркера»
unit AddMarker;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, SysUtilites, StdCtrls, DBGridEhGrouping, RzButton, GridsEh,
DBGridEh, ImgList, ExtCtrls, RzPanel, DB, ADODB, Mask, DBCtrlsEh,
DBLookupEh;
type
TfmAddMarker = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Memo1: TMemo;
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
Label3: TLabel;
Edit2: TEdit;
GroupBox3: TGroupBox;
Button1: TButton;
Button2: TButton;
RzToolbar1: TRzToolbar;
ImageList1: TImageList;
RzToolbar2: TRzToolbar;
DBGridEh2: TDBGridEh;
BtnInsertRecord: TRzToolButton;
BtnDeleteRecord: TRzToolButton;
BtnInsertRecord1: TRzToolButton;
BtnDeleteRecord1: TRzToolButton;
DBLookupComboboxEh1: TDBLookupComboboxEh;
DBLookupComboboxEh2: TDBLookupComboboxEh;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
DataSource1: TDataSource;
DataSource2: TDataSource;
DataSource3: TDataSource;
ADOQuery3: TADOQuery;
ADOQuery4: TADOQuery;
DataSource4: TDataSource;
DBGridEh1: TDBGridEh;
ADOQuery1ID: TAutoIncField;
ADOQuery1NAME: TStringField;
ADOQuery1DESCRIPTION: TStringField;
ADOQuery1SYMPTOM: TStringField;
ADOQuery1TYPE: TSmallintField;
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure RefreshDisease;
procedure BtnInsertRecordClick(Sender: TObject);
procedure BtnInsertRecord1Click(Sender: TObject);
procedure BtnDeleteRecordClick(Sender: TObject);
procedure BtnDeleteRecord1Click(Sender: TObject);
private
{Private declarations}
public
{Public declarations}
MODE:TWorkMode;
MARKER_ID:integer;
end;
var
fmAddMarker: TfmAddMarker;
implementation
uses Main;
{$R *.dfm}
procedure TfmAddMarker.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TfmAddMarker.FormClose(Sender: TObject;
var Action: TCloseAction);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
Tb.SQL.Text:='delete from oncological_diseases where marder_id = 0';
Tb.ExecSQL;
finally
Tb.Free;
end;
Action:=caFree;
end;
procedure TfmAddMarker.FormDestroy(Sender: TObject);
begin
fmAddMarker:=nil;
end;
procedure TfmAddMarker.FormShow(Sender: TObject);
var
Tb:TADOQuery;
begin
ADOQuery1.Open;
ADOQuery2.Open;
RefreshDisease;
if MODE=wmAdd then
begin
fmAddMarker.Caption:='Добавлениемаркера';
end else
begin
fmAddMarker.Caption:='Изменениемаркера';
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
Tb.SQL.Text:='select * from markers where id =:id';
Tb.Parameters[0].Value:=MARKER_ID;
Tb.Open;
if not Tb.IsEmpty then begin
Edit1.Text:=Tb.FieldByName('NAME').AsString;
Memo1.Lines.Text:=Tb.FieldByName('DESCRIPTION').AsString;
Edit2.Text:=Tb.FieldByName('NORMAL_VALUE').AsString;
end;
Tb.Close;
finally
Tb.Free;
end;
end;
end;
procedure TfmAddMarker.RefreshDisease;
begin
if ADOQuery3.Active then
ADOQuery3.Close;
if ADOQuery4.Active then
ADOQuery4.Close;
if MODE=wmAdd then
begin
ADOQuery3.SQL.Text:='SELECT '+
'disease.ID, '+
'disease.NAME '+
'FROM dbo.oncological_diseases '+
'INNER JOIN dbo.disease '+
'ON oncological_diseases.disease_id = disease.ID where oncological_diseases.marder_id = 0 and disease.type = 0';
ADOQuery3.Open;
ADOQuery4.SQL.Text:='SELECT '+
'disease.ID, '+
'disease.NAME '+
'FROM dbo.oncological_diseases '+
'INNER JOIN dbo.disease '+
'ON oncological_diseases.disease_id = disease.ID where oncological_diseases.marder_id = 0 and disease.type = 1';
ADOQuery4.Open;
end else
begin
ADOQuery3.SQL.Text:='SELECT '+
'disease.ID, '+
'disease.NAME '+
'FROM dbo.oncological_diseases '+
'INNER JOIN dbo.disease '+
'ON oncological_diseases.disease_id = disease.ID where oncological_diseases.marder_id =:ID and disease.type = 0';
ADOQuery3.Parameters[0].Value:=MARKER_ID;
ADOQuery3.Open;
ADOQuery4.SQL.Text:='SELECT '+
'disease.ID, '+
'disease.NAME '+
'FROM dbo.oncological_diseases '+
'INNER JOIN dbo.disease '+
'ON oncological_diseases.disease_id = disease.ID where oncological_diseases.marder_id =:ID and disease.type = 1';
ADOQuery4.Parameters[0].Value:=MARKER_ID;
ADOQuery4.Open;
end;
end;
procedure TfmAddMarker.Button1Click(Sender: TObject);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
if MODE=wmAdd then
begin
Tb.SQL.Text:='insert into markers(NAME,DESCRIPTION,NORMAL_VALUE) values(:NAME,:DESCRIPTION,:NORMAL_VALUE);'+
'select Max(ID) from markers;';
Tb.Parameters[0].Value:=Trim(Edit1.Text);
Tb.Parameters[1].Value:=Trim(Memo1.Lines.Text);
try
Tb.Parameters[2].Value:=StrToFloat(Edit2.Text);
except
Tb.Parameters[2].Value:=0;
end;
Tb.Open;
if not Tb.IsEmpty then
MARKER_ID:=Tb.Fields[0].AsInteger;
Tb.Close;
Tb.SQL.Text:='update oncological_diseases set marder_id =:marder_id where marder_id = 0';
Tb.Parameters[0].Value:=MARKER_ID;
Tb.ExecSQL;
end else
begin
///Edit
end;
finally
Tb.Free;
end;
fmMain.RefreshData;
Close;
end;
procedure TfmAddMarker.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in ['0'..'9', #8, DecimalSeparator])then Key:=#0;
end;
procedure TfmAddMarker.BtnInsertRecordClick(Sender: TObject);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
if MODE=wmAdd then
begin
Tb.SQL.Text:='insert into oncological_diseases(marder_id,disease_id) values(:marder_id,:disease_id)';
Tb.Parameters[0].Value:=0;
Tb.Parameters[1].Value:=DBLookupComboboxEh1.KeyValue;
Tb.ExecSQL;
end else
begin
Tb.SQL.Text:='insert into oncological_diseases(marder_id,disease_id) values(:marder_id,:disease_id)';
Tb.Parameters[0].Value:=MARKER_ID;
Tb.Parameters[1].Value:=DBLookupComboboxEh1.KeyValue;
Tb.ExecSQL;
end;
finally
Tb.Free;
end;
RefreshDisease;
end;
procedure TfmAddMarker.BtnInsertRecord1Click(Sender: TObject);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
if MODE=wmAdd then
begin
Tb.SQL.Text:='insert into oncological_diseases(marder_id,disease_id) values(:marder_id,:disease_id)';
Tb.Parameters[0].Value:=0;
Tb.Parameters[1].Value:=DBLookupComboboxEh2.KeyValue;
Tb.ExecSQL;
end else
begin
Tb.SQL.Text:='insert into oncological_diseases(marder_id,disease_id) values(:marder_id,:disease_id)';
Tb.Parameters[0].Value:=MARKER_ID;
Tb.Parameters[1].Value:=DBLookupComboboxEh2.KeyValue;
Tb.ExecSQL;
end;
finally
Tb.Free;
end;
RefreshDisease;
end;
procedure TfmAddMarker.BtnDeleteRecordClick(Sender: TObject);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
if MODE=wmAdd then
begin
Tb.SQL.Text:='delete from oncological_diseases where marder_id =:marder_id and disease_id =:disease_id';
Tb.Parameters[0].Value:=0;
Tb.Parameters[1].Value:=ADOQuery3.FieldByName('ID').AsInteger;
Tb.ExecSQL;
end else
begin
Tb.SQL.Text:='delete from oncological_diseases where marder_id =:marder_id and disease_id =:disease_id';
Tb.Parameters[0].Value:=MARKER_ID;
Tb.Parameters[1].Value:=ADOQuery3.FieldByName('ID').AsInteger;
Tb.ExecSQL;
end;
finally
Tb.Free;
end;
RefreshDisease;
end;
procedure TfmAddMarker.BtnDeleteRecord1Click(Sender: TObject);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
if MODE=wmAdd then
begin
Tb.SQL.Text:='delete from oncological_diseases where marder_id =:marder_id and disease_id =:disease_id';
Tb.Parameters[0].Value:=0;
Tb.Parameters[1].Value:=ADOQuery4.FieldByName('ID').AsInteger;
Tb.ExecSQL;
end else
begin
Tb.SQL.Text:='delete from oncological_diseases where marder_id =:marder_id and disease_id =:disease_id';
Tb.Parameters[0].Value:=MARKER_ID;
Tb.Parameters[1].Value:=ADOQuery4.FieldByName('ID').AsInteger;
Tb.ExecSQL;
end;
finallyTb.Free;
end;
RefreshDisease;
end;
end.
Приложение В
Листинг программы «Окно добавление болезни»
unit AddDisease;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, SysUtilites;
type
TfmAddDisease = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Memo1: TMemo;
Label3: TLabel;
Memo2: TMemo;
Label4: TLabel;
ComboBox1: TComboBox;
Button1: TButton;
Button2: TButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{Private declarations}
public
{Public declarations}
MODE:TWorkMode;
DISEASE_ID:integer;
end;
var
fmAddDisease: TfmAddDisease;
implementation
uses Main;
{$R *.dfm}
procedure TfmAddDisease.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfmAddDisease.FormDestroy(Sender: TObject);
begin
fmAddDisease:=nil;
end;
procedure TfmAddDisease.Button1Click(Sender: TObject);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
if MODE = wmAdd then
begin
Tb.SQL.Text:='insert into disease(NAME,DESCRIPTION,SYMPTOM,TYPE) values(:NAME,:DESCRIPTION,:SYMPTOM,:TYPE)';
Tb.Parameters[0].Value:=Trim(Edit1.Text);
Tb.Parameters[1].Value:=Trim(Memo1.Lines.Text);
Tb.Parameters[2].Value:=Trim(Memo2.Lines.Text);
Tb.Parameters[3].Value:=ComboBox1.ItemIndex;
Tb.ExecSQL;
end else
begin
Tb.SQL.Text:='update disease set NAME=:NAME, DESCRIPTION=:DESCRIPTION, SYMPTOM=:SYMPTOM, TYPE=:TYPE where id =:id;';
Tb.Parameters[0].Value:=Trim(Edit1.Text);
Tb.Parameters[1].Value:=Trim(Memo1.Lines.Text);
Tb.Parameters[2].Value:=Trim(Memo2.Lines.Text);
Tb.Parameters[3].Value:=ComboBox1.ItemIndex;
Tb.Parameters[4].Value:=DISEASE_ID;
Tb.ExecSQL;
end;
finally
Tb.Free;
end;
fmMain.RefreshData;
Close;
end;
procedure TfmAddDisease.FormShow(Sender: TObject);
var
Tb:TADOQuery;
begin
if MODE = wmAdd then
begin
fmAddDisease.Caption:='Добавитьболезнь';
end else
begin
fmAddDisease.Caption:='Изменитьболезнь';
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
Tb.SQL.Text:='select * from disease where id =:id';
Tb.Parameters[0].Value:=DISEASE_ID;
Tb.Open;
if not Tb.IsEmpty then
begin
Edit1.Text:=Tb.FieldByName('NAME').AsString;
Memo1.Lines.Text:=Tb.FieldByName('DESCRIPTION').AsString;
Memo2.Lines.Text:=Tb.FieldByName('SYMPTOM').AsString;
Combobox1.ItemIndex:=Tb.FieldByName('TYPE').AsInteger;
end;
Tb.Close;
finally
Tb.Free;
end;
end;
end;
procedure TfmAddDisease.Button2Click(Sender: TObject);
begin
Close;
end;
end.
Приложение Г
Листинг программы «Окно добавления пациента»
unit AddPatients;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, SysUtilites, DBGridEh, StdCtrls, ExtCtrls, ComCtrls, Mask,
DBCtrlsEh, DBLookupEh, DB, ADODB;
type
TfmAddPatients = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
GroupBox1: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
DBLookupComboboxEh1: TDBLookupComboboxEh;
Label7: TLabel;
Edit1: TEdit;
ComboBox1: TComboBox;
DateTimePicker1: TDateTimePicker;
ComboBox2: TComboBox;
DateTimePicker2: TDateTimePicker;
ComboBox3: TComboBox;
Label8: TLabel;
DBLookupComboboxEh2: TDBLookupComboboxEh;
Label9: TLabel;
Edit2: TEdit;
Bevel1: TBevel;
Button1: TButton;
Button2: TButton;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
DataSource1: TDataSource;
DataSource2: TDataSource;
ADOQuery2ID: TAutoIncField;
ADOQuery2NAME: TStringField;
ADOQuery2DESCRIPTION: TStringField;
ADOQuery2NORMAL_VALUE: TBCDField;
ADOQuery1ID: TAutoIncField;
ADOQuery1NAME: TStringField;
ADOQuery1DESCRIPTION: TStringField;
ADOQuery1SYMPTOM: TStringField;
ADOQuery1TYPE: TSmallintField;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{Private declarations}
public
{Public declarations}
MODE:TWorkMode;
PATIENT_ID:integer;
end;
var
fmAddPatients: TfmAddPatients;
implementation
uses Main;
{$R *.dfm}
procedure TfmAddPatients.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfmAddPatients.FormDestroy(Sender: TObject);
begin
fmAddPatients:=nil;
end;
procedure TfmAddPatients.Button1Click(Sender: TObject);
begin
Close;
end;
procedure TfmAddPatients.Button2Click(Sender: TObject);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
if MODE=wmAdd then
begin
Tb.SQL.Text:='insert into patients(FIO,POL,DATE_OF_BIRTH,DATE_OF_SURVEY,PRELIMINARY_DIAGNOSIS,SMOKES,EXPECTANT,MARKER,RESULT,MRT,UZI,RADIOGRAPHY) '+
'values(:FIO,:POL,:DATE_OF_BIRTH,:DATE_OF_SURVEY,:PRELIMINARY_DIAGNOSIS,:SMOKES,:EXPECTANT,:MARKER,:RESULT,:MRT,:UZI,:RADIOGRAPHY)';
Tb.Parameters[0].Value:=Edit1.Text;
Tb.Parameters[1].Value:=ComboBox1.ItemIndex;
Tb.Parameters[2].Value:=DateTimePicker1.Date;
Tb.Parameters[3].Value:=DateTimePicker2.Date;
Tb.Parameters[4].Value:=DBLookupComboboxEh1.KeyValue;
Tb.Parameters[5].Value:=ComboBox2.ItemIndex;
Tb.Parameters[6].Value:=ComboBox3.ItemIndex;
Tb.Parameters[7].Value:=DBLookupComboboxEh2.KeyValue;
Tb.Parameters[8].Value:=Edit2.Text;
if not CheckBox1.Checked then
Tb.Parameters[9].Value:=0
else
Tb.Parameters[9].Value:=1;
if not CheckBox2.Checked then
Tb.Parameters[10].Value:=0
else
Tb.Parameters[10].Value:=1;
if not CheckBox3.Checked then
Tb.Parameters[11].Value:=0
else
Tb.Parameters[11].Value:=1;
Tb.ExecSQL;
end else
begin
Tb.SQL.Text:='update patients set FIO=:FIO,POL=:POL,DATE_OF_BIRTH=:DATE_OF_BIRTH,DATE_OF_SURVEY=:DATE_OF_SURVEY,PRELIMINARY_DIAGNOSIS=:PRELIMINARY_DIAGNOSIS,'+
'SMOKES=:SMOKES,EXPECTANT=:EXPECTANT,MARKER=:MARKER,RESULT=:RESULT,MRT=:MRT,UZI=:UZI,RADIOGRAPHY=:RADIOGRAPHY where ID =:ID';
Tb.Parameters[0].Value:=Edit1.Text;
Tb.Parameters[1].Value:=ComboBox1.ItemIndex;
Tb.Parameters[2].Value:=DateTimePicker1.Date;
Tb.Parameters[3].Value:=DateTimePicker2.Date;
Tb.Parameters[4].Value:=DBLookupComboboxEh1.KeyValue;
Tb.Parameters[5].Value:=ComboBox2.ItemIndex;
Tb.Parameters[6].Value:=ComboBox3.ItemIndex;
Tb.Parameters[7].Value:=DBLookupComboboxEh2.KeyValue;
Tb.Parameters[8].Value:=Edit2.Text;
if not CheckBox1.Checked then
Tb.Parameters[9].Value:=0
else
Tb.Parameters[9].Value:=1;
if not CheckBox2.Checked then
Tb.Parameters[10].Value:=0
else
Tb.Parameters[10].Value:=1;
if not CheckBox3.Checked then
Tb.Parameters[11].Value:=0
else
Tb.Parameters[11].Value:=1;
Tb.Parameters[12].Value:=PATIENT_ID;
Tb.ExecSQL;
end;
finally
Tb.Free;
end;
fmMain.RefreshData;
Close;
end;
procedure TfmAddPatients.FormShow(Sender: TObject);
var
Tb:TADOQuery;
begin
ADOQuery1.Open;
ADOQuery2.Open;
if MODE=wmAdd then
begin
fmAddPatients.Caption:= 'Добавлениеданныхопациенте';
end else
begin
fmAddPatients.Caption:='Изменениеданныхопациенте';
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
Tb.SQL.Text:='select * from patients where id =:id';
Tb.Parameters[0].Value:=PATIENT_ID;
Tb.Open;
if not Tb.IsEmpty then begin
Edit1.Text:=Tb.FieldByName('FIO').AsString;
ComboBox1.ItemIndex:=Tb.FieldByName('POL').AsInteger;
DateTimePicker1.Date:=Tb.FieldByName('DATE_OF_BIRTH').AsDateTime;
DateTimePicker2.Date:=Tb.FieldByName('DATE_OF_SURVEY').AsDateTime;
DBLookupComboboxEh1.KeyValue:=Tb.FieldByName('PRELIMINARY_DIAGNOSIS').AsInteger;
ComboBox2.ItemIndex:=Tb.FieldByName('SMOKES').AsInteger;
ComboBox3.ItemIndex:=Tb.FieldByName('EXPECTANT').AsInteger;
DBLookupComboboxEh2.KeyValue:=Tb.FieldByName('MARKER').AsInteger;
Edit2.Text:=Tb.FieldByName('RESULT').AsString;
if Tb.FieldByName('MRT').AsInteger=1 then
CheckBox1.Checked:=true
else
CheckBox1.Checked:=false;
if Tb.FieldByName('UZI').AsInteger=1 then
CheckBox2.Checked:=true
else
CheckBox2.Checked:=false;
if Tb.FieldByName('RADIOGRAPHY').AsInteger=1 then
CheckBox3.Checked:=true
else
CheckBox3.Checked:=false;
end;
Tb.Close;
finally
Tb.Free;
end;
end;
end.
Приложение Д
Листинг программы «Окно добавление болезни»
unit AddDisease;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, SysUtilites;
type
TfmAddDisease = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Memo1: TMemo;
Label3: TLabel;
Memo2: TMemo;
Label4: TLabel;
ComboBox1: TComboBox;
Button1: TButton;
Button2: TButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{Private declarations}
public
{Public declarations}
MODE:TWorkMode;
DISEASE_ID:integer;
end;
var
fmAddDisease: TfmAddDisease;
implementation
uses Main;
{$R *.dfm}
procedure TfmAddDisease.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfmAddDisease.FormDestroy(Sender: TObject);
begin
fmAddDisease:=nil;
end;
procedure TfmAddDisease.Button1Click(Sender: TObject);
var
Tb:TADOQuery;
begin
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
if MODE = wmAdd then
begin
Tb.SQL.Text:='insert into disease(NAME,DESCRIPTION,SYMPTOM,TYPE) values(:NAME,:DESCRIPTION,:SYMPTOM,:TYPE)';
Tb.Parameters[0].Value:=Trim(Edit1.Text);
Tb.Parameters[1].Value:=Trim(Memo1.Lines.Text);
Tb.Parameters[2].Value:=Trim(Memo2.Lines.Text);
Tb.Parameters[3].Value:=ComboBox1.ItemIndex;
Tb.ExecSQL;
end else
begin
Tb.SQL.Text:='update disease set NAME=:NAME, DESCRIPTION=:DESCRIPTION, SYMPTOM=:SYMPTOM, TYPE=:TYPE where id =:id;';
Tb.Parameters[0].Value:=Trim(Edit1.Text);
Tb.Parameters[1].Value:=Trim(Memo1.Lines.Text);
Tb.Parameters[2].Value:=Trim(Memo2.Lines.Text);
Tb.Parameters[3].Value:=ComboBox1.ItemIndex;
Tb.Parameters[4].Value:=DISEASE_ID;
Tb.ExecSQL;
end;
finally
Tb.Free;
end;
fmMain.RefreshData;
Close;
end;
procedure TfmAddDisease.FormShow(Sender: TObject);
var
Tb:TADOQuery;
begin
if MODE = wmAdd then
begin
fmAddDisease.Caption:='Добавитьболезнь';
end else
begin
fmAddDisease.Caption:='Изменитьболезнь';
Tb:=TADOQuery.Create(nil);
Tb.Connection:=fmMain.ADOConnection1;
try
Tb.SQL.Text:='select * from disease where id =:id';
Tb.Parameters[0].Value:=DISEASE_ID;
Tb.Open;
if not Tb.IsEmpty then
begin
Edit1.Text:=Tb.FieldByName('NAME').AsString;
Memo1.Lines.Text:=Tb.FieldByName('DESCRIPTION').AsString;
Memo2.Lines.Text:=Tb.FieldByName('SYMPTOM').AsString;
Combobox1.ItemIndex:=Tb.FieldByName('TYPE').AsInteger;
end;
Tb.Close;
finally
Tb.Free;
end;
end;
end;
procedure TfmAddDisease.Button2Click(Sender: TObject);
begin
Close;
end;
end.
Приложение Е
Листинг программы «Окно о программе»
unit About;
interface
uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,
Buttons, ExtCtrls;
type
TfmAbout = class(TForm)
Panel1: TPanel;
ProgramIcon: TImage;
ProductName: TLabel;
Version: TLabel;
Copyright: TLabel;
Comments: TLabel;
OKButton: TButton;
procedure OKButtonClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
fmAbout: TfmAbout;
implementation
{$R *.dfm}
procedure TfmAbout.OKButtonClick(Sender: TObject);
begin
Close;
end;
procedure TfmAbout.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfmAbout.FormDestroy(Sender: TObject);
begin
fmAbout:=nil;
end;
end.
Приложение Ж
Листинг программы «Окно сформировать отчет»
unit GenReport;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, DB, ADODB, DateUtils, COMObj, frxClass,
frxADOComponents;
type
TfmGenReport = class(TForm)
Button1: TButton;
Button2: TButton;
Label1: TLabel;
DateTimePicker1: TDateTimePicker;
Label2: TLabel;
DateTimePicker2: TDateTimePicker;
frxReport1: TfrxReport;
frxADOComponents1: TfrxADOComponents;
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
fmGenReport: TfmGenReport;
implementation
uses Main;
{$R *.dfm}
procedure TfmGenReport.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TfmGenReport.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfmGenReport.FormDestroy(Sender: TObject);
begin
fmGenReport:=nil;
end;
procedure TfmGenReport.Button1Click(Sender: TObject);
begin
(frxReport1.FindObject('Memo14') as TfrxMemoView).Text:='Список пациентов проходивших обследование за период с '+DateToStr(DateTimePicker1.Date)+' по '+DateToStr(DateTimePicker2.Date);
(frxReport1.FindObject('ADOQuery1') as TfrxADOQuery).ParamByName('DATN').Value:=RecodeTime(DateTimePicker1.Date, 00, 00, 00, 00);
(frxReport1.FindObject('ADOQuery1') as TfrxADOQuery).ParamByName('DATK').Value:=RecodeTime(DateTimePicker2.Date, 23, 59, 59, 00);
frxReport1.ShowReport();
end.
Приложение З
Архитектура программы
Рисунок З.1 - Архитектура программы
Приложение И
Структура подчинения листингов программы
Рисунок И.1 - Структура подчинения листингов программы
Размещено на Allbest.ru
Подобные документы
Место и роль услуг здравоохранения в экономике. Особенности маркетинга медицинских услуг. Предпосылки использования маркетинга в сфере здравоохранения. Анализ маркетинговой деятельности учреждения здравоохранения ГБУЗ "Городская клиническая больница № 2".
дипломная работа [741,2 K], добавлен 14.01.2015Создание нейросетевой системы медицинской диагностики. Постановка диагнозов заболеваний желудочно-кишечного тракта на основании минимального количества данных, для получения которых не требуется применения специальных медицинских приборов и оборудования.
презентация [310,1 K], добавлен 14.07.2012Продолжительность жизни населения и летальность от сердечно-сосудистых заболеваний в России и странах мира. Дефиниция и критерии инфаркта миокарда. Рекомендации NACBLM по использованию биохимических маркеров для диагностики сердечных заболеваний.
презентация [1,4 M], добавлен 06.02.2011Характеристика работы Областного государственного бюджетного учреждения здравоохранения "Шелеховская районная больница". Сестринское дело как составная часть системы здравоохранения. Основные методы предупреждения инфицирования медицинского персонала.
отчет по практике [25,1 K], добавлен 16.02.2016Исследование принципов и общая характеристика методов диагностики инфекционных заболеваний. Лабораторная диагностика: иммуноферментный анализ и блоттинг, микробиологический, бактериологический, вирусологический, биологический и иммунологический методы.
реферат [41,1 K], добавлен 23.02.2011Необходимость разработки более эффективных методов для диагностики и устранения дефектов зубов на начальных стадиях. Определение эффективности применения узконаправленного света и офтальмологической оптики для диагностики стоматологических заболеваний.
презентация [890,7 K], добавлен 27.04.2016Симптомы заболеваний дыхательной системы. Методы медицинской визуализации (лучевой диагностики). Традиционная рентгенография грудной клетки. Применение рентгеноскопии для дифференциальной диагностики жидкости в плевральной полости и старых наслоений.
презентация [436,8 K], добавлен 12.10.2015Миография как запись сократительной способности мышц. Общая характеристика методов функциональной диагностики стоматологических заболеваний у детей. Рассмотрение особенностей механического гнатодинамометра. Анализ функций мышц зубочелюстной системы.
презентация [5,3 M], добавлен 31.01.2016Расширение спектра патогенных микроорганизмов, связанных с развитием заболеваний пищеварительного тракта. Алгоритмы диагностики и лечения диареи. Противоречия в подходах к оценке диарейных заболеваний. Последствия неадекватной диагностики и лечения.
реферат [187,2 K], добавлен 07.10.2011Этиология и патогенез силикоза и силикотуберкулеза, процесс развития болезней. Клиническая картина и проявления симптомов заболеваний. Методы диагностики и дополнительные исследования при силикозе. Морфология и способы лечения данных заболеваний.
презентация [522,9 K], добавлен 29.04.2014