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

📄 gzxxsd.~pas

📁 人事管理系统的源代码
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:
unit Gzxxsd;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Mask, StdCtrls, Buttons, ADODB, DB;

type
  TGzxxsd_Form = class(TForm)
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    GroupBox3: TGroupBox;
    GroupBox4: TGroupBox;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Label3: TLabel;
    Edit3: TEdit;
    Label4: TLabel;
    Edit4: TEdit;
    Label5: TLabel;
    Edit5: TEdit;
    Label6: TLabel;
    Label7: TLabel;
    MaskEdit1: TMaskEdit;
    MaskEdit2: TMaskEdit;
    Label8: TLabel;
    Edit6: TEdit;
    Label9: TLabel;
    Edit7: TEdit;
    Label10: TLabel;
    Edit8: TEdit;
    Label11: TLabel;
    Edit9: TEdit;
    Label12: TLabel;
    Edit10: TEdit;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Edit11: TEdit;
    Label16: TLabel;
    Edit12: TEdit;
    CheckBox1: TCheckBox;
    BitBtn2: TBitBtn;
    BitBtn1: TBitBtn;
    Label17: TLabel;
    Edit13: TEdit;
    Label18: TLabel;
    Edit14: TEdit;
    Label19: TLabel;
    Edit15: TEdit;
    Label20: TLabel;
    Edit16: TEdit;
    Label21: TLabel;
    Edit17: TEdit;
    Label22: TLabel;
    Edit18: TEdit;
    ComboBox1: TComboBox;
    ADOConnection1: TADOConnection;
    ADOTable1: TADOTable;
    ADOQuery1: TADOQuery;
    ADOTable2: TADOTable;
    Edit2: TEdit;
    Edit19: TEdit;
    Label23: TLabel;
    Edit20: TEdit;
    ADOTable3: TADOTable;
    procedure FormActivate(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure ComboBox1Click(Sender: TObject);
    procedure Edit1Exit(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure Edit7Exit(Sender: TObject);
    procedure Edit8Exit(Sender: TObject);
    procedure Edit9Exit(Sender: TObject);
    procedure Edit2Exit(Sender: TObject);
    procedure Edit19Exit(Sender: TObject);
    procedure Edit10Exit(Sender: TObject);
    procedure Edit13Exit(Sender: TObject);
    procedure Edit15Exit(Sender: TObject);
    procedure Edit14Exit(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure carcl();

  end;

var
  Gzxxsd_Form: TGzxxsd_Form;
  curbuff:array[0..11] of Currency;

  tax_flag:boolean;
  tax:real;
  tax_buff:array[0..50] of real;
implementation

uses Main;

{$R *.dfm}





procedure TGzxxsd_Form.carcl();
var i:integer;
    taxbuff:array[0..100] of integer;
begin
    curbuff[0]:=strtocurr(edit6.Text);
    curbuff[1]:=strtocurr(edit7.Text);
    curbuff[2]:=strtocurr(edit8.Text);
    curbuff[3]:=strtocurr(edit9.Text);
    curbuff[4]:=strtocurr(edit2.Text);
    curbuff[5]:=strtocurr(edit19.Text);
    curbuff[6]:=strtocurr(edit10.Text);
    curbuff[7]:=strtocurr(edit13.Text);
    curbuff[8]:=strtocurr(edit14.Text);
    curbuff[9]:=strtocurr(edit15.Text);
    curbuff[10]:=0;
    curbuff[11]:=0;

    adotable3.Active:=true;
    tax_flag:=false;

//-------------------------------------------------------
// -----------------计算总工资---------------------------
//-------------------------------------------------------
    for i:=0 to 9 do
    begin
       curbuff[10]:=curbuff[10] + curbuff[i];
    end;

//-------------------------------------------------------
// -----------------取得税率---------------------------
//-------------------------------------------------------
    taxbuff[0]:=adotable3.FieldByName('分征点').AsInteger;
    tax_buff[0]:=adotable3.FieldByName('税率').Asfloat;
    adotable3.Next;
    i:=1;
    while (tax_flag=false) and (adotable3.Eof<>true) do
    begin

         taxbuff[i]:=adotable3.FieldByName('分征点').AsInteger;
         tax_buff[i]:=adotable3.FieldByName('税率').Asfloat;
         if  curbuff[10]<taxbuff[0] then
         begin
              curbuff[11]:=0;
              tax_flag:=true;
         end
         else
         begin

                  if(taxbuff[i-1]<=curbuff[10]) and (curbuff[10]<taxbuff[i]) then
                  begin
                     tax:=tax_buff[i-1];
                     tax_flag:=true;
                  end
                  else
                  begin
                    i:=i+1;
                    adotable3.Next;
                  end;
         end;
    end;

//-------------------------------------------------------
// -----------------计算实发工资---------------------------
//-------------------------------------------------------
    curbuff[11]:=curbuff[10]*tax;
    edit16.Text:=currtostr(curbuff[11]);
    edit17.Text:=currtostr(curbuff[10]);
    edit18.Text:=currtostr(curbuff[10]-curbuff[11]);
    edit20.Text:=floattostr(tax);
    adotable3.Close;

//-----------------------------------------------------------
//-----------------  清零  ----------------------------------
//------------------------------------------------------------


end;


procedure TGzxxsd_Form.FormActivate(Sender: TObject);
begin
    ADOConnection1:=MAIN_FORM.ADOConnection1;
    adotable1.Connection:=ADOConnection1;
    adotable1.TableName:='职工信息表';
    adotable1.Active:=true;

    adoquery1.Connection:=ADOConnection1;


    adotable2.Connection:=ADOConnection1;
    adotable2.TableName:='职工工资信息表';


    adotable3.Connection:=ADOConnection1;
    adotable3.TableName:='分征点设置表';

    while adotable1.Eof <> true do
    begin
    combobox1.Items.Add(adotable1.Fieldbyname('职工编号').AsString);
    adotable1.Next;
    end;
    adotable1.close;

end;

procedure TGzxxsd_Form.BitBtn2Click(Sender: TObject);
begin
  close;
end;

procedure TGzxxsd_Form.ComboBox1Click(Sender: TObject);
begin
  if combobox1.Text<>'' then
  begin
        adoquery1.Close;
        adoquery1.SQL.Clear;
        adoquery1.SQL.Add('select * from 职工信息表 where 职工编号=:ZgNo');
        adoquery1.Parameters.Clear;
        adoquery1.Parameters.AddParameter;
        adoquery1.Parameters[0].Name:='ZgNo';
        adoquery1.Parameters[0].DataType:=ftstring;

⌨️ 快捷键说明

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