📄 uffjgtj.~pas
字号:
unit uFFJGTJ;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
uInfoTemp, ExtCtrls, Grids, DBGridEh, Db, DBTables, StdCtrls, kdb2text,
PrnDbgeh, Spin;
type
TfrmFFJGTJ = class(TfrmInfoTemp)
pnlTemp: TPanel;
grdInfo: TDBGridEh;
souInfo: TDataSource;
qryInfo: TQuery;
Label1: TLabel;
SaveDialog1: TSaveDialog;
KDatasetToText1: TKDatasetToText;
PrintDBGridEh1: TPrintDBGridEh;
edtYear: TSpinEdit;
Label2: TLabel;
edtMonth: TSpinEdit;
Label3: TLabel;
cmbInfo: TComboBox;
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure BeginQuery;
procedure SaveToFile;
procedure ToPrint;
end;
var
frmFFJGTJ: TfrmFFJGTJ;
implementation
uses uCommon;
{$R *.DFM}
procedure TfrmFFJGTJ.BeginQuery;
begin
with qryInfo do
begin
SQL.Clear;
SQL.Add('SELECT');
SQL.Add(' dwxx.DWDM "单位代码" ');
SQL.Add(' ,dwxx.DWMC "单位名称" ');
if (cmbInfo.ItemIndex = 0) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,nvl(dwhzxx.RS_GH,0) "工商银行|人数", nvl(dwhzxx.JE_GH,0) "工商银行|金额"');
if (cmbInfo.ItemIndex = 1) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,nvl(dwhzxx.RS_NH,0) "农业银行|人数", nvl(dwhzxx.JE_NH,0) "农业银行|金额"');
if (cmbInfo.ItemIndex = 2) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,nvl(dwhzxx.RS_ZH,0) "中国银行|人数", nvl(dwhzxx.JE_ZH,0) "中国银行|金额"');
if (cmbInfo.ItemIndex = 3) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,nvl(dwhzxx.RS_JH,0) "建设银行|人数", nvl(dwhzxx.JE_JH,0) "建设银行|金额"');
if (cmbInfo.ItemIndex = 4) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,nvl(dwhzxx.RS_YZ,0) "邮政储蓄|人数", nvl(dwhzxx.JE_YZ,0) "邮政储蓄|金额"');
if (cmbInfo.ItemIndex = 5) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,nvl(dwhzxx.RS_HK,0) "邮政汇款|人数", nvl(dwhzxx.JE_HK,0) "邮政汇款|金额"');
if (cmbInfo.ItemIndex = 6) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,nvl(dwhzxx.RS_QT,0) "其他|人数", nvl(dwhzxx.JE_QT,0) "其他|金额"');
if (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,nvl(dwhzxx.RS_Z,0) "总人数", nvl(dwhzxx.JE_Z,0) "总金额"');
SQL.Add('FROM');
SQL.Add(' tFF_DWHZXX dwhzxx,tFF_DWXX dwxx');
SQL.Add('WHERE');
SQL.Add(' dwxx.dwid_ff=dwhzxx.dwid_ff and dwxx.ssdwid=dwxx.dwid_ff');
SQL.Add(' and dwhzxx.ffyf = to_Date(''' + edtYear.Text +
edtMonth.Text + ''',''yyyymm'')');
SQL.Add('union');
SQL.Add('SELECT');
SQL.Add(' ''合计''');
SQL.Add(' ,''''');
if (cmbInfo.ItemIndex = 0) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,sum(nvl(dwhzxx.RS_GH,0)) "工商银行|人数", sum(nvl(dwhzxx.JE_GH,0)) "工商银行|金额"');
if (cmbInfo.ItemIndex = 1) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,sum(nvl(dwhzxx.RS_NH,0)) "农业银行|人数", sum(nvl(dwhzxx.JE_NH,0)) "农业银行|金额"');
if (cmbInfo.ItemIndex = 2) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,sum(nvl(dwhzxx.RS_ZH,0)) "中国银行|人数", sum(nvl(dwhzxx.JE_ZH,0)) "中国银行|金额"');
if (cmbInfo.ItemIndex = 3) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,sum(nvl(dwhzxx.RS_JH,0)) "建设银行|人数", sum(nvl(dwhzxx.JE_JH,0)) "建设银行|金额"');
if (cmbInfo.ItemIndex = 4) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,sum(nvl(dwhzxx.RS_YZ,0)) "邮政储蓄|人数", sum(nvl(dwhzxx.JE_YZ,0)) "邮政储蓄|金额"');
if (cmbInfo.ItemIndex = 5) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,sum(nvl(dwhzxx.RS_HK,0)) "邮政汇款|人数", sum(nvl(dwhzxx.JE_HK,0)) "邮政汇款|金额"');
if (cmbInfo.ItemIndex = 6) or (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,sum(nvl(dwhzxx.RS_QT,0)) "其他|人数", sum(nvl(dwhzxx.JE_QT,0)) "其他|金额"');
if (cmbInfo.ItemIndex = 7) then
SQL.Add(' ,sum(nvl(dwhzxx.RS_Z,0)) "总人数", sum(nvl(dwhzxx.JE_Z,0)) "总金额"');
// SQL.Add(' ,sum(nvl(dwhzxx.RS_GH,0)) "工商银行|人数", sum(nvl(dwhzxx.JE_GH,0)) "工商银行|金额"');
// SQL.Add(' ,sum(nvl(dwhzxx.RS_NH,0)) "农业银行|人数", sum(nvl(dwhzxx.JE_NH,0)) "农业银行|金额"');
// SQL.Add(' ,sum(nvl(dwhzxx.RS_ZH,0)) "中国银行|人数", sum(nvl(dwhzxx.JE_ZH,0)) "中国银行|金额"');
// SQL.Add(' ,sum(nvl(dwhzxx.RS_JH,0)) "建设银行|人数", sum(nvl(dwhzxx.JE_JH,0)) "建设银行|金额"');
// SQL.Add(' ,sum(nvl(dwhzxx.RS_YZ,0)) "邮政储蓄|人数", sum(nvl(dwhzxx.JE_YZ,0)) "邮政储蓄|金额"');
// SQL.Add(' ,sum(nvl(dwhzxx.RS_HK,0)) "邮政汇款|人数", sum(nvl(dwhzxx.JE_HK,0)) "邮政汇款|金额"');
// SQL.Add(' ,sum(nvl(dwhzxx.RS_QT,0)) "其他|人数", sum(nvl(dwhzxx.JE_QT,0)) "其他|金额"');
// SQL.Add(' ,sum(nvl(dwhzxx.RS_Z,0)) "总人数", sum(nvl(dwhzxx.JE_Z,0)) "总金额"');
SQL.Add('FROM');
SQL.Add(' tFF_DWHZXX dwhzxx,tFF_DWXX dwxx');
SQL.Add('WHERE');
SQL.Add(' dwxx.dwid_ff=dwhzxx.dwid_ff and dwxx.ssdwid=dwxx.dwid_ff');
SQL.Add(' and dwhzxx.ffyf = to_Date(''' + edtYear.Text +
edtMonth.Text + ''',''yyyymm'')');
// SQL.Add('ORDER BY dwxx.DWDM');
// SQL.Add(' ORDER BY dwxx.sshy');
Open;
end;
end;
procedure TfrmFFJGTJ.ToPrint;
begin
if not qryInfo.Active then
BeginQuery;
PrintDBGridEh1.Preview;
end;
//保存文件
procedure TfrmFFJGTJ.SaveToFile;
begin
SaveDialog1.DefaultExt := 'csv';
SaveDialog1.FileName := '发放机构统计.txt';
if not qryInfo.Active then
BeginQuery;
if SaveDialog1.Execute then
begin
Self.qryInfo.DisableControls;
Self.KDatasetToText1.Transfer(SaveDialog1.FileName);
Self.qryInfo.EnableControls;
gfShowOK('数据倒出成功');
end;
end;
procedure TfrmFFJGTJ.FormCreate(Sender: TObject);
var
year, month, day: word;
begin
inherited;
cmbInfo.ItemIndex := 7;
// edtYear.Visible := False;
// edtMonth.Visible := False;
// label2.Visible := False;
// label3.Visible := False;
decodeDate(now, year, month, day);
edtYear.Value := Year;
edtMonth.Value := Month;
// cmbInfo.Visible := False;
// label1.Visible := False;
end;
procedure TfrmFFJGTJ.Button1Click(Sender: TObject);
begin
inherited;
BeginQuery;
end;
procedure TfrmFFJGTJ.Button2Click(Sender: TObject);
begin
inherited;
ToPrint;
end;
procedure TfrmFFJGTJ.Button3Click(Sender: TObject);
begin
inherited;
SaveToFile;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -