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

📄 unitsulfjishigozi.pas

📁 此代码为企业原料管理代码
💻 PAS
字号:
unit UnitSulfjishigozi;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ComCtrls, StdCtrls, Mask, DBCtrls, ExtCtrls, Grids, DBGrids, Db, DBTables;

type
  TFrmsulfjishigozi = class(TForm)
    Table1: TTable;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    Panel1: TPanel;
    Panel2: TPanel;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    DBEdit3: TDBEdit;
    DBEdit4: TDBEdit;
    DateTimePicker1: TDateTimePicker;
    DBEdit5: TDBEdit;
    Table1Ximi: TStringField;
    Table1Jsrq: TDateField;
    Table1Jishi: TFloatField;
    Table1Biaozuen: TFloatField;
    Table1Note: TStringField;
    Table1Rizi: TFloatField;
    Table1Kou: TFloatField;
    Table1Butie: TFloatField;
    Panel3: TPanel;
    Panel4: TPanel;
    Panel5: TPanel;
    Panel6: TPanel;
    DBEdit6: TDBEdit;
    DBEdit7: TDBEdit;
    Panel7: TPanel;
    Panel8: TPanel;
    Panel9: TPanel;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button5: TButton;
    Button6: TButton;
    Bevel1: TBevel;
    Label6: TLabel;
    Label7: TLabel;
    DateTimePicker2: TDateTimePicker;
    DateTimePicker3: TDateTimePicker;
    Label5: TLabel;
    Edit1: TEdit;
    Button4: TButton;
    Table1Jishizi: TFloatField;
    procedure DBEdit1Enter(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure FormShow(Sender: TObject);
    procedure Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
    procedure Button4Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure Edit1Enter(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DateTimePicker1Change(Sender: TObject);
    procedure DateTimePicker1Click(Sender: TObject);
    procedure DBEdit3Enter(Sender: TObject);
    
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frmsulfjishigozi: TFrmsulfjishigozi;
  riqiri:Tdate;
  jie,rz:real;
  st:string;
  pt:integer;
implementation

uses UnitQueryID;

{$R *.DFM}

procedure TFrmsulfjishigozi.DBEdit1Enter(Sender: TObject);
begin
 if pt<>1 then
  begin
   showmessage('请先按“添加”按钮!');
   Button5.SetFocus;
   exit;
  end;
     frmCommQueryID.top:=100;
    frmCommQueryID.left:=80;
    FrmcommqueryID.PageControl1.ActivePageIndex:=0;
    FrmcommqueryID.ActiveControl:=FrmcommqueryID.estaffID;
    if  FrmcommqueryID.showmodal=mrok then
    begin
      DBEdit1.text:=FrmcommqueryID.query3.fieldbyname('staffname').asstring;
   end;
   //DBEdit3.setfocus;
end;

procedure TFrmsulfjishigozi.Button5Click(Sender: TObject);
begin
   edit1.Text:='';
   table1.active:=true;
   Button5.Enabled:=false;
   Button1.Enabled:=true;
   Button3.Enabled:=false;
   Button2.Enabled:=false;
   Button6.Enabled:=false;
   pt:=1;
   Table1.append;;
   DBedit1.SetFocus;
   table1.disablecontrols;
end;

procedure TFrmsulfjishigozi.Button1Click(Sender: TObject);
begin
  if pt<>1 then
    begin
    showmessage('请先按“添加”按钮或“修改”按钮!');
    exit;
    end;
   if (DBEdit1.text='')or(DBEdit3.text='') or (DBEdit4.text='') then
    begin
     showmessage('请输入职工姓名、工时和日工资标准!');
     exit;
     end;
      DBGrid1.Enabled:=true;
     if (DBEdit6.Text='') then   table1.FieldByName('butie').asfloat:=0
     else table1.FieldByName('butie').asfloat:= strtofloat(DBEdit6.Text);
     if (DBEdit7.Text='') then table1.FieldByName('kou').asfloat:=0
     else table1.FieldByName('kou').asfloat:= strtofloat(DBEdit7.Text);
     //Edit1.Text:=DBEdit1.text;
     rz:=strtofloat(DBEdit3.text)*strtofloat(DBEdit4.text)+table1.FieldByName('butie').asfloat-table1.FieldByName('kou').asfloat;
     rz:=strtofloat(formatfloat('0.00',rz));
     table1.FieldByName('rizi').asfloat:=rz;
     table1.FieldByName('jishizi').asfloat:=strtofloat(DBEdit3.text)*strtofloat(DBEdit4.text);
     table1.FieldByName('jsrq').asdatetime:=DateTimePicker1.date;
     table1.post;
     table1.Close;
     table1.Filtered:=false;
     table1.Filtered:=true;
     table1.open;
     Button5.Enabled:=true;
     Button6.Enabled:=true;
     //table1.Filtered:=false;
     table1.enablecontrols;

   Button2.Enabled:=true;
   Button3.Enabled:=true;
   DBEdit1.text:='';
   DBEdit2.text:='';
   DBEdit3.text:='';
   DBEdit5.text:='';
   DBEdit4.text:='';
   DBEdit6.text:='';
   DBEdit7.text:='';
  
       st:='';
       pt:=0;
end;

procedure TFrmsulfjishigozi.Button3Click(Sender: TObject);
begin
  if st<>'a' then
   begin
   showmessage('请选择要修改的记录!');
   exit;
   end;
  pt:=1;
  //table1.Filtered:=true;
  //table1.open;
  //DataSource1.DataSet:=Table1;
  Button3.Enabled:=false;
  Button5.Enabled:=false;
  DateTimePicker1.date:=table1.FieldByName('jsrq').asdatetime;
  Button1.Enabled:=true;
  Button2.Enabled:=false;
  DBGrid1.Enabled:=false;
  //table3.Refresh;
  table1.edit;
end;

procedure TFrmsulfjishigozi.Button2Click(Sender: TObject);
begin
 if st<>'a' then
   begin
   showmessage('请选择要删除的记录!');
   exit;
   end;
   if messagedlg('会删除所选记录 要继续吗?',mtWarning,[mbYes,mbNo],0) = mrNo then
    begin
    st:='';
    exit;
    end;
    table1.open;
    table1.Delete;
{
     with Query1 do
  begin
    close;
    sql.Clear;
    sql.Add('delete from jishigozhi.db');
    sql.Add('where ximi=:v_fro and jsrq=:vv and jishi=:jj');
    parambyname('v_fro').asstring:=Edit1.Text;
    parambyname('vv').asdate:=riqiri;
    parambyname('jj').asfloat:=jie;
    execsql;
   end;

       with Query1 do
  begin
    close;
    sql.Clear;
    sql.Add('select *  from jishigozhi.db');
    sql.Add('where ximi=:v_fro ');
    parambyname('v_fro').asstring:=Edit1.Text;
    open;
   end;
   }
end;

procedure TFrmsulfjishigozi.DBGrid1CellClick(Column: TColumn);
begin
  st:='a';
 //Edit1.Text:=table1.fieldbyname('ximi').asstring;
 DateTimePicker1.date:=table1.fieldbyname('jsrq').asdatetime;
 jie:=table1.fieldbyname('jishi').asfloat;
 riqiri:=table1.fieldbyname('jsrq').asdatetime;
end;

procedure TFrmsulfjishigozi.FormShow(Sender: TObject);
begin
 pt:=0;
 st:='';
 DateTimePicker1.date:=date;
 DateTimePicker2.date:=date-30;
 DateTimePicker3.date:=date;
 Button1.Enabled:=false;
 Button2.Enabled:=true;
 Button3.Enabled:=true;
 Button5.Enabled:=true;
 table1.Filtered:=true;
 table1.Open;
end;

procedure TFrmsulfjishigozi.Table1FilterRecord(DataSet: TDataSet;
  var Accept: Boolean);
var
   tr,rt:string;
begin
  if Edit1.text='' then
  begin
   tr:=formatdatetime('yy-mm-dd',table1.FieldByName('jsrq').asdatetime);
   rt:=formatdatetime('yy-mm-dd',DateTimePicker1.date);
   if tr = rt then
 Accept:=true
 else
 Accept:=false;
  end
  else
  begin
  //rt:=formatdatetime('yy-mm-dd',DateTimePicker3.date);
  //str:=formatdatetime('yy-mm-dd',DateTimePicker2.date);
  if(table1.FieldByName('ximi').asstring = Edit1.text) and (table1.FieldByName('jsrq').asdatetime>=DateTimePicker2.date) and (table1.FieldByName('jsrq').asdatetime<=DateTimePicker3.date) then
  Accept:=true
  else
 Accept:=false;
  end;
end;

procedure TFrmsulfjishigozi.Button4Click(Sender: TObject);
begin
  if edit1.text='' then
 begin
 showmessage('请输入职工姓名!');
 exit;
 end;
  table1.Filtered:=false;
  table1.close;
  table1.Filtered:=true;
  table1.open;
  if table1.RecordCount=0 then
  begin
  showmessage('无记录!');
  exit;
  end;
end;

procedure TFrmsulfjishigozi.Button6Click(Sender: TObject);
begin
  //query1.Close;
  //table1.Close;
  close;
end;

procedure TFrmsulfjishigozi.FormKeyPress(Sender: TObject; var Key: Char);
begin
 if key = #13 then
  begin
    key:=#0;
    perform(WM_NEXTDLGCTL,0,0);
  end; //if
end;

procedure TFrmsulfjishigozi.Edit1Enter(Sender: TObject);
begin
   table1.Close;
   Edit1.text:='';
   frmCommQueryID.top:=100;
    frmCommQueryID.left:=80;
    FrmcommqueryID.PageControl1.ActivePageIndex:=0;
    FrmcommqueryID.ActiveControl:=FrmcommqueryID.estaffID;
    if  FrmcommqueryID.showmodal=mrok then
    begin
      Edit1.text:=FrmcommqueryID.query3.fieldbyname('staffname').asstring;
   end;
end;

procedure TFrmsulfjishigozi.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  table1.Filtered:=false;
  table1.Close;
  edit1.text:='';
end;

//procedure TFrmsulfjishigozi.Table1CalcFields(DataSet: TDataSet);
//begin
  //table1.Edit;
 // rz:=(table1.FieldByName('jishi').asfloat)*(table1.FieldByName('biaozuen').asfloat);
 // rz:=strtofloat(formatfloat('0.00',rz));
  //table1.FieldByName('rizi').asfloat := rz;
//end;



procedure TFrmsulfjishigozi.DateTimePicker1Change(Sender: TObject);
begin
 if pt=1 then
 begin
 showmessage('现在是添加记录操作,要修改时间,提交后,'+#13+'删除该记录,选择好时间,再重新输入一次!');
 exit;
 end;
 Edit1.text:='';
 table1.Filtered:=false;
 table1.Close;
 table1.Filtered:=true;
 table1.Open;
end;

procedure TFrmsulfjishigozi.DateTimePicker1Click(Sender: TObject);
begin
 if pt=1 then
 begin
 showmessage('现在是添加记录操作,要修改时间,'+#13+'提交后,再用“修改”操作!');
 exit;
 end;
 Edit1.text:='';
 DateTimePicker1.Date:=DateTimePicker1.Date-1;
 table1.Close;
 table1.Filtered:=true;
 table1.Open;
end;

procedure TFrmsulfjishigozi.DBEdit3Enter(Sender: TObject);
begin
 if pt<>1 then
  begin
   showmessage('请先按“添加”按钮!');
   Button5.SetFocus;
   exit;
  end;
end;

end.

⌨️ 快捷键说明

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