Дипломная работа: Автоматизация взаимоотношений с клиентами спортивного комплекса «Искра»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
112
DM.Group2.Open;
DM.RvProject4.ExecuteReport('zana');
DM.Group2.Close;
end;
end.
unit Unit2;
interface
uses
SysUtils, Classes, cxGridCustomPopupMenu, cxGridPopupMenu, DB, ADODB,
Dialogs, ExtDlgs,Controls, Menus, RpRave, RpDefine, RpCon, RpConDS,
RpRenderText, RpRenderRTF, RpRenderHTML, RpRender, RpRenderPDF;
type
TDM = class(TDataModule)
ADOC: TADOConnection;
Q1zanyatiya: TADOQuery;
DS1Zanyatiya: TDataSource;
Q2zapis: TADOQuery;
Q3posetiteli: TADOQuery;
Q4trenera: TADOQuery;
Q5yslugi: TADOQuery;
DS2Zapis: TDataSource;
DS3Posetiteli: TDataSource;
DS4Trenera: TDataSource;
DS5Yslugi: TDataSource;
113
Q4treneraFoto: TBlobField;
Q4treneraKod_trenera: TAutoIncField;
Q4treneraKod_yclygi: TIntegerField;
Q4treneraFamiliya_trenera: TStringField;
Q4treneraImya_trenera: TStringField;
Q4treneraOtchestvo_trenera: TStringField;
Q4treneraDate_trenera: TDateTimeField;
Q4treneraKvalification: TStringField;
Q3posetiteliKod_posetitelya: TAutoIncField;
Q3posetiteliFamiliya: TStringField;
Q3posetiteliImya: TStringField;
Q3posetiteliOtchestvo: TStringField;
Q3posetiteliDate: TDateTimeField;
Q3posetiteliTelefon: TIntegerField;
Q2zapisKod_posetitelya: TIntegerField;
Q2zapisNomer_zapisy: TAutoIncField;
Q2zapisKod_zanyztiya: TIntegerField;
Q1zanyatiyaKod_zanyztiya: TAutoIncField;
Q1zanyatiyaKod_trenera: TIntegerField;
Q1zanyatiyanachalo_zanyatiya: TDateTimeField;
Q1zanyatiyaokonchanie_zanyatiya: TDateTimeField;
Q1zanyatiyastoimost_zanyatiya: TIntegerField;
Q1zanyatiyaMax_chelovek: TIntegerField;
Q5yslugiKod_yclygi: TAutoIncField;
Q5yslugiNaim_yclygi: TStringField;
Tran: TADOQuery;
114
PRIM: TADOQuery;
DSPRIM: TDataSource;
PRIMFAM: TStringField;
PRIMKod_posetitelya: TIntegerField;
PRIMNomer_zapisy: TAutoIncField;
PRIMKod_zanyztiya: TIntegerField;
Q1zanyatiyaObS: TIntegerField;
Q3posetiteliFIO: TStringField;
IND: TADOQuery;
Find: TADOQuery;
DSFind: TDataSource;
RvRenderPDF1: TRvRenderPDF;
RvRenderHTML1: TRvRenderHTML;
RvRenderRTF1: TRvRenderRTF;
RvRenderText1: TRvRenderText;
RvProject1: TRvProject;
RvDataSetConnection1: TRvDataSetConnection;
RvDataSetConnection2: TRvDataSetConnection;
RvProject2: TRvProject;
Group: TADOQuery;
RvDataSetConnection3: TRvDataSetConnection;
RvProject3: TRvProject;
RvDataSetConnection4: TRvDataSetConnection;
Group2: TADOQuery;
RvProject4: TRvProject;
procedure Q2zapisAfterOpen(DataSet: TDataSet);
115
procedure Q2zapisAfterInsert(DataSet: TDataSet);
procedure Q3posetiteliPostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
procedure Q1zanyatiyaBeforePost(DataSet: TDataSet);
procedure Q1zanyatiyaAfterPost(DataSet: TDataSet);
procedure Q1zanyatiyaPostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
procedure PRIMAfterInsert(DataSet: TDataSet);
procedure Q1zanyatiyaCalcFields(DataSet: TDataSet);
procedure Q3posetiteliCalcFields(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DM: TDM;
Dobavit_v_T2:boolean;
implementation
uses Unit1;
{$R *.dfm}
procedure TDM.Q2zapisAfterOpen(DataSet: TDataSet);
begin
if not (Q3posetiteli.State in [dsInsert,dsEdit]) then begin
Q1zanyatiya.Close;
Q1zanyatiya.SQL.Clear;
116
Q1zanyatiya.SQL.Add('select * from Zanyatiya');
Q1zanyatiya.SQL.Add('where Kod_zanyztiya=ANY');
Q1zanyatiya.SQL.Add('(');
Q1zanyatiya.SQL.Add('select Kod_zanyztiya from Zapis');
if Form1.Filter.ItemIndex=1 then
if NOT Q3posetiteli.IsEmpty then
Q1zanyatiya.SQL.Add('where
Kod_posetitelya='+Q3posetiteli.FieldByName('Kod_posetitelya').AsString);
Q1zanyatiya.SQL.Add(')');
Q1zanyatiya.Open;
end
end;
procedure TDM.Q2zapisAfterInsert(DataSet: TDataSet);
begin
with DM do begin
Q2zapis.FieldByName('kod_zanyztiya').AsVariant:=Q1zanyatiya.FieldByName('kod_zanyztiya')
.AsVariant;
Q2zapis.FieldByName('kod_posetitelya').AsVariant:=Q3posetiteli.FieldByName('kod_posetitely
a').AsVariant;
end;
end;
procedure TDM.Q3posetiteliPostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
MessageDlg('Ошибка. Проверьте поля заполнения', mtError,[mbOK],0);
if MessageDlg('Отменить изменения?',
Источник: https://baza.diplomsite.ru/previewfile/655