📄 pay550_01.pas.svn-base
字号:
unit Pay550_01;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Bas100_01, FR_DSet, FR_DBSet, FR_Class, Db, Menus,
Grids, StdCtrls, ExtCtrls, ComCtrls, ToolWin,
Mask, DBCtrls, Buttons, fr_prntr, Printers, dxExEdtr,
dxCntner, dxTL, dxDBCtrl, dxDBGrid, ActnList, ADODB;
type
TPay550_01Form = class(TBas100_01Form)
CoolBar1: TCoolBar;
ToolBar2: TToolBar;
tlbFirst: TToolButton;
tlbPrior: TToolButton;
tlbNext: TToolButton;
tlbLast: TToolButton;
ToolButton1: TToolButton;
tlbLocate: TToolButton;
tlbPrint: TToolButton;
ToolButton4: TToolButton;
tlbExit: TToolButton;
tlbRun: TToolButton;
Panel1: TPanel;
Image1: TImage;
PopupMenu1: TPopupMenu;
mmiPrint: TMenuItem;
mmiExport: TMenuItem;
dsHrm150: TDataSource;
ToolButton2: TToolButton;
Splitter1: TSplitter;
dsPay550: TDataSource;
tlbCheck: TToolButton;
cbYear: TComboBox;
lblYear: TLabel;
lblMonth: TLabel;
cbMonth: TComboBox;
tlbCurr: TToolButton;
ToolButton6: TToolButton;
tlbTrans: TToolButton;
Panel3: TPanel;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
Panel4: TPanel;
lblPayYear: TLabel;
lblPayMonth: TLabel;
lblEmpID: TLabel;
lblDeptID: TLabel;
lblPayment: TLabel;
tlbCut: TToolButton;
sbOk: TSpeedButton;
ActionList1: TActionList;
ActFirst: TAction;
ActPrior: TAction;
ActNext: TAction;
ActLast: TAction;
ActRefresh: TAction;
ActLocate: TAction;
ActSearch: TAction;
ActPrint: TAction;
ActExport: TAction;
ActExit: TAction;
SaveDialog1: TSaveDialog;
qryHrm150: TADOQuery;
qryHrm150H150_002: TStringField;
qryHrm150H150_003: TStringField;
qryHrm150H150_001: TAutoIncField;
tlbRefresh: TToolButton;
tlbSearch: TToolButton;
ActRun: TAction;
ActCheck: TAction;
ActCurr: TAction;
ActTrans: TAction;
ActCut: TAction;
adsPay550: TADODataSet;
edtYear: TEdit;
edtMonth: TEdit;
edtEmpID: TEdit;
edtEmpName: TEdit;
edtDeptName: TEdit;
edtAmount: TEdit;
adsPay550ItemName1: TStringField;
adsPay550Amount1: TFloatField;
adsPay550ItemName2: TStringField;
adsPay550Amount2: TFloatField;
cbCheck: TCheckBox;
qryHrm150H100_002: TStringField;
ScrollBox1: TScrollBox;
dxDBGrid1: TdxDBGrid;
dxDBGrid1H150_002: TdxDBGridMaskColumn;
dxDBGrid1H150_003: TdxDBGridMaskColumn;
ScrollBox2: TScrollBox;
dxDBGrid2: TdxDBGrid;
dxDBGrid2ItemName1: TdxDBGridMaskColumn;
dxDBGrid2Amount1: TdxDBGridMaskColumn;
dxDBGrid2ItemName2: TdxDBGridMaskColumn;
dxDBGrid2Amount2: TdxDBGridMaskColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure cbYearChange(Sender: TObject);
procedure ReportGetValue(const ParName: String;
var ParValue: Variant);
procedure cbMonthChange(Sender: TObject);
procedure sbOkClick(Sender: TObject);
procedure qryHrm150AfterScroll(DataSet: TDataSet);
procedure ActFirstExecute(Sender: TObject);
procedure ActPriorExecute(Sender: TObject);
procedure ActNextExecute(Sender: TObject);
procedure ActLastExecute(Sender: TObject);
procedure ActRefreshExecute(Sender: TObject);
procedure ActLocateExecute(Sender: TObject);
procedure ActSearchExecute(Sender: TObject);
procedure ActPrintExecute(Sender: TObject);
procedure ActExportExecute(Sender: TObject);
procedure ActRunExecute(Sender: TObject);
procedure ActCheckExecute(Sender: TObject);
procedure ActCurrExecute(Sender: TObject);
procedure ActTransExecute(Sender: TObject);
procedure ActCutExecute(Sender: TObject);
procedure ActExitExecute(Sender: TObject);
procedure dxDBGrid2ColumnSorting(Sender: TObject;
Column: TdxDBTreeListColumn; var Allow: Boolean);
private
AStartDate,AEndDate:TDateTime;
APeriod:Integer;
procedure SetInterface;
{ Private declarations }
public
{ Public declarations }
end;
var
Pay550_01Form: TPay550_01Form;
implementation
uses SYSDATA, CommFun, Pay550_02, Pay550_03, Pay550_04, Pay550_05, Pay550_06;
{$R *.DFM}
//设置界面信息
procedure TPay550_01Form.SetInterface;
begin
Image1.Picture.Bitmap.LoadFromResourceName(AImgHandle,'TOPTITL');
ActFirst.Caption:=GetDBString('COM00005001'); //最前
ActPrior.Caption:=GetDBString('COM00005002'); //上移
ActNext.Caption:=GetDBString('COM00005003'); //下移
ActLast.Caption:=GetDBString('COM00005004'); //最后
ActRefresh.Caption:=GetDBString('COM00005010'); //刷新
ActLocate.Caption:=GetDBString('COM00005011'); //查找
ActSearch.Caption:=GetDBString('COM00005012'); //查询
ActPrint.Caption:=GetDBString('COM00005013'); //打印
ActExport.Caption:=GetDBString('COM00005014'); //导出数据
ActExit.Caption:=GetDBString('COM00005015'); //退出
ActFirst.Hint:=GetDBString('COM00005001',2); //移到第一条记录
ActPrior.Hint:=GetDBString('COM00005002',2); //移到上一条记录
ActNext.Hint:=GetDBString('COM00005003',2); //移到下一条记录
ActLast.Hint:=GetDBString('COM00005004',2); //移到最后一条记录
ActRefresh.Hint:=GetDBString('COM00005010',2); //取得最新的数据
ActLocate.Hint:=GetDBString('COM00005011',2); //快速定位记录
ActSearch.Hint:=GetDBString('COM00005012',2); //按条件查询数据
ActPrint.Hint:=GetDBString('COM00005013',2); //将数据打印出来
ActExport.Hint:=GetDBString('COM00005014',2); //导出数据到文件中
ActExit.Hint:=GetDBString('COM00005015',2); //关闭当前窗口
Caption:=GetDBString('PAY55001001'); //薪资核算处理
ActRun.Caption:=GetDBString('PAY55001002'); //计算
ActCheck.Caption:=GetDBString('PAY55001003'); //审核
ActCurr.Caption:=GetDBString('PAY55001004'); //零金
ActTrans.Caption:=GetDBString('PAY55001005'); //转帐
ActCut.Caption:=GetDBString('PAY55001006'); //划分
lblYear.Caption:=GetDBString('PAY55001007'); //年份
lblMonth.Caption:=GetDBString('PAY55001008'); //月份
sbOk.Caption:=GetDBString('PAY55001009'); //确定
lblPayYear.Caption:=GetDBString('PAY55001010'); //薪资年份
lblPayMonth.Caption:=GetDBString('PAY55001011'); //薪资月份
lblEmpID.Caption:=GetDBString('PAY55001012'); //员工编号
lblDeptID.Caption:=GetDBString('PAY55001013'); //部门编号
lblPayment.Caption:=GetDBString('PAY55001014'); //实得工资:
cbCheck.Caption:=GetDBString('PAY55001015'); //已审核否
qryHrm150H150_002.DisplayLabel:=GetDBString('PAY55001016'); //员工编号
qryHrm150H150_003.DisplayLabel:=GetDBString('PAY55001017'); //员工姓名
adsPay550ItemName1.DisplayLabel:=GetDBString('PAY55001018'); //项目名称
adsPay550Amount1.DisplayLabel:=GetDBString('PAY55001019'); //项目金额
adsPay550ItemName2.DisplayLabel:=GetDBString('PAY55001018'); //项目名称
adsPay550Amount2.DisplayLabel:=GetDBString('PAY55001019'); //项目金额
TabSheet1.Caption:=GetDBString('PAY55001020'); //工资明细
end;
procedure TPay550_01Form.FormCreate(Sender: TObject);
begin
inherited;
GetYears(cbYear);
GetMonths(StrToInt(cbYear.Text),cbMonth);
qryHrm150.Close;
qryHrm150.SQL.Clear;
if not ASuper then
qryHrm150.SQL.Add('select * from HRM150 A, HRM100 B where A.H150_005=B.H100_001 and A.H150_020='+GetBoolean(True)+' and H150_005 in (select S500C_002 from SYS500C where S500C_003=''DEP'' and S500C_004='+GetBoolean(True)+' and S500C_001='+IntToStr(AUserID)+') order by H150_002')
else
qryHrm150.SQL.Add('select * from HRM150 A, HRM100 B where A.H150_005=B.H100_001 and A.H150_020='+GetBoolean(True)+' order by H150_002');
qryHrm150.Open;
sbOk.Click;
PageControl1.ActivePageIndex:=0;
ActPrint.Enabled:=(ARights[4]='Y');
//设置界面信息
SetInterface;
cbMonthChange(cbMonth);
qryHrm150AfterScroll(qryHrm150);
end;
procedure TPay550_01Form.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
qryHrm150.Close;
Action:=caFree;
end;
procedure TPay550_01Form.cbYearChange(Sender: TObject);
begin
inherited;
GetMonths(StrToInt(cbYear.Text),cbMonth);
end;
procedure TPay550_01Form.ReportGetValue(const ParName: String;
var ParValue: Variant);
begin
inherited;
if ParName='USENM' then ParValue:=AUserName
else if ParName='PRNDT' then ParValue:=GetDBString('COM00006006') //列印日期
else if ParName='PRNNM' then ParValue:=GetDBString('COM00006007') //列印人員
else if ParName='REPNM' then ParValue:=AReportTitle
else if ParName='P550_001' then ParValue:=GetDBString('PAY55001010') //薪资年份
else if ParName='P550_002' then ParValue:=GetDBString('PAY55001011') //薪资月份
else if ParName='H150_002' then ParValue:=GetDBString('PAY55001016') //员工编号
else if ParName='H150_003' then ParValue:=GetDBString('PAY55001017') //员工姓名
else if ParName='H100_002' then ParValue:=GetDBString('PAY55001013') //部门编号
else if ParName='P550_004A' then ParValue:=GetDBString('PAY55001018') //项目名称
else if ParName='P550_004B' then ParValue:=GetDBString('PAY55001019') //项目金额
else if ParName='P550_005A' then ParValue:=GetDBString('PAY55001018') //项目名称
else if ParName='P550_005B' then ParValue:=GetDBString('PAY55001019') //项目金额
else if ParName='TOTA_001' then ParValue:=GetDBString('PAY55001022') //加项金额小计
else if ParName='TOTA_002' then ParValue:=GetDBString('PAY55001023') //减项金额小计
else if ParName='TOTA_003' then ParValue:=GetDBString('PAY55001014') //实得工资:
end;
procedure TPay550_01Form.cbMonthChange(Sender: TObject);
begin
inherited;
//取得期段的起始结束日期
GetPeriodDate(cbYear.Text,cbMonth.Text,AStartDate,AEndDate,APeriod);
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -