Разработка программного обеспечения для спирографического обследования
Методы исследования функции внешнего дыхания. Клинико-физиологические возможности спирографии. Разработка программы "СпироТест" в среде программирования Borland Delphi 7.0. Анализ технико-экономических показателей и экономической целесообразности проекта.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 13.04.2014 |
Размер файла | 916,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
4.12 Расчет продажной стоимости
Таблица 4.11 - Результаты расчета продажной стоимости
Операция |
Сумма, руб. |
|
Начисление дохода исполнителю |
14247 |
|
Налоги ИСП : Уплата налога на прибыль исполнителя |
2849 |
|
Начисление процентов заказчику |
35619 |
|
Продажная стоимость с НДС |
227964 |
|
Денежный доход исполнителя |
40630 |
По результатам расчетов продажной стоимости программы составит 227 964 руб.
Заключение
Во время выполнения работы, было разработано «Программное обеспечения для спирографического обследования», которое осуществляет информационную поддержку медиков и позволяет упростить труд ведение учёта пациентов, а так же много кратное уменьшение времени создание отчетов в определенные промежутки времени. Были рассмотрены теоретические основы спирографического обследования, а именно причины болезней органов дыхания и основные показатели измеряющиеся в ходе обследования.
C помощью PARADOX 7 разработана база данных, содержащая 3 таблицы. Программным средством для создания программы «СпироТест» является среда разработки Borland Delphi 7.0. Разработана схема данных, схема функционирования программного продукта, описано проектирование пользовательского интерфейса и квантификация, приведены результаты работы программного продукта.
Рассмотрены опасные и вредные производственные факторы на рабочем месте оператора ЭВМ и проведен анализ технико-экономических показателей и обоснование экономической целесообразности принятых в проекте решений.
Библиографический список
1. Архангельский А. Я. Программирование в Delphi 7. - М.: Бином, 2003. - 1152 с.
2. Горбенко П.П. Новые медицинские технологии в профилактике и лечении заболеваний органов дыхания. Л.: ВНИИП, 1990.
3. Зиневич А.Н. Приборные методы исследования органов дыхания. Л.: ЛенГИДУВ, 1991.
4. Исследование функции внешнего дыхания у больных с туберкулезом легких ( методич. указания). Составлено канд. мед. наук Т. М. Высоковой. М.: МНИИ туберкулеза, 1971.
5. Кэнту М. Delphi 7. Для профессионалов. - СПб.: Питер, 2004. - 1101 с: ил.
6. Парфенов Ю. П., Иноземцев А. В. Разработка приложений для обработки баз данных на основе технологии ADO: Конспект лекций и методические указания по курсу «Промышленные СУБД». - Екатеринбург: Издательство УМЦ УПИ, 2003. - 43 с.
7. Современные методы диагностики и лечения заболеваний органов дыхания. Сб. научн. тр. (Под ред. А.Г.Чучелина). - М.: Б. и., 1983.
8. Спирография (методика исследования и клинического использования). Методическое письмо (ВНИИ пульмонологии)/Под ред. Канаева Н.Н. - Л.: ВНИИП, 1972.
9. Фаронов В. В. Программирование баз данных в Delphi 7 - СПб.: Питер, 2003. - 459 с.
10. Ширяева И.С. Методические рекомендации для врачей кабинетов функциональной диагностики и для врачей-педиатров детских больниц и поликлиник - М., 1997.
Приложение A
Листинг для SpiroTestUnit
unit SpiroTestUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, Menus, StdCtrls, Grids, DB, DBTables, DBGrids,
ExtCtrls, DBCtrls, TeeProcs, TeEngine, Chart, DbChart, Mask, Series;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
N3: TMenuItem;
N6: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
VewPageControl: TPageControl;
TabSheet4: TTabSheet;
TabSheet5: TTabSheet;
GroupBox1: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
Edit1: TEdit;
Button1: TButton;
GroupBox2: TGroupBox;
RedactPageControl: TPageControl;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
TabSheet1: TTabSheet;
DBNavigator1: TDBNavigator;
GroupBox3: TGroupBox;
GroupBox4: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
DBGrid2: TDBGrid;
DataSource2: TDataSource;
Table2: TTable;
DBNavigator2: TDBNavigator;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Edit12: TEdit;
Edit13: TEdit;
Edit14: TEdit;
Edit15: TEdit;
DBGrid1: TDBGrid;
Table1: TTable;
DataSource1: TDataSource;
Label15: TLabel;
Edit16: TEdit;
ComboBox1: TComboBox;
Table3: TTable;
DataSource3: TDataSource;
DBGrid3: TDBGrid;
Label16: TLabel;
Edit11: TEdit;
Label17: TLabel;
Edit17: TEdit;
Label18: TLabel;
Edit18: TEdit;
Label19: TLabel;
Edit19: TEdit;
Label20: TLabel;
Edit20: TEdit;
DBNavigator3: TDBNavigator;
DBGrid4: TDBGrid;
DBGrid5: TDBGrid;
Query1: TQuery;
Query2: TQuery;
DataSource4: TDataSource;
DataSource5: TDataSource;
StringGrid1: TStringGrid;
DBChart1: TDBChart;
Edit21: TEdit;
Label21: TLabel;
Button2: TButton;
DataSource6: TDataSource;
Table4: TTable;
Query3: TQuery;
DataSource7: TDataSource;
Series1: TPieSeries;
Edit22: TEdit;
Label22: TLabel;
procedure N8Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
procedure DBNavigator2Click(Sender: TObject; Button: TNavigateBtn);
procedure Edit13KeyPress(Sender: TObject; var Key: Char);
procedure Edit14KeyPress(Sender: TObject; var Key: Char);
procedure Edit15KeyPress(Sender: TObject; var Key: Char);
procedure Edit12KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit16KeyPress(Sender: TObject; var Key: Char);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure Edit5KeyPress(Sender: TObject; var Key: Char);
procedure Edit6KeyPress(Sender: TObject; var Key: Char);
procedure Edit7KeyPress(Sender: TObject; var Key: Char);
procedure Edit8KeyPress(Sender: TObject; var Key: Char);
procedure Edit10KeyPress(Sender: TObject; var Key: Char);
procedure Edit9KeyPress(Sender: TObject; var Key: Char);
procedure DBNavigator3Click(Sender: TObject; Button: TNavigateBtn);
procedure Edit11KeyPress(Sender: TObject; var Key: Char);
procedure Edit19KeyPress(Sender: TObject; var Key: Char);
procedure Edit18KeyPress(Sender: TObject; var Key: Char);
procedure Edit20KeyPress(Sender: TObject; var Key: Char);
procedure RadioButton1Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure RadioButton2Click(Sender: TObject);
procedure RadioButton4Click(Sender: TObject);
procedure RadioButton3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure DataSource4DataChange(Sender: TObject; Field: TField);
procedure Button2Click(Sender: TObject);
procedure Edit22KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.N8Click(Sender: TObject);
begin
VewPageControl.Visible:=False;
VewPageControl.Enabled:=False;
RedactPageControl.Visible:=True;
RedactPageControl.Enabled:=true;
end;
procedure TForm1.N9Click(Sender: TObject);
begin
RedactPageControl.Enabled:=False;
RedactPageControl.Visible:=False;
VewPageControl.Visible:=True;
VewPageControl.Enabled:=True;
end;
procedure TForm1.N10Click(Sender: TObject);
begin
Form1.Close;
//очищаем таблицу от записей
with Table4 do
begin
Active := False;
EmptyTable;
end;
end;
//Редактирование таблицы "TestInfo"
procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
label
EF;
begin
case Button of
nbInsert: begin
if (Edit2.text='')or (Edit3.text='')or (Edit4.text='')or (Edit5.text='')or
(Edit6.text='')or (Edit7.text='')or (Edit8.text='')or (Edit9.text='')or (Edit10.text='')
then
begin
ShowMessage('Для добавления записи должны быть заполнены все поля!') ;
goto EF;
end;
Table1.InsertRecord([StrToInt(Edit2.Text),StrToInt(Edit3.Text),StrToInt(Edit4.Text),StrToInt(Edit5.Text),
StrToInt(Edit6.Text),StrToInt(Edit7.Text),StrToInt(Edit8.Text),StrToInt(Edit9.Text),StrToInt(Edit10.Text),ComboBox1.Text,StrTodate(Edit16.Text)]);
Edit2.Clear; Edit3.Clear;Edit4.Clear;Edit5.Clear;Edit6.Clear;Edit7.Clear;Edit8.Clear;Edit9.Clear;Edit10.Clear;Edit16.Clear;
EF:
end;
end;
end;
//Редактирование таблицы "Doctors"
procedure TForm1.DBNavigator2Click(Sender: TObject; Button: TNavigateBtn);
label
EF;
begin
case Button of
nbInsert: begin
if (Edit12.text='')or (Edit13.text='')or (Edit14.text='')or (Edit15.text='') or (edit22.text='')
then
begin
ShowMessage('Для добавления записи должны быть заполнены все поля!') ;
goto EF;
end;
Table2.InsertRecord([Edit12.Text,Edit13.Text,Edit14.Text,Edit15.Text,edit22.text]);
Edit12.Clear; Edit13.Clear; Edit14.Clear; Edit15.Clear; Edit22.Clear;
EF:
end;
end;
end;
//Ограничение на ввод символов
procedure TForm1.Edit13KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit14KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit15KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit12KeyPress(Sender: TObject; var Key: Char);
begin
Case key of
'а'..'я',#8,'А'..'Я',#32:;
else key := Chr(0);
end;
end;
procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit16KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9','.' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit5KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit6KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit7KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit8KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit10KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit9KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
//заполнение таблицы
procedure TForm1.DBNavigator3Click(Sender: TObject; Button: TNavigateBtn);
label
ef;
begin
case Button of
nbInsert: begin
if (edit11.text='') or (edit17.text='') or (edit18.text='')
or (edit19.text='') or (edit20.text='')
then
begin
ShowMessage('Для добавления записи должны быть заполнены все поля!') ;
goto EF;
end;
Table3.InsertRecord([Edit11.Text,StrToDate(Edit18.text),Edit17.Text,Edit19.Text,StrToInt(Edit20.Text)]);
Edit11.Clear;Edit17.Clear;Edit18.Clear;Edit19.Clear;Edit20.Clear;
ef:
end;
end
end;
//Ограничение на ввод символов
procedure TForm1.Edit11KeyPress(Sender: TObject; var Key: Char);
begin
Case key of
'а'..'я',#8,'А'..'Я',#32:;
else key := Chr(0);
end;
end;
procedure TForm1.Edit19KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit18KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9','.' : ;
else key := Chr(0);
end;
end;
procedure TForm1.Edit20KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'0'..'9' : ;
else key := Chr(0);
end;
end;
procedure TForm1.RadioButton1Click(Sender: TObject);
begin
Edit1.Enabled:=False;
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
//Ограничение на ввод символов
if RadioButton2.Checked then
Begin
Edit1.MaxLength:=30;
Case key of
'а'..'я',#8,'А'..'Я',#32:;
else key := Chr(0);
end;
end;
if RadioButton4.Checked then Edit1.MaxLength:=30;
if RadioButton3.Checked then
Begin
Edit1.MaxLength:=4;
case Key of
#8,'0'..'9' : ;
else key := Chr(0);
end;
end;
end;
procedure TForm1.RadioButton2Click(Sender: TObject);
begin
Edit1.Enabled:=True;
end;
procedure TForm1.RadioButton4Click(Sender: TObject);
begin
Edit1.Enabled:=True;
end;
procedure TForm1.RadioButton3Click(Sender: TObject);
begin
Edit1.Enabled:=True;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
a,b:string;
begin
a:='01.01.'+Edit1.Text;
b:='31.12.'+Edit1.text;
Table4.Active:=True;
//Выборка всех записей
if radiobutton1.Checked then
begin
with form1.Query1 do begin
Close;
Sql.Clear;
SQL.Add('SELECT Name, Birth, Adres, Phone, ID');
SQL.Add('FROM "Pacients.db"');
SQL.Add('ORDER BY name');
open;
end;
edit1.Clear;
end;
//Выборка по имени
If radiobutton2.Checked then
begin
with form1.Query1 do begin
close;
Sql.Clear;
Sql.Add('SELECT Name, Birth, Adres, Phone, ID');
Sql.Add('FROM "Pacients.db"');
Sql.Add('WHERE');
Sql.Add('(Name like "%'+ Edit1.Text +'%")');
Sql.Add('ORDER BY Name');
open;
end;
edit1.Clear;
end;
//Выборка по адресу
If RadioButton4.Checked then
begin
with form1.Query1 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Name, Birth, Adres, Phone, ID');
Sql.Add('FROM "Pacients.db"');
Sql.Add('WHERE');
Sql.Add('(Adres like "%'+ Edit1.Text +'%")');
Sql.Add('ORDER BY Name');
open;
end;
edit1.Clear;
end;
//Выбока по дате рождения
If RadioButton3.Checked then
begin
{
with form1.Query1 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Name, Birth, Adres, Phone, ID');
Sql.Add('FROM "Pacients.db"');
Sql.Add('WHERE');
Sql.Add('(Birth = "'+ Edit1.Text +'")');
Sql.Add('ORDER BY Name');
open;
end;
}
with form1.Query1 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Name, Birth, Adres, Phone, ID');
Sql.Add('FROM "Pacients.db"');
Sql.Add('WHERE');
Sql.Add('(Birth BETWEEN "'+ a +'" AND "'+ b +'")');
Sql.Add('ORDER BY Name');
open;
end;
edit1.Clear;
end;
DBGrid4.Columns[0].Title.Caption:='Ф.И.О.';
DBGrid4.Columns[1].Title.Caption:='Дата рождения';
DBGrid4.Columns[2].Title.Caption:='Адрес';
DBGrid4.Columns[3].Title.Caption:='Телефон';
DBGrid4.Columns[4].Title.Caption:='ID';
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
RedactPageControl.Enabled:=False;
RedactPageControl.Visible:=False;
radiobutton1.Checked:=true;
DBGrid1.Columns[0].Title.Caption:='ID';
DBGrid1.Columns[1].Title.Caption:='Номер обследованмя';
DBGrid1.Columns[2].Title.Caption:='ЧД';
DBGrid1.Columns[3].Title.Caption:='ОО';
DBGrid1.Columns[4].Title.Caption:='ОЕЛ';
DBGrid1.Columns[5].Title.Caption:='ЖЕЛ';
DBGrid1.Columns[6].Title.Caption:='МВС';
DBGrid1.Columns[7].Title.Caption:='МВЛ';
DBGrid1.Columns[8].Title.Caption:='ОВЛ';
DBGrid1.Columns[9].Title.Caption:='Диагноз';
DBGrid1.Columns[10].Title.Caption:='Дата';
DBGrid2.Columns[0].Title.Caption:='Ф.И.О.';
DBGrid2.Columns[1].Title.Caption:='Пароль';
DBGrid2.Columns[2].Title.Caption:='Телефон';
DBGrid2.Columns[3].Title.Caption:='ID';
DBGrid2.Columns[4].Title.Caption:='Приоритет';
DBGrid3.Columns[0].Title.Caption:='Ф.И.О.';
DBGrid3.Columns[1].Title.Caption:='Дата рождения';
DBGrid3.Columns[2].Title.Caption:='Адрес';
DBGrid3.Columns[3].Title.Caption:='Телефон';
DBGrid3.Columns[4].Title.Caption:='ID';
end;
//отображение результатов обследования активной ячейки
procedure TForm1.DataSource4DataChange(Sender: TObject; Field: TField);
label
ef;
begin
if Query1.FieldValues['ID']=NULL then goto EF;
with form1.Query2 do begin
Close;
Sql.Clear;
Sql.Add('SELECT TestCount, Frequency, ResidualVolume, TotalLungCapacity, VitalCapacity, MBCapacity, MaxVolVentilation, TotalLungVentilation, Diagnos, TestDate');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(ID = "'+ IntToStr(Query1.FieldValues['ID']) +'")');
Sql.Add('ORDER BY TestCount');
open;
end;
DBGrid5.Columns[0].Title.Caption:='Номер обследованмя';
DBGrid5.Columns[1].Title.Caption:='ЧД';
DBGrid5.Columns[2].Title.Caption:='ОО';
DBGrid5.Columns[3].Title.Caption:='ОЕЛ';
DBGrid5.Columns[4].Title.Caption:='ЖЕЛ';
DBGrid5.Columns[5].Title.Caption:='МВС';
DBGrid5.Columns[6].Title.Caption:='МВЛ';
DBGrid5.Columns[7].Title.Caption:='ОВЛ';
DBGrid5.Columns[8].Title.Caption:='Диагноз';
DBGrid5.Columns[9].Title.Caption:='Дата';
EF:
end;
procedure TForm1.Button2Click(Sender: TObject);
label
ef;
Var
quantity:integer;
astmN,rinoN,bronxN,traxN,allergN:integer;
a,b:String;
q1a,q1b,q2a,q2b,q3a,q3b,q4a,q4b:string;
astm,rino,bronx,trax,allerg:string;
begin
if Edit21.text='' then Begin ShowMessage('Введите год!');goto ef; end;
Astm:='Бронхиальная астма';Rino:='Ринофарингит';bronx:='Абструктивный бронхит';trax:='Трахеобронхит';allerg:='Аллергический ренит';
a:='01.01.'+Edit21.Text; b:='31.12.'+Edit21.Text;
q1a:='01.01.'+Edit21.Text; q1b:='01.04.'+Edit21.Text;
q2a:='01.04.'+Edit21.Text; q2b:='01.07.'+Edit21.Text;
q3a:='01.07.'+Edit21.Text; q3b:='01.10.'+Edit21.Text;
q4a:='01.01.'+Edit21.Text; q4b:='31.12.'+Edit21.Text;
StringGrid1.Cells[0,0]:=Edit21.text;
StringGrid1.Cells[0,1]:='1 квартал';
StringGrid1.Cells[0,2]:='2 квартал';
StringGrid1.Cells[0,3]:='3 квартал';
StringGrid1.Cells[0,4]:='4 квартал';
StringGrid1.Cells[0,5]:='Год';
StringGrid1.Cells[1,0]:=astm;
StringGrid1.Cells[2,0]:=rino;
StringGrid1.Cells[3,0]:=bronx;
StringGrid1.Cells[4,0]:=trax;
StringGrid1.Cells[5,0]:=allerg;
//заполнение таблицы
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q1a +'" AND "'+ q1b +'") AND Diagnos = "'+ astm +'"');
open;
end;
StringGrid1.Cells[1,1]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q2a +'" AND "'+ q2b +'") AND Diagnos = "'+ astm +'"');
open;
end;
StringGrid1.Cells[1,2]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q3a +'" AND "'+ q3b +'") AND Diagnos = "'+ astm +'"');
open;
end;
StringGrid1.Cells[1,3]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q4a +'" AND "'+ q4b +'") AND Diagnos = "'+ astm +'"');
open;
end;
StringGrid1.Cells[1,4]:=IntToStr(Query3.FieldValues['Count(*)']);
//---------------------------------------------------------------------------------------
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q1a +'" AND "'+ q1b +'") AND Diagnos = "'+ rino +'"');
open;
end;
StringGrid1.Cells[2,1]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q2a +'" AND "'+ q2b +'") AND Diagnos = "'+ rino +'"');
open;
end;
StringGrid1.Cells[2,2]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q3a +'" AND "'+ q3b +'") AND Diagnos = "'+ rino +'"');
open;
end;
StringGrid1.Cells[2,3]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q4a +'" AND "'+ q4b +'") AND Diagnos = "'+ rino +'"');
open;
end;
StringGrid1.Cells[2,4]:=IntToStr(Query3.FieldValues['Count(*)']);
//--------------------------------------------------------------------------------------------------------------------------------------
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q1a +'" AND "'+ q1b +'") AND Diagnos = "'+ bronx +'"');
open;
end;
StringGrid1.Cells[3,1]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q2a +'" AND "'+ q2b +'") AND Diagnos = "'+ bronx +'"');
open;
end;
StringGrid1.Cells[3,2]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q3a +'" AND "'+ q3b +'") AND Diagnos = "'+ bronx +'"');
open;
end;
StringGrid1.Cells[3,3]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q4a +'" AND "'+ q4b +'") AND Diagnos = "'+ bronx +'"');
open;
end;
StringGrid1.Cells[3,4]:=IntToStr(Query3.FieldValues['Count(*)']);
//----------------------------------------------------------------------------------------
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q1a +'" AND "'+ q1b +'") AND Diagnos = "'+ trax +'"');
open;
end;
StringGrid1.Cells[4,1]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q2a +'" AND "'+ q2b +'") AND Diagnos = "'+ trax +'"');
open;
end;
StringGrid1.Cells[4,2]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q3a +'" AND "'+ q3b +'") AND Diagnos = "'+ trax +'"');
open;
end;
StringGrid1.Cells[4,3]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q4a +'" AND "'+ q4b +'") AND Diagnos = "'+ trax +'"');
open;
end;
StringGrid1.Cells[4,4]:=IntToStr(Query3.FieldValues['Count(*)']);
//--------------------------------------------------------------------------------------------------------------------------------------
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q1a +'" AND "'+ q1b +'") AND Diagnos = "'+ allerg +'"');
open;
end;
StringGrid1.Cells[5,1]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q2a +'" AND "'+ q2b +'") AND Diagnos = "'+ allerg +'"');
open;
end;
StringGrid1.Cells[5,2]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q3a +'" AND "'+ q3b +'") AND Diagnos = "'+ allerg +'"');
open;
end;
StringGrid1.Cells[5,3]:=IntToStr(Query3.FieldValues['Count(*)']);
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ q4a +'" AND "'+ q4b +'") AND Diagnos = "'+ allerg +'"');
open;
end;
StringGrid1.Cells[5,4]:=IntToStr(Query3.FieldValues['Count(*)']);
//------------------------------------------------------------------------------------------------
//подсчет числа каждого из заболеваний и заполнение YearQ
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ a +'" AND "'+ b +'") AND Diagnos = "'+ astm +'"');
open;
end;
Table4.InsertRecord([astm,Query3.FieldValues['Count(*)']]);
astmN:=Query3.FieldValues['Count(*)'];
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ a +'" AND "'+ b +'") AND Diagnos = "'+ rino +'"');
open;
end;
Table4.InsertRecord([rino,Query3.FieldValues['Count(*)']]);
rinoN:=Query3.FieldValues['Count(*)'];
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ a +'" AND "'+ b +'") AND Diagnos = "'+ bronx +'"');
open;
end;
Table4.InsertRecord([trax,Query3.FieldValues['Count(*)']]);
bronxN:=Query3.FieldValues['Count(*)'];
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ a +'" AND "'+ b +'") AND Diagnos = "'+ trax +'"');
open;
end;
Table4.InsertRecord([bronx,Query3.FieldValues['Count(*)']]);
traxN:=Query3.FieldValues['Count(*)'];
with form1.Query3 do begin
Close;
Sql.Clear;
Sql.Add('SELECT Count(*)');
Sql.Add('FROM "TestInfo.db"');
Sql.Add('WHERE');
Sql.Add('(TestDate BETWEEN "'+ a +'" AND "'+ b +'") AND Diagnos = "'+ allerg +'"');
open;
end;
Table4.InsertRecord([allerg,Query3.FieldValues['Count(*)']]);
allergN:=Query3.FieldValues['Count(*)'];
//обновляем диаграмму
DBChart1.RefreshData;
quantity:=astmn+rinon+traxn+bronxn+allergn;
StringGrid1.Cells[1,5]:=floattostr(Round(astmn/(quantity/100)))+'%';
StringGrid1.Cells[2,5]:=floattostr(Round(rinon/(quantity/100)))+'%';
StringGrid1.Cells[3,5]:=floattostr(Round(bronxn/(quantity/100)))+'%';
StringGrid1.Cells[4,5]:=floattostr(Round(traxn/(quantity/100)))+'%';
StringGrid1.Cells[5,5]:=floattostr(Round(allergn/(quantity/100)))+'%';
ef:
end;
procedure TForm1.Edit22KeyPress(Sender: TObject; var Key: Char);
begin
case Key of #8,'1'..'3' : ;
else key := Chr(0);
end;
end;
end.
Размещено на Allbest.ru
Подобные документы
Проектирование программного модуля в среде программирования Borland Delphi 7.0. Схемы алгоритмов решения задач по темам "Символьные переменные и строки", "Массивы", "Работа с файлами", "Создание анимации". Реализация программного модуля, код программы.
отчет по практике [961,6 K], добавлен 21.04.2012Borland Delphi 7 как универсальный инструмент разработки, применяемый во многих областях программирования, функции: добавление информации об абитуриентах в базу данных, формирование отчетов. Рассмотрение и характеристика основных компонентов Delphi.
контрольная работа [3,6 M], добавлен 18.10.2012Возможности среды программирования delphi при разработке приложения с визуальным интерфейсом. Разработка спецификации программного обеспечения и на ее основе кода программного продукта. Отладка программы "трассировкой", ее тестирование и оптимизация.
курсовая работа [501,4 K], добавлен 07.12.2016Рассмотрение системы трехмерного твердотельного моделирования. Анализ средств программирования, информационное обеспечение и описание объектной модели Компас-3d. Описание алгоритма программы в среде Borland Delphi 7 и составление инструкции пользователя.
дипломная работа [1,7 M], добавлен 03.07.2012Изучение основ программирования и создание полноценного приложения в среде программирования Delphi. Разработка эскизного и технического проектов программы. Внедрение выполнения программы. Разработка рабочего проекта, спецификация и текст программы.
курсовая работа [560,1 K], добавлен 18.07.2012Характеристика системы программирования. Главные составные части Delphi. Интерфейс программного приложения. Результаты работы программы. Руководство системного программиста и оператора. Язык программирования Delphi, среда компилятора Borland 7.0.
курсовая работа [1,6 M], добавлен 29.05.2013Эффективные средства разработки программного обеспечения. Технология визуального проектирования и событийного программирования. Конструирование диалоговых окон и функций обработки событий. Словесный алгоритм и процедуры программы Borland Delphi 7 Studio.
дипломная работа [660,2 K], добавлен 21.05.2012Контроль знаний как форма педагогической деятельности. Особенности и классификация тестовых заданий. Разработка обучающе-контролирующей программы для контроля знаний обучающихся в среде программирования Borland Delphi 7.0 под управлением Windows XP.
курсовая работа [172,5 K], добавлен 24.08.2016Цель и основные составные части автоматизации. Характеристика ее объекта. Описание концептуальной модели предметной области. Обоснование выбора программного обеспечения. Разработка программы в среде Borland Delphi 7. Общий алгоритм работы приложения.
курсовая работа [368,6 K], добавлен 21.05.2015Возможности среды программирования delphi при разработке приложения с визуальным интерфейсом. Отладка программных модулей с использованием специализированных программных средств. Тестирование программного обеспечения. Оптимизация программного кода.
курсовая работа [974,0 K], добавлен 21.12.2016