- •Аннотация
- •Работа изложена на 72 страницах, содержит 14 таблиц, 18 рисунков, 31 источник, 9 приложений.
- •Содержание
- •1Анализ организационно-штатной структуры Государственного Бюджетного Учреждения Здравоохранения «Городская Клиническая Больница №5 »
- •1.1Описание подразделений
- •2 Анализ существующих программно-аппаратных комплексов для диагностики заболеваний
- •2.1 Аппаратно-программный комплекс димол
- •3 Создание аппаратно-программного комплекса
- •3.1 Обоснование выбора субд и программного обеспечения
- •3.2 Структура программы
- •3.3 Интерфейс программы
- •4 Экономическая часть
- •4.1 Технико-экономическое обоснование разработки
- •4.2 Расчёт себестоимости программного продукта
- •4.3 Расчёт экономического эффекта
- •Заключение
- •Список использованных источников
- •Приложение а (обязательное) Листинг программы «Главное окно программы»
- •Приложение б (обязательное) Листинг программы «Окно добавления маркера»
- •Приложение в (обязательное) Листинг программы «Окно добавление болезни»
- •Приложение г (обязательное) Листинг программы «Окно добавления пациента»
- •Приложение д (обязательное) Листинг программы «Окно добавление болезни»
- •Приложение е (обязательное) Листинг программы «Окно о программе»
- •Приложение ж (обязательное) Листинг программы «Окно сформировать отчет»
Приложение а (обязательное) Листинг программы «Главное окно программы»
unit Main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBGridEhGrouping, Menus, GridsEh, DBGridEh, RzButton, ImgList,
ExtCtrls, RzPanel, RzTabs, DB, ADODB, SysUtilites, shellapi;
type
TfmMain = class(TForm)
ADOConnection1: TADOConnection;
ImageList1: TImageList;
RzPanel1: TRzPanel;
RzPageControl1: TRzPageControl;
TabSheet1: TRzTabSheet;
DBGridEh1: TDBGridEh;
RzToolbar2: TRzToolbar;
BtnInsertRecord: TRzToolButton;
BtnEdit: TRzToolButton;
BtnDelete: TRzToolButton;
TabSheet2: TRzTabSheet;
TabSheet3: TRzTabSheet;
mm1: TMainMenu;
N1: TMenuItem;
N3: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N2: TMenuItem;
N5: TMenuItem;
N4: TMenuItem;
RzToolbar1: TRzToolbar;
RzToolButton1: TRzToolButton;
RzToolButton2: TRzToolButton;
RzToolButton3: TRzToolButton;
DBGridEh2: TDBGridEh;
RzToolbar3: TRzToolbar;
RzToolButton4: TRzToolButton;
RzToolButton5: TRzToolButton;
RzToolButton6: TRzToolButton;
DBGridEh3: TDBGridEh;
DataSource1: TDataSource;
qPatients: TADOQuery;
qMarkers: TADOQuery;
DataSource2: TDataSource;
DataSource3: TDataSource;
qDisease: TADOQuery;
qDiseaseID: TAutoIncField;
qDiseaseNAME: TStringField;
qDiseaseDESCRIPTION: TStringField;
qDiseaseSYMPTOM: TStringField;
qDiseaseTYPE: TSmallintField;
qMarkersID: TAutoIncField;
qMarkersNAME: TStringField;
qMarkersDESCRIPTION: TStringField;
qMarkersNORMAL_VALUE: TBCDField;
qPatientsNAME: TStringField;
qPatientsNORMAL_VALUE: TBCDField;
qPatientsID: TAutoIncField;
qPatientsFIO: TStringField;
qPatientsPOL: TStringField;
qPatientsDATE_OF_BIRTH: TDateTimeField;
qPatientsDATE_OF_SURVEY: TDateTimeField;
qPatientsSMOKES: TStringField;
qPatientsEXPECTANT: TStringField;
qPatientsRESULT: TBCDField;
qPatientsRESULT_S: TStringField;
qPatientsMRT: TStringField;
qPatientsUZI: TStringField;
qPatientsRADIOGRAPHY: TStringField;
qPatientsDISEASE_NAME: TStringField;
procedure N3Click(Sender: TObject);
procedure RzToolButton1Click(Sender: TObject);
procedure RzToolButton2Click(Sender: TObject);
procedure RzToolButton4Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure RzToolButton5Click(Sender: TObject);
procedure RzToolButton3Click(Sender: TObject);
procedure qMarkersAfterOpen(DataSet: TDataSet);
procedure RzToolButton6Click(Sender: TObject);
procedure BtnInsertRecordClick(Sender: TObject);
procedure BtnDeleteClick(Sender: TObject);
procedure BtnEditClick(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure RefreshData;
end;
var
fmMain: TfmMain;
implementation
uses AddMarker, AddDisease, AddPatients, About;
{$R *.dfm}
procedure TfmMain.RefreshData;
begin
if qPatients.Active then
qPatients.Close;
qPatients.Open;
if qMarkers.Active then
qMarkers.Close;
qMarkers.Open;
if qDisease.Active then
qDisease.Close;
qDisease.Open;
end;
procedure TfmMain.N3Click(Sender: TObject);
begin
Close;
end;
procedure TfmMain.RzToolButton1Click(Sender: TObject);
begin
if fmAddMarker=nil then
Application.CreateForm(TfmAddMarker,fmAddMarker);
fmAddMarker.MODE:=wmAdd;
fmAddMarker.ShowModal;
end;
procedure TfmMain.RzToolButton2Click(Sender: TObject);
begin
if fmAddMarker=nil then
Application.CreateForm(TfmAddMarker,fmAddMarker);
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.
