📄 pay550_04.pas.svn-base
字号:
unit Pay550_04;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Bas100_01, StdCtrls, ExtCtrls, Buttons, Db, Menus, dxExEdtr, dxCntner,
dxTL, dxDBCtrl, dxDBGrid, ADODB;
type
TPay550_04Form = class(TBas100_01Form)
bbtnOk: TBitBtn;
bbtnExit: TBitBtn;
Label3: TLabel;
lblAmount: TLabel;
lblCurr: TLabel;
cbCurr: TComboBox;
edtAmount: TEdit;
ScrollBox1: TScrollBox;
dxDBGrid2: TdxDBGrid;
DataSource1: TDataSource;
ADODataSet1: TADODataSet;
ADOQuery1: TADOQuery;
ADODataSet1ParValue: TIntegerField;
ADODataSet1Unit: TStringField;
ADODataSet1Count: TIntegerField;
ADODataSet1Amount: TFloatField;
dxDBGrid2ParValue: TdxDBGridMaskColumn;
dxDBGrid2Unit: TdxDBGridMaskColumn;
dxDBGrid2Count: TdxDBGridMaskColumn;
dxDBGrid2Amount: TdxDBGridMaskColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure bbtnOkClick(Sender: TObject);
procedure bbtnExitClick(Sender: TObject);
procedure cbCurrChange(Sender: TObject);
private
procedure SetInterface;
{ Private declarations }
public
{ Public declarations }
end;
var
Pay550_04Form: TPay550_04Form;
implementation
uses Pay500_01, SYSDATA, CommFun;
{$R *.DFM}
procedure TPay550_04Form.SetInterface;
begin
Caption:=GetDBString('PAY55004001'); //薪资零金核算
lblCurr.Caption:=GetDBString('PAY55004002'); //币别
lblAmount.Caption:=GetDBString('PAY55004003'); //金额
bbtnOk.Caption:=GetDBString('PAY55004004'); //计算(&O)
bbtnExit.Caption:=GetDBString('PAY55004005'); //退出(&X)
ADODataSet1ParValue.DisplayLabel:=GetDBString('PAY55004006'); //面值
ADODataSet1Unit.DisplayLabel:=GetDBString('PAY55004007'); //单位
ADODataSet1Count.DisplayLabel:=GetDBString('PAY55004008'); //数量
ADODataSet1Amount.DisplayLabel:=GetDBString('PAY55004009'); //金额
end;
procedure TPay550_04Form.FormCreate(Sender: TObject);
begin
inherited;
//设置界面信息
SetInterface;
end;
procedure TPay550_04Form.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
//
end;
procedure TPay550_04Form.bbtnOkClick(Sender: TObject);
//var
// N,n1,n2,i:Integer;
// T:Double;
// m1,m2,m3,m4,m5,m6,m7:Integer;
begin
inherited;
//计算
{ T:=0;m1:=0;m2:=0;m3:=0;m4:=0;m5:=0;m6:=0;m7:=0;
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('select H150_002, H150_003, H150_026,sum(P550_006) as P550_006 from HRM150,PAY550');
SYSDM.qryQuery.SQL.Add('where H150_001=P550_003 and P550_001=@I_YEARS and P550_002=@I_MONTH');
SYSDM.qryQuery.SQL.Add('group by H150_026, H150_002, H150_003');
SYSDM.qryQuery.SQL.Add('order by H150_026, H150_002, H150_003');
SYSDM.qryQuery.Open;
ListBox2.Items.Clear;
while not SYSDM.qryQuery.Eof do
begin
N:=SYSDM.qryQuery.FieldByName('P550_006').AsInteger;
for i:=0 to ListBox1.Items.Count-1 do
begin
n1:=StrToInt(Copy(ListBox1.Items[i],1,3));
n2:=N div n1;
if i=0 then m1:=m1+n2
else if i=1 then m2:=m2+n2
else if i=2 then m3:=m3+n2
else if i=3 then m4:=m4+n2
else if i=4 then m5:=m5+n2
else if i=5 then m6:=m6+n2
else if i=6 then m7:=m7+n2;
N:=N-n1*n2
end;
T:=T+SYSDM.qryQuery.FieldByName('P550_006').Value;
SYSDM.qryQuery.Next;
end;
SYSDM.qryQuery.Close;
Label3.Caption:=FloatToStr(T);
for I:=0 to ListBox1.Items.Count-1 do
begin
if I=0 then ListBox2.Items.Add(ListBox1.Items[i]+GetDBString('COM00004006')+IntToStr(m1)) //张数:
else if I=1 then ListBox2.Items.Add(ListBox1.Items[i]+GetDBString('COM00004006')+IntToStr(m2)) //张数:
else if I=2 then ListBox2.Items.Add(ListBox1.Items[i]+GetDBString('COM00004006')+IntToStr(m3)) //张数:
else if I=3 then ListBox2.Items.Add(ListBox1.Items[i]+GetDBString('COM00004006')+IntToStr(m4)) //张数:
else if I=4 then ListBox2.Items.Add(ListBox1.Items[i]+GetDBString('COM00004006')+IntToStr(m5)) //张数:
else if I=5 then ListBox2.Items.Add(ListBox1.Items[i]+GetDBString('COM00004006')+IntToStr(m6)) //张数:
else if I=6 then ListBox2.Items.Add(ListBox1.Items[i]+GetDBString('COM00004006')+IntToStr(m7)); //张数:
end;
Label5.Caption:=Money_convert(T);
}
end;
procedure TPay550_04Form.bbtnExitClick(Sender: TObject);
begin
inherited;
//退出
Close;
end;
procedure TPay550_04Form.cbCurrChange(Sender: TObject);
begin
inherited;
//币别
ADODataSet1.FieldDefs.Clear;
ADODataSet1.FieldDefs.Add('ParValue',ftInteger,0);
ADODataSet1.FieldDefs.Add('Unit',ftString,20);
ADODataSet1.FieldDefs.Add('Count',ftInteger,0);
ADODataSet1.FieldDefs.Add('Amount',ftFloat,0);
ADODataSet1.CreateDataSet;
end;
initialization
RegisterClass(TPay550_04Form);
finalization
UnRegisterClass(TPay550_04Form);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -