📄 cxyeunit.pas
字号:
unit cxyeunit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, Buttons, ToolWin, ComCtrls, StdCtrls, Grids, DBGrids,
DBCtrls, DB, ADODB;
type
Tcxyeform = class(TForm)
ToolBar1: TToolBar;
sb_print: TSpeedButton;
sb_close: TSpeedButton;
Bevel1: TBevel;
Label1: TLabel;
Label2: TLabel;
DBGrid1: TDBGrid;
a: TADODataSet;
dsa: TDataSource;
aDSDesigner: TStringField;
aDSDesigner2: TStringField;
aDSDesigner3: TStringField;
aDSDesigner4: TBCDField;
aField: TStringField;
procedure FormCreate(Sender: TObject);
procedure sb_closeClick(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure aCalcFields(DataSet: TDataSet);
procedure DBGrid1TitleClick(Column: TColumn);
procedure sb_printClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
cxyeform: Tcxyeform;
implementation
uses dmunit,cx_yeunit,printunit;
{$R *.dfm}
procedure Tcxyeform.FormCreate(Sender: TObject);
var ym:string;
begin
if cx_yeform.CheckBox1.Checked=true then
label2.Caption:=cx_yeform.MaskEdit1.Text+'年'+cx_yeform.MaskEdit2.Text+'月' ;
if cx_yeform.CheckBox1.Checked=false then
label2.Caption:='现在';
if cx_yeform.CheckBox1.Checked=true then //有截止年月时
begin
ym:=cx_yeform.MaskEdit1.Text+cx_yeform.MaskEdit2.Text;
a.Close ;
a.CommandText:='select 职工编号,账号,职工姓名,(sum(总系数)-sum(减少总系数)+(select 总期初余额 from 期初余额 where 明细表.职工编号=期初余额.职工编号)) 期末余额 '+
'from 明细表 where rtrim(年)+rtrim(月)<='''+ym+''' group by 职工编号,账号,职工姓名';
a.Open ;
end;
if cx_yeform.CheckBox1.Checked=false then //当无截止年月 时
begin
a.Close ;
a.CommandText:='select 职工编号,账号,职工姓名,(sum(总系数)-sum(减少总系数)+(select 总期初余额 from 期初余额 where 明细表.职工编号=期初余额.职工编号)) 期末余额 '+
' from 明细表 group by 职工编号,账号,职工姓名';
a.Open ;
end;
end;
procedure Tcxyeform.sb_closeClick(Sender: TObject);
begin
dm.person.Active:=false;
a.Active:=false;
close;
end;
procedure Tcxyeform.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=119 then
sb_close.Click ;
if key=114 then
sb_print.Click ;
end;
procedure Tcxyeform.aCalcFields(DataSet: TDataSet);
begin
dm.person.Open ;
dm.person.Locate('职工编号',a.FieldValues['职工编号'],[]);
afield.Value:=dm.person.FieldValues['部门编号'];
end;
procedure Tcxyeform.DBGrid1TitleClick(Column: TColumn);
begin
if column.FieldName<>'部门编号' then
a.Sort:=column.FieldName;
end;
procedure Tcxyeform.sb_printClick(Sender: TObject);
begin
Application.CreateForm(Tprintform, printform);
printform.QuickRep3.BringToFront ;
printform.QuickRep3.ReportTitle:='余额表预览';
printform.QuickRep3.Preview ;
printform.Free;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -