Диплом: Автоматизация учета посещений клиентов на примере предприятия «Медицинский центр "Семейный доктор"»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
98
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, Grids, DBGrids, Buttons, ExtCtrls, Mask, DB;
type
TFmAdrEdit = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DBLookupComboBox2: TDBLookupComboBox;
DBLookupComboBox3: TDBLookupComboBox;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
DBLookupComboBox1: TDBLookupComboBox;
DBEdit1: TDBEdit;
DBNavigator1: TDBNavigator;
DBNavigator2: TDBNavigator;
DBNavigator3: TDBNavigator;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
BitBtn1: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FmAdrEdit: TFmAdrEdit;
implementation
99
uses UnDM;
{$R *.dfm}
procedure TFmAdrEdit.BitBtn1Click(Sender: TObject);
begin
if (DM.TbMedK.State=dsEdit) or (DM.TbMedK.State=dsInsert) then
begin
DM.TbMedK.FieldByName('уч').AsInteger :=
DM.TbUch.FieldByName('код_участка').AsInteger;
DM.TbMedK.FieldByName('ул').AsInteger :=
DM.TbUl.FieldByName('код_улицы').AsInteger;
DM.TbMedK.FieldByName('дм').AsInteger :=
DM.TbDom.FieldByName('код_дом').AsInteger;
DM.TbMedK.Post;
end;
end;
end.
unit UnDate;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBCtrls, StdCtrls, Buttons, ComCtrls, Grids, DBGrids, ComObj;
type
TFmDate = class(TForm)
DBLookupComboBox1: TDBLookupComboBox;
Label1: TLabel;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
100
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
BitBtn1: TBitBtn;
CheckBox1: TCheckBox;
procedure BitBtn1Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FmDate: TFmDate;
implementation
uses UnDM;
{$R *.dfm}
procedure TFmDate.BitBtn1Click(Sender: TObject);
var Excel: Variant;
WorkbookName: string;
PosInc,i : integer;
begin
if CheckBox1.Checked = false then
begin
if DBLookupComboBox1.Text <> '' then
begin
DM.QDate.Active := false;
DM.QDate.Parameters[0].Value := DBLookupComboBox1.KeyValue;
101
DM.QDate.Parameters[1].Value := DateToStr(DateTimePicker1.Date);
DM.QDate.Parameters[2].Value := DateToStr(DateTimePicker2.Date);
//.QDate.SQL
DM.QDate.Active := true;
//Выгрузка данных в Excel
WorkbookName := GetCurrentDir + '\Приемы.xlt';
Excel := CreateOleObject('Excel.Application');
try
Excel.Workbooks.Open(WorkbookName);
//Экспорт данных из таблиц БД:
Excel.WorkSheets[1].Select;
DM.QDate.First;
PosInc := 6; //Начальная позиция для счетчика
Excel.Cells[2,3] := DateToStr(DateTimePicker1.Date);
Excel.Cells[2,5] := DateToStr(DateTimePicker2.Date);
Excel.Cells[3,3] := DM.QDate.FieldByName('Фамилия').AsString;
for i:=0 to DM.QDate.RecordCount-1 do
begin
//Вывод данных в Excel
if (i <> DM.QDate.RecordCount-1) then
begin
Excel.Rows.Item[PosInc+1].Select;
Excel.Selection.Insert;
Excel.Rows.Item[PosInc].Select;
Excel.Selection.Copy;
Excel.Rows.Item[PosInc+1].Select;
102
Excel.ActiveSheet.Paste;
Excel.Application.CutCopyMode := False;
end;
Excel.Cells[PosInc,1] := IntToStr(i+1);
Excel.Cells[PosInc,2] := FormatDateTime('dd.mm.yyyy',
DM.QDateAll.FieldByName('Дата').AsDateTime);// + '/'+FormatDateTime('hh:nn',
DM.QDate.FieldByName('Время').AsDateTime);
Excel.Cells[PosInc,3] := DM.QDate.FieldByName('Фам').AsString ;
Excel.Cells[PosInc,4] := FormatDateTime('dd.mm.yyyy',
DM.QDateAll.FieldByName('Дата_рождения').AsDateTime);
Excel.Cells[PosInc,5] := DM.QDate.FieldByName('Серия_полиса').AsString + ' '+
DM.QDate.FieldByName('НОмер_страхового_полиса').AsString;
PosInc := PosInc +1;
DM.QDate.Next;
end; //for
Excel.WorkSheets[1].Select;
Excel.Visible := True;
Excel.WorkSheets[1].PrintPreview;
except
Excel.Quit;
end;
end
else
begin
ShowMessage('Вы не выбрали врача!');
exit;
end
end
else
begin
103
DM.QDateAll.Active := false;
DM.QDateAll.Parameters[0].Value := DateToStr(DateTimePicker1.Date);
DM.QDateAll.Parameters[1].Value := DateToStr(DateTimePicker2.Date);
//.QDate.SQL
DM.QDateAll.Active := true;
//Выгрузка данных в Excel
WorkbookName := GetCurrentDir + '\Приемы-все.xlt';
Excel := CreateOleObject('Excel.Application');
try
Excel.Workbooks.Open(WorkbookName);
//Экспорт данных из таблиц БД:
Excel.WorkSheets[1].Select;
DM.QDateAll.First;
PosInc := 6; //Начальная позиция для счетчика
Excel.Cells[2,3] := DateToStr(DateTimePicker1.Date);
Excel.Cells[2,5] := DateToStr(DateTimePicker2.Date);
Excel.Cells[3,3] := '';
for i:=0 to DM.QDateAll.RecordCount-1 do
begin
//Вывод данных в Excel
if (i <> DM.QDateAll.RecordCount-1) then
begin
Excel.Rows.Item[PosInc+1].Select;
Excel.Selection.Insert;
104
Excel.Rows.Item[PosInc].Select;
Excel.Selection.Copy;
Excel.Rows.Item[PosInc+1].Select;
Excel.ActiveSheet.Paste;
Excel.Application.CutCopyMode := False;
end;
Excel.Cells[PosInc,1] := IntToStr(i+1);
Excel.Cells[PosInc,2] := FormatDateTime('dd.mm.yyyy',
DM.QDateAll.FieldByName('Дата').AsDateTime);// + '/'+FormatDateTime('hh:nn',
DM.QDateAll.FieldByName('Время').AsDateTime);
Excel.Cells[PosInc,3] := DM.QDateAll.FieldByName('Фам').AsString ;
Excel.Cells[PosInc,4] := FormatDateTime('dd.mm.yyyy',
DM.QDateAll.FieldByName('Дата_рождения').AsDateTime);
Excel.Cells[PosInc,5] := DM.QDateAll.FieldByName('Серия_полиса').AsString +
' '+ DM.QDateAll.FieldByName('НОмер_страхового_полиса').AsString;
Excel.Cells[PosInc,6] := DM.QDateAll.FieldByName('Фамилия').AsString ;
PosInc := PosInc +1;
DM.QDateAll.Next;
end; //for
Excel.WorkSheets[1].Select;
Excel.Visible := True;
Excel.WorkSheets[1].PrintPreview;
except
Excel.Quit;
end;
end;
end;
procedure TFmDate.CheckBox1Click(Sender: TObject);
begin
105
if CheckBox1.Checked then
DBLookupComboBox1.Enabled := false
else
DBLookupComboBox1.Enabled :=true;
end;
end.

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)