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

📄 unit13.~pas

📁 商场管理 内容:通过商场入口和用户入口实现
💻 ~PAS
字号:
unit Unit13;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Spin, Grids, DBGrids, DBTables, DB, Buttons, jpeg,
  ExtCtrls;

type
  Tfrm_wage = class(TForm)
    Label1: TLabel;
    DataSource1: TDataSource;
    Table1: TTable;
    Query1: TQuery;
    DBGrid1: TDBGrid;
    Label2: TLabel;
    lbl_wage: TLabel;
    lbl_total: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    se_year: TSpinEdit;
    se_month: TSpinEdit;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    Image1: TImage;
    procedure BitBtn5Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure se_yearChange(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frm_wage: Tfrm_wage;

implementation

{$R *.dfm}

procedure Tfrm_wage.BitBtn5Click(Sender: TObject);
begin

   close;
end;

procedure Tfrm_wage.FormCreate(Sender: TObject);
var
ayear,amonth,aday:word;
begin
decodedate(date(),ayear,amonth,aday);
se_year.Value:=ayear;
se_month.Value:=amonth;
table1.Filter:='工资年度='+se_year.Text+' and 工资月度='+se_month.Text;
table1.Filtered:=true;

end;

procedure Tfrm_wage.se_yearChange(Sender: TObject);
begin
table1.Filter:='工资年度='+se_year.Text+' and 工资月度='+se_month.Text;
table1.Filtered:=true;
end;

procedure Tfrm_wage.BitBtn3Click(Sender: TObject);
begin

  query1.SQL.text:=
  'delete form salary.db'
  +'where 工资年度='+se_year.text+' and 工资月度='+se_month.Text;
  query1.ExecSQL;
  table1.refresh;
end;

procedure Tfrm_wage.BitBtn2Click(Sender: TObject);
var
   asql:string;
begin

table1.Filter:='工资年度'+se_year.Text+' and 工资月度='+se_month.Text;
table1.Filtered:=true;
if table1.RecordCount<>0 then

begin
asql:='update 工资表 set 出勤工资=日工资*出勤天数,合计=出勤工资+奖金'
      +' where 工资年度='+se_year.text+' and 工资月度='+se_month.text;
query1.SQL.Text:=asql;
query1.execsql;
table1.Refresh;

asql:='select sum(出勤工资),sum(合计) from salary.db '
      +'where 工资年度='+se_year.Text+' and 工资月度='+se_month.Text;
query1.SQL.Text:=asql;
query1.Open;

lbl_wage.caption:=query1.Fields[0].asstring;
lbl_total.Caption:=query1.Fields[1].asstring;
query1.close;
end;

end;

procedure Tfrm_wage.BitBtn1Click(Sender: TObject);
var
asql:string;
i:integer;  date1,date2:tdatetime;
begin
table1.filter:='工资年度='+se_year.Text+' and 工资月度='+se_month.Text;
table1.Filtered:=true;
if table1.RecordCount=0 then
begin
asql:='insert into salary1(编号,姓名,日工资,出勤天数,奖金,工资年度,工资月度)'
+' select distinct 员工编号,员工姓名,员工日工资,30,0,0'+se_year.text+','+se_month.Text
+' from workerinfor.db';
query1.SQL.Text:=asql;
query1.ExecSQL;

table1.Refresh;
table1.First;

for i:=0 to table1.RecordCount-1 do
begin
query1.close;

date1:=encodedate(se_year.Value,se_month.value,1);
date2:=encodedate(se_year.Value,se_month.value+1,1);
query1.ParamByName('d1').AsDateTime:=date1;
query1.ParamByName('d2').asdatetime:=date2;
query1.Open;

table1.Edit;
table1.Post;
table1.Next;
end;
end;

end;

end.

⌨️ 快捷键说明

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