⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csh700_01.pas.svn-base

📁 开源的网站整站程序,功能强大带采集系统.
💻 SVN-BASE
字号:
unit Csh700_01;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, BAS200_08, dxExEdtr, DB, ADODB, ActnList, Menus, dxCntner, dxTL,
  dxDBCtrl, dxDBGrid, ExtCtrls, ComCtrls, TeEngine, Series, TeeProcs,
  Chart, DbChart, dxDBTLCl, dxGrClms, StdCtrls, wwdbdatetimepicker,
  Buttons, ToolWin, wwfltdlg;

type
  TCsh700_01Form = class(TBas200_08Form)
    ADODataSet1ACCNO: TIntegerField;
    ADODataSet1ACCNM: TStringField;
    ADODataSet1CURNM: TStringField;
    ADODataSet1AMOUNT: TBCDField;
    dxDBGrid1ACCNM: TdxDBGridMaskColumn;
    dxDBGrid1CURNM: TdxDBGridMaskColumn;
    dxDBGrid1AMOUNT: TdxDBGridCurrencyColumn;
    lblDate: TLabel;
    edtDate: TwwDBDateTimePicker;
    qryCsh550: TADOQuery;
    sbSearch: TSpeedButton;
    Splitter1: TSplitter;
    Panel2: TPanel;
    DBChart1: TDBChart;
    BarSeries1: TBarSeries;
    PopupMenu1: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    ActOpen: TAction;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure sbSearchClick(Sender: TObject);
    procedure dxDBGrid1AMOUNTDrawSummaryFooter(Sender: TObject;
      ACanvas: TCanvas; ARect: TRect; var AText: String;
      var AAlignment: TAlignment; AFont: TFont; var AColor: TColor;
      var ADone: Boolean);
    procedure ActPrintExecute(Sender: TObject);
    procedure N1Click(Sender: TObject);
  private
    ASum:Double;
    { Private declarations }
  public
    procedure SetInterface; override;
    procedure RefreshEvent; override;
    procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
    { Public declarations }
  end;

var
  Csh700_01Form: TCsh700_01Form;

implementation

uses CommFun, SYSDATA, CshComm, Csh510_01;

{$R *.dfm}

procedure TCsh700_01Form.SetInterface;
begin
  inherited;
  Caption:=GetDBString('CSH70001001');  //资金余额查询
  lblDate.Caption:=GetDBString('CSH70001002');  //日期
  sbSearch.Caption:=GetDBString('CSH70001003');  //查询
  ADODataSet1ACCNO.DisplayLabel:=GetDBString('CSH70001004');  //帐户编号
  ADODataSet1ACCNM.DisplayLabel:=GetDBString('CSH70001005');  //帐户名称
  ADODataSet1CURNM.DisplayLabel:=GetDBString('CSH70001006');  //币别
  ADODataSet1AMOUNT.DisplayLabel:=GetDBString('CSH70001007');  //余额
end;

procedure TCsh700_01Form.FormCreate(Sender: TObject);
begin
  inherited;
  SetInterface;
  edtDate.Date:=GetServerDate;
  sbSearch.Click;
end;

procedure TCsh700_01Form.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
  ADODataSet1.Close;
end;

procedure TCsh700_01Form.sbSearchClick(Sender: TObject);
var
  AccNo:Integer;
begin
  inherited;
//查询
  if edtDate.Text='' then
  begin
    ShowMsg('UMS10000163');  //日期不能为空
    edtDate.SetFocus;
    Abort;
  end;
  Screen.Cursor:=crHourGlass;
  //建立出纳总帐临时表
  ADODataSet1.DisableControls;
  ADODataSet1.Close;
  ADODataSet1.FieldDefs.Clear;
  ADODataSet1.FieldDefs.Add('ACCNO',ftInteger,0);
  ADODataSet1.FieldDefs.Add('ACCNM',ftString,50);
  ADODataSet1.FieldDefs.Add('CURNM',ftString,30);
  ADODataSet1.FieldDefs.Add('AMOUNT',ftCurrency,0);
  ADODataSet1.CreateDataSet;
  ASum:=0;
  //取得所有帐户的余额
  qryCsh550.Close;
  qryCsh550.SQL.Clear;
  qryCsh550.SQL.Add('select A.*,B.G100_003 from CSH550 A, GLD100 B where A.C550_005=B.G100_001');
  qryCsh550.Open;
  while not qryCsh550.Eof do
  begin
    AccNo:=qryCsh550.FieldByName('C550_001').Value;
    ADODataSet1.Append;
    ADODataSet1.FieldByName('ACCNO').Value:=AccNo;
    ADODataSet1.FieldByName('ACCNM').Value:=qryCsh550.FieldByName('C550_002').Value;
    ADODataSet1.FieldByName('CURNM').Value:=qryCsh550.FieldByName('G100_003').Value;
    ADODataSet1.FieldByName('AMOUNT').Value:=GetAccBalance(AccNo,edtDate.Date);
    ADODataSet1.Post;
    ASum:=ASum+ADODataSet1.FieldByName('AMOUNT').Value;
    qryCsh550.Next;
  end;
  ADODataSet1.EnableControls;
  DBChart1.RefreshData;
  Screen.Cursor:=crDefault;
end;

procedure TCsh700_01Form.ReportGetValue(const ParName: String;
  var ParValue: Variant);
begin
  inherited;
  if ParName='CURNM' then ParValue:=GetDBString('CSH70001006')  //'币别'
  else if ParName='ACCNM' then ParValue:=GetDBString('CSH70001005')  //'帐户名称'
  else if ParName='AMOUNT' then ParValue:=GetDBString('CSH70001007')  //'余额'
  else if ParName='DATE1' then ParValue:=GetDBString('CSH70001009')+edtDate.Text  //'日期:'
end;

procedure TCsh700_01Form.dxDBGrid1AMOUNTDrawSummaryFooter(Sender: TObject;
  ACanvas: TCanvas; ARect: TRect; var AText: String;
  var AAlignment: TAlignment; AFont: TFont; var AColor: TColor;
  var ADone: Boolean);
begin
  inherited;
  if VarToStr(ASum)<>'' then AText:=FloatToStrF(ASum,ffCurrency,18,2);
  AColor := clWhite;
end;

procedure TCsh700_01Form.ActPrintExecute(Sender: TObject);
begin
  try
    SYSDM.frReport2.OnGetValue:=ReportGetValue;
    inherited;
  finally
    SYSDM.frReport2.OnGetValue:=nil;
  end;
end;

procedure TCsh700_01Form.N1Click(Sender: TObject);
var
  AFieldInfo:TwwFieldInfo;
begin
  inherited;
//查看
  if ADODataSet1.IsEmpty then Exit;
  Screen.Cursor:=crHourGlass;
  Csh510_01Form:=TCsh510_01Form.Create(Application);
  Csh510_01Form.edtFromDate.Date:=edtDate.Date;
  Csh510_01Form.edtToDate.Date:=edtDate.Date;
  Csh510_01Form.sbSearch.Click;
  AFieldInfo:=TwwFieldInfo.Create;
  FilterDialog(Csh510_01Form.DataSource1,False);
  AFieldInfo.FieldName:='I120_003';
//  AFieldInfo.DisplayLabel:=Csh510_01Form.ADOQuery1I120_003.DisplayLabel;
  AFieldInfo.MatchType:=fdMatchStart;
  AFieldInfo.CaseSensitive:=False;
  AFieldInfo.NonMatching:=False;
//  AFieldInfo.FilterValue:=ADODataSet1FName.Value;;
  SYSDM.wwFilterDialog1.FieldInfo.Add(AFieldInfo);
  SYSDM.wwFilterDialog1.ApplyFilter;
  Screen.Cursor:=crDefault;
  Csh510_01Form.ShowModal;
//  if Assigned(AFieldInfo) then AFieldInfo.Free;
end;

procedure TCsh700_01Form.RefreshEvent;
begin
  inherited;
  sbSearch.Click;
end;

initialization
  RegisterClass(TCsh700_01Form);

finalization
  UnRegisterClass(TCsh700_01Form);

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -