📄 charge_report_400v_f.pas
字号:
unit Charge_Report_400V_F;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, DBTables, Grids, DBGrids, StdCtrls, ComCtrls, ExtCtrls, ppDB,
ppDBPipe, ppParameter, ppVar, ppBands, ppReport, ppStrtch, ppSubRpt,
ppCtrls, ppPrnabl, ppClass, ppCache, ppComm, ppRelatv, ppProd, ppEndUsr;
type
TF_Charge_Report_400V = class(TForm)
PC_Charge: TPageControl;
Ts_400V: TTabSheet;
DBG_400V: TDBGrid;
Panel1: TPanel;
Panel2: TPanel;
Bt_Close: TButton;
Panel3: TPanel;
Bt_Calc: TButton;
Bt_Print: TButton;
RB_Charged: TRadioButton;
Rb_UnCharged: TRadioButton;
Rb_All: TRadioButton;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
DTP_Start: TDateTimePicker;
Label3: TLabel;
DTP_End: TDateTimePicker;
CB_AllReceiver: TCheckBox;
R_400V: TppReport;
ppHeaderBand1: TppHeaderBand;
ppLabel1: TppLabel;
ppLabel2: TppLabel;
ppLabel3: TppLabel;
ppLabel4: TppLabel;
ppLabel5: TppLabel;
ppLabel8: TppLabel;
ppLabel9: TppLabel;
ppLine2: TppLine;
ppLine3: TppLine;
ppLine4: TppLine;
ppLine5: TppLine;
ppLine6: TppLine;
ppLine12: TppLine;
ppDetailBand1: TppDetailBand;
ppDBText1: TppDBText;
ppDBText2: TppDBText;
ppDBText3: TppDBText;
ppDBText4: TppDBText;
ppDBText5: TppDBText;
ppDBText8: TppDBText;
ppLine1: TppLine;
ppLine7: TppLine;
ppLine8: TppLine;
ppLine9: TppLine;
ppLine10: TppLine;
ppLine11: TppLine;
ppFooterBand1: TppFooterBand;
ppSummaryBand1: TppSummaryBand;
ppDBCalc1: TppDBCalc;
ppDBCalc2: TppDBCalc;
ppDBCalc3: TppDBCalc;
ppDBCalc4: TppDBCalc;
ppDBCalc5: TppDBCalc;
ppLine13: TppLine;
ppLine14: TppLine;
ppLine15: TppLine;
ppLine16: TppLine;
ppLine17: TppLine;
ppLabel6: TppLabel;
ppParameterList1: TppParameterList;
DBP_400V: TppDBPipeline;
D_400V: TppDesigner;
Bt_Edit: TButton;
Q_400V: TQuery;
Ds_400V: TDataSource;
procedure Bt_CalcClick(Sender: TObject);
procedure Bt_CloseClick(Sender: TObject);
procedure Bt_PrintClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Bt_EditClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
F_Charge_Report_400V: TF_Charge_Report_400V;
implementation
uses
CommSmdljf, CommFee;
{$R *.DFM}
procedure TF_Charge_Report_400V.Bt_CalcClick(Sender: TObject);
Var
StartDate, EndDate: String[10];
SqlStr: String;
begin
StartDate := DateToStr(DTP_Start.Date);
EndDate := DateToStr(DTP_End.Date);
Q_400V.Close();
//ShowMessage('Wait...');
Q_400V.SQL.Clear();
Q_400V.SQL.Add('Select H.f_Used_Amount As f_FeeAmount');
Q_400V.SQL.Add(', V.f_Village_Name || H.f_Position As f_Position');
Q_400V.SQL.Add(', H.*');
Q_400V.SQL.Add(', H.f_Used_Amount - H.f_Last_Balance As f_Should_Receive');
Q_400V.SQL.Add(' From Tb_House H');
Q_400V.SQL.Add(' Join Tb_Village V On H.f_Village_No = V.f_Village_No');
SqlStr := '';
If RB_Charged.Checked Then//已缴费统计
Begin
SqlStr := Format(' f_Charge_Date Between "%s" And "%s"',[StartDate, EndDate]);
If Not CB_AllReceiver.Checked Then//不是全部收款人
SqlStr := SqlStr + Format(' And f_Receiver = "%s"',[LoginNo]);
End
Else If RB_UnCharged.Checked Then//未交费用户统计
SqlStr := ' f_Charge_Date Is Null'
Else If RB_All.Checked Then//全部用户
SqlStr := '';
If SqlStr <> '' Then
Begin
SqlStr := ' Where ' + SqlStr;
Q_400V.SQL.Add(SqlStr);
End;
Q_400V.SQL.Add(' Order By f_House_No');
Q_400V.Open();
end;
procedure TF_Charge_Report_400V.Bt_CloseClick(Sender: TObject);
begin
Close();
end;
procedure TF_Charge_Report_400V.Bt_PrintClick(Sender: TObject);
begin
R_400V.Template.FileName := gRootPath + '400V收费明细.RTM';
R_400V.Template.LoadFromFile();
R_400V.Print();
end;
procedure TF_Charge_Report_400V.FormCreate(Sender: TObject);
begin
DTP_Start.DateTime := Now();
DTP_End.DateTime := Now();
end;
procedure TF_Charge_Report_400V.Bt_EditClick(Sender: TObject);
begin
R_400V.Template.FileName := gRootPath + '400V收费明细.RTM';
R_400V.Template.LoadFromFile();
D_400V.ShowModal();
If R_400V.Modified Then
If Application.MessageBox('报表已被修改, 存储报表?','系统提示',MB_YESNO) = IDYES Then
R_400V.Template.SaveToFile();
end;
procedure TF_Charge_Report_400V.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
MyReleaseForm(TForm(F_Charge_Report_400V));
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -