📄 ufrmtrybalance.pas
字号:
unit UfrmTryBalance;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, U_print, DosMove, StdCtrls, Buttons, Mask, DB, DBClient,
Provider, ADODB, QuickRpt, QRCtrls, ExtCtrls;
type
TfrmDepositRep = class(TF_print)
Label24: TLabel;
EdtStartyymmdd: TMaskEdit;
Label5: TLabel;
EdtEndyymmdd: TMaskEdit;
Label9: TLabel;
EdtACC_NO: TEdit;
Label23: TLabel;
Edtper_na: TEdit;
ADODataSet1: TADODataSet;
DataSetProvider1: TDataSetProvider;
ClientDataSet1: TClientDataSet;
ClientDataSet1ACC_NO: TStringField;
ClientDataSet1Cdate: TStringField;
ClientDataSet1serial_no: TStringField;
ClientDataSet1IN_OR_OUT: TStringField;
ClientDataSet1IN_money: TBCDField;
ClientDataSet1OUT_money: TBCDField;
ClientDataSet1add_date: TStringField;
ClientDataSet1add_user: TStringField;
ClientDataSet1edit_date: TStringField;
ClientDataSet1edit_user: TStringField;
ClientDataSet1rem_money: TBCDField;
ClientDataSet1Cre_man: TStringField;
ClientDataSet1Check_mk: TStringField;
ClientDataSet1Check_man: TStringField;
ClientDataSet1remark: TStringField;
ClientDataSet1Per_na: TStringField;
ClientDataSet1fac_no: TStringField;
ClientDataSet1sec_no: TStringField;
ClientDataSet1fac_nm: TStringField;
ClientDataSet1sec_nm: TStringField;
QuickRep1: TQuickRep;
QRBand1: TQRBand;
QRLabel1: TQRLabel;
QRLabel2: TQRLabel;
QRLabelPer_na: TQRLabel;
QRLabel6: TQRLabel;
QRSysData1: TQRSysData;
QRLabel7: TQRLabel;
QRLabel8: TQRLabel;
QRLabel10: TQRLabel;
QRLabel11: TQRLabel;
QRLabel12: TQRLabel;
QRLabel13: TQRLabel;
QRLabel14: TQRLabel;
QRShape1: TQRShape;
QRShape5: TQRShape;
QRShape6: TQRShape;
QRShape7: TQRShape;
QRShape8: TQRShape;
QRShape9: TQRShape;
QRShape11: TQRShape;
QRShape4: TQRShape;
QRLabelAcc_no: TQRLabel;
QRBand2: TQRBand;
QRShape17: TQRShape;
QRShape18: TQRShape;
QRShape19: TQRShape;
QRShape20: TQRShape;
QRShape21: TQRShape;
QRShape22: TQRShape;
QRShape23: TQRShape;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
QRDBText6: TQRDBText;
QRLabel3: TQRLabel;
QRSysData2: TQRSysData;
QRShape2: TQRShape;
QRShape3: TQRShape;
QRLabel5: TQRLabel;
QRShape10: TQRShape;
QRLabel9: TQRLabel;
QRShape12: TQRShape;
QRShape13: TQRShape;
QRShape14: TQRShape;
QRDBText7: TQRDBText;
QRLabelfac_nm: TQRLabel;
QRLabel16: TQRLabel;
QRLabel17: TQRLabel;
QRLabelsac_nm: TQRLabel;
QRLabel19: TQRLabel;
QRLabelCre_date: TQRLabel;
QRGroup1: TQRGroup;
ClientDataSet1Cre_date: TStringField;
QRBand3: TQRBand;
QRLabel4: TQRLabel;
QRLabel15: TQRLabel;
QRLabelOUT_money: TQRLabel;
QRLabelIN_money: TQRLabel;
QRLabelrem_money: TQRLabel;
procedure QRBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
procedure BitBtn1Click(Sender: TObject);
procedure EdtACC_NOKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure QRBand2BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmDepositRep: TfrmDepositRep;
firstfrm:boolean;
implementation
{$R *.dfm}
procedure TfrmDepositRep.QRBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin
inherited;
QRLabelPer_na.Caption :=self.ClientDataSet1Per_na.Value ;
QRLabelAcc_no.Caption :=self.ClientDataSet1ACC_NO.Value ;
QRLabelfac_nm.Caption :=self.ClientDataSet1fac_nm.Value ;
QRLabelsac_nm.Caption :=self.ClientDataSet1sec_nm.Value ;
QRLabelCre_date.Caption :=self.ClientDataSet1Cre_date.Value ;
end;
procedure TfrmDepositRep.BitBtn1Click(Sender: TObject);
var sqlstr:string;
begin
inherited;
try
Screen.Cursor:=crHourGlass;
sqlstr :='';
if EdtStartyymmdd.text <>' - - ' then
sqlstr := sqlstr+' and Cdate>='''+ EdtStartyymmdd.Text +'''';
if EdtEndyymmdd.text <>' - - ' then
sqlstr := sqlstr+' and Cdate<='''+ EdtEndyymmdd.Text +'''';
if EdtACC_NO.Text <>'' then
sqlstr :=sqlstr +' and Acc_no='''+edtAcc_no.Text +'''' ;
sqlstr := copy(sqlstr,6,length(sqlstr)-5);
if trim(sqlstr)<>'' then
sqlstr := ' where '+sqlstr ;
sqlstr :='SELECT A.*,B.Per_na,B.fac_no,B.sec_no,B.Cre_date,C.fac_nm,D.sec_nm '+
' FROM dbo.Deposit A INNER JOIN '+
' dbo.Account B ON A.ACC_NO = B.ACC_NO INNER JOIN '+
' dbo.factory C ON B.fac_no = C.fac_no INNER JOIN '+
' dbo.Sec D ON B.sec_no = D.SEC_NO '+sqlstr+
' ORDER BY A.Acc_no, A.Cdate, A.serial_no ';
self.ClientDataSet1.Active :=false;
self.ADODataSet1.CommandText :=sqlstr;
self.ClientDataSet1.Active :=true;
finally
Screen.Cursor:=crDefault;
end;
if not self.ClientDataSet1.Eof then
begin
QuickRep1.Preview;
end
else
begin
MessageDlg('无符合条件资料,请重输...',mtinformation,[mbok],0);
EdtStartyymmdd.SetFocus;
end;
end;
procedure TfrmDepositRep.EdtACC_NOKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
if key=13 then BitBtn1.SetFocus ;
end;
procedure TfrmDepositRep.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
action:=cafree;
self.ADODataSet1.Free ;
frmDepositRep :=nil;
end;
procedure TfrmDepositRep.FormCreate(Sender: TObject);
begin
inherited;
firstfrm :=true;
end;
procedure TfrmDepositRep.FormActivate(Sender: TObject);
begin
inherited;
if firstfrm =true then
begin
EdtStartyymmdd.SetFocus ;
firstfrm :=false;
end ;
end;
procedure TfrmDepositRep.QRBand2BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin
inherited;
if self.ClientDataSet1OUT_money.Value >0 then
QRLabelOUT_money.Caption :=Formatfloat('##,###,##0.00',self.ClientDataSet1OUT_money.AsFloat)
else
QRLabelOUT_money.Caption :='';
if self.ClientDataSet1IN_money.Value >0 then
QRLabelIN_money.Caption :=Formatfloat('##,###,##0.00',self.ClientDataSet1IN_money.AsFloat)
else
QRLabelIN_money.Caption :='';
if self.ClientDataSet1REM_money.Value >0 then
QRLabelREM_money.Caption :=Formatfloat('##,###,##0.00',self.ClientDataSet1REM_money.AsFloat)
else
QRLabelREM_money.Caption :='';
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -