finace.pas
来自「一个非常好的桑拿浴管理系统」· PAS 代码 · 共 2,024 行 · 第 1/5 页
PAS
2,024 行
SQL.Add(' FROM sny_reg ') ;
SQL.Add(' where not (reg_out_op is null) ');
SQL.Add(' And reg_time_out>=:StartDTxy');
SQL.Add(' And reg_time_out<=:EndDTxy');
SQL.Add(' and reg_arrearage = 0 ');
SQL.Add(' group by reg_bathe_kind');
SQL.Add(' union');
SQL.Add(' SELECT ser_kind as a,sum(ser_total) b');//服务
SQL.Add(' FROM sny_serve ') ;
SQL.Add(' where not (ser_end_op is null) ');
SQL.Add(' And ser_end_time>=:StartDTfw');
SQL.Add(' And ser_end_time<=:EndDTfw');
SQL.Add(' and ser_arrearage = 0 ');
SQL.Add(' group by ser_kind');
SQL.Add(' union');
SQL.Add(' SELECT comm_kind as a,sum(commticket_price) b');//月票
SQL.Add(' FROM sny_commticket ') ;
//SQL.Add(' where not (ser_end_op is null) ');
SQL.Add(' where comm_selltime>=:StartDTyp');
SQL.Add(' And comm_selltime<=:EndDTyp');
//SQL.Add(' and ser_arrearage = 0 ');
SQL.Add(' group by comm_kind');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Parameters.ParamByName('StartDTxy').Value := StartDT;
Parameters.ParamByName('EndDTxy').Value := EndDT;
Parameters.ParamByName('StartDTfw').Value := StartDT;
Parameters.ParamByName('EndDTfw').Value := EndDT;
Parameters.ParamByName('StartDTyp').Value := StartDT;
Parameters.ParamByName('EndDTyp').Value := EndDT;
open;
if IsEmpty then
begin
Application.MessageBox('查询完毕!','提示',Mb_OK+Mb_IconInformation);
Exit;
end;
While not Eof do
begin
Cells[0,RowCount - 1]:= FieldByName('a').AsString ;
Cells[1,RowCount - 1]:= formatfloat('0.00',FieldByName('b').AsFloat);
RowCount := RowCount + 1;
next;
end ;
FLTJheji:=0;
if not(recordCount = 0) then
begin
for i:=1 to RowCount-2 do
begin
FLTJheji:=FLTJheji+StrToFloat(Cells[1,i]);
end;
Cells[0,RowCount-1] := '合计' ;
Cells[1,RowCount-1] := FormatFloat('0.00',FLTJheji);
end;
end ;
with aqr_sys,SGGRSFNO do //师傅明细 (个人)未结算
begin
GRL_SGClear(SGGRSFNO,0,5,1,SGGRSFNO.RowCount-1); //删除不加隐含列的数据 StingGrid
Close;
SQL.Clear;
// 师傅代号 服务名称 服务单价 数量 总额
SQL.Add(' Select craftsman_serial,ser_name,ser_price,Count(ser_kind) as amount,Sum(ser_total) as total');
SQL.Add(' From sny_serve,sny_craftsman');
//SQL.Add(' Where ser_craftsman_sym = '''+CoxID.Text+'''');
SQL.Add(' Where ser_craftsman_sym = '''+CoxID.Text+'''');
SQL.Add(' And ser_craftsman_sym = craftsman_serial');
SQL.Add(' And ser_end_time>=:StartDT');
SQL.Add(' And ser_end_time<=:EndDT');
SQL.Add(' And not (ser_end_op is null) ');
SQL.Add(' And ser_arrearage != 0 ');
SQL.Add(' Or((ser_end_op is null) ');
SQL.Add(' And ser_craftsman_sym = '''+CoxID.Text+'''');
SQL.Add(' And ser_craftsman_sym = craftsman_serial');
SQL.Add(' And ser_end_time>=:StartDT');
SQL.Add(' And ser_end_time<=:EndDT');
SQL.Add(' And ser_arrearage = 0) ');
Sql.Add(' group by craftsman_serial,ser_name,ser_price,ser_kind');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open;
if IsEmpty then
begin
Application.MessageBox('查询完毕!','提示',Mb_OK+Mb_IconInformation);
Exit;
end;
While not Eof do
begin
Cells[0,RowCount - 1]:= FieldByName('craftsman_serial').AsString ; //师傅代号
Cells[1,RowCount - 1]:= FieldByName('ser_name').AsString ; //服务名称
Cells[2,RowCount - 1]:= formatfloat('0.00',FieldByName('ser_price').AsFloat) ; //服务单价
Cells[3,RowCount - 1]:= FieldByName('amount').AsString ; //数量
Cells[4,RowCount - 1]:= formatfloat('0.00',FieldByName('total').AsFloat) ; //总额
RowCount := RowCount + 1;
Next;
end ;
//if not(recordCount = 0) then
RowCount := RowCount - 1;
//end;
FRM_HEJIZG ;
end;
{with aqr_sys do
begin
Rt1 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(arre_ware_total) arre_ware_total');
SQL.Add(' FROM sny_arrearage_consume');
SQL.Add(' where arre_checkout_time>=:StartDT and arre_checkout_time<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt1 := FieldByName('arre_ware_total').AsFloat;
end ;
with aqr_sys do
begin
Rt2 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(arre_price) arre_price');
SQL.Add(' FROM sny_arrearage_reg');
SQL.Add(' where arre_reg_time_out>=:StartDT and arre_reg_time_out<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt2 := FieldByName('arre_price').AsFloat;
end ;
with aqr_sys do
begin
Rt3 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(arre_ser_price) arre_ser_price');
SQL.Add(' FROM sny_arrearage_service');
SQL.Add(' where arre_end_time>=:StartDT and arre_end_time<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt3 := FieldByName('arre_ser_price').AsFloat;
end ;
with aqr_sys do
begin
Rt4 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(box_lprice) box_lprice');
SQL.Add(' FROM sny_box_ldetail');
SQL.Add(' where box_lend>=:StartDT and box_lend<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt4 := FieldByName('box_lprice').AsFloat;
end ;
with aqr_sys do
begin
Rt5 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(commticket_price) commticket_price');
SQL.Add(' FROM sny_commticket');
SQL.Add(' where comm_selltime>=:StartDT and comm_selltime<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt5 := FieldByName('commticket_price').AsFloat;
end ;
with aqr_sys do
begin
Rt6 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(cons_total) cons_total');
SQL.Add(' FROM sny_consume');
SQL.Add(' where cons_check_time>=:StartDT and cons_check_time<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt6 := FieldByName('cons_total').AsFloat;
end ;
with aqr_sys do
begin
Rt7 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(det_total) det_total');
SQL.Add(' FROM sny_detail');
SQL.Add(' where det_sell_time>=:StartDT and det_sell_time<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt7 := FieldByName('det_total').AsFloat;
end ;
with aqr_sys do
begin
Rt8 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(reg_real_price) reg_real_price');
SQL.Add(' FROM sny_reg');
SQL.Add(' where reg_time_out>=:StartDT and reg_time_out<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt8 := FieldByName('reg_real_price').AsFloat;
end;
with aqr_sys do
begin
Rt9 := 0 ;
Close ;
SQL.Clear ;
//
SQL.Add(' SELECT Sum(ser_total) ser_total');
SQL.Add(' FROM sny_serve');
SQL.Add(' where ser_end_time>=:StartDT and ser_end_time<=:EndDT');
Parameters.ParamByName('StartDT').Value := StartDT;
Parameters.ParamByName('EndDT').Value := EndDT;
Open ;
if IsEmpty then
Exit;
Rt9 := FieldByName('ser_total').AsFloat;
end ;
Result := Rt1 + Rt2 + Rt3 + Rt4 + Rt5 + Rt6 + Rt7 + Rt8 + Rt9 ;
LabeledEdit5.Text := FormatFloat('0.00',Result); }
//end;
end;
procedure Tfm_finace.BitBtn19Click(Sender: TObject);
begin
try
FrmWPMXR := TFrmWPMXR.Create(Application);
FrmWPMXR.Prepare;
FrmWPMXR.QRLabel21.Caption := '/'+intToStr(FrmWPMXR.QRPrinter.PageCount); //总页码数
FrmWPMXR.QRLabel20.Caption := sny_title1; //公司名称
FrmWPMXR.QRLabel17.Caption := formatDateTime('yyyy-mm-dd',date); //打印时间
FrmWPMXR.QRLabel19.Caption := sny_user; //打印人
FrmWPMXR.Preview ;
finally
FrmWPMXR.Free;
end;
end;
procedure Tfm_finace.BitBtn3Click(Sender: TObject);
begin
try
FrmFWMXR := TFrmFWMXR.Create(Application);
FrmFWMXR.Prepare;
FrmFWMXR.QRLabel21.Caption := '/'+intToStr(FrmFWMXR.QRPrinter.PageCount); //总页码数
FrmFWMXR.QRLabel20.Caption := sny_title1; //公司名称
FrmFWMXR.QRLabel17.Caption := formatDateTime('yyyy-mm-dd',date); //打印时间
FrmFWMXR.QRLabel19.Caption := sny_user; //打印人
FrmFWMXR.Preview ;
finally
FrmFWMXR.Free;
end;
end;
procedure Tfm_finace.BitBtn5Click(Sender: TObject);
begin
try
FrmSGLSPR := TFrmSGLSPR.Create(Application);
FrmSGLSPR.Prepare;
FrmSGLSPR.QRLabel21.Caption := '/'+intToStr(FrmSGLSPR.QRPrinter.PageCount); //总页码数
FrmSGLSPR.QRLabel20.Caption := sny_title1; //公司名称
FrmSGLSPR.QRLabel17.Caption := formatDateTime('yyyy-mm-dd',date); //打印时间
FrmSGLSPR.QRLabel19.Caption := sny_user; //打印人
FrmSGLSPR.Preview ;
finally
FrmSGLSPR.Free;
end;
end;
procedure Tfm_finace.BitBtn6Click(Sender: TObject);
begin
try
FrmSGYPR := TFrmSGYPR.Create(Application);
FrmSGYPR.Prepare;
FrmSGYPR.QRLabel21.Caption := '/'+intToStr(FrmSGYPR.QRPrinter.PageCount); //总页码数
FrmSGYPR.QRLabel20.Caption := sny_title1; //公司名称
FrmSGYPR.QRLabel17.Caption := formatDateTime('yyyy-mm-dd',date); //打印时间
FrmSGYPR.QRLabel19.Caption := sny_user; //打印人
FrmSGYPR.Preview ;
finally
FrmSGYPR.Free;
end;
end;
procedure Tfm_finace.BitBtn7Click(Sender: TObject);
begin
try
FrmCSXMXR := TFrmCSXMXR.Create(Application);
FrmCSXMXR.Prepare;
FrmCSXMXR.QRLabel21.Caption := '/'+intToStr(FrmCSXMXR.QRPrinter.PageCount); //总页码数
FrmCSXMXR.QRLabel20.Caption := sny_title1; //公司名称
FrmCSXMXR.QRLabel17.Caption := formatDateTime('yyyy-mm-dd',date); //打印时间
FrmCSXMXR.QRLabel19.Caption := sny_user; //打印人
FrmCSXMXR.Preview ;
finally
FrmCSXMXR.Free;
end;
end;
procedure Tfm_finace.BitBtn8Click(Sender: TObject);
begin
try
FrmSGQTSFR := TFrmSGQTSFR.Create(Application);
FrmSGQTSFR.Prepare;
FrmSGQTSFR.QRLabel21.Caption := '/'+intToStr(FrmSGQTSFR.QRPrinter.PageCount); //总页码数
FrmSGQTSFR.QRLabel20.Caption := sny_title1; //公司名称
FrmSGQTSFR.QRLabel17.Caption := formatDateTime('yyyy-mm-dd',date); //打印时间
FrmSGQTSFR.QRLabel19.Caption := sny_user; //打印人
FrmSGQTSFR.Preview ;
finally
FrmSGQTSFR.Free;
end;
end;
procedure Tfm_finace.BitBtn9Click(Sender: TObject);
begin
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?