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

📄 addzt1.pas

📁 pasa人力资源考勤管理系统
💻 PAS
字号:
unit addzt1;

interface

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

type
  TFormaddzt1 = class(TForm)
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    GroupBox2: TGroupBox;
    GroupBox1: TGroupBox;
    ListBox1: TListBox;
    ADODataSet1: TADODataSet;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton5: TSpeedButton;
    SpeedButton7: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton9: TSpeedButton;
    SpeedButton10: TSpeedButton;
    SpeedButton6: TSpeedButton;
    SpeedButton11: TSpeedButton;
    SpeedButton8: TSpeedButton;
    SpeedButton13: TSpeedButton;
    SpeedButton14: TSpeedButton;
    SpeedButton15: TSpeedButton;
    SpeedButton16: TSpeedButton;
    SpeedButton18: TSpeedButton;
    SpeedButton19: TSpeedButton;
    SpeedButton20: TSpeedButton;
    SpeedButton21: TSpeedButton;
    SpeedButton24: TSpeedButton;
    SpeedButton4: TSpeedButton;
    SpeedButton12: TSpeedButton;
    SpeedButton23: TSpeedButton;
    SpeedButton17: TSpeedButton;
    SpeedButton22: TSpeedButton;
    SpeedButton25: TSpeedButton;
    ADODataSet2: TADODataSet;
    DataSource1: TDataSource;
    ADODataSet2gongshi: TStringField;
    GroupBox4: TGroupBox;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    GroupBox3: TGroupBox;
    DBGrid1: TDBGrid;
    GroupBox5: TGroupBox;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    ADODataSet1changechinename: TStringField;
    Panel2: TPanel;
    Label4: TLabel;
    Label5: TLabel;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    Button9: TButton;
    Button10: TButton;
    ADODataSet2memo: TStringField;
    Button11: TButton;
    DBText1: TDBText;
    procedure Button4Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ListBox1DblClick(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure DBGrid1DblClick(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Edit1Click(Sender: TObject);
    procedure Button9Click(Sender: TObject);
    procedure Button10Click(Sender: TObject);
    procedure Button11Click(Sender: TObject);
  private
    start:integer;
    button:boolean;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Formaddzt1: TFormaddzt1;

implementation

uses datamol, zhantao;

{$R *.DFM}

procedure TFormaddzt1.Button4Click(Sender: TObject);
begin
 close;
end;

procedure TFormaddzt1.FormCreate(Sender: TObject);
begin
 groupbox3.Visible:=false;
 adodataset1.Close;
 adodataset1.Open;
 Label2.Caption:=datamod.ADOztandp.fieldbyname('pchinename').asstring;
 Edit1.Text:=formzhantao.dbedit2.Text;
 if not adodataset1.Eof then
 begin
  listbox1.Items.Clear;
  while not adodataset1.Eof do
  begin
    if trim(adodataset1.FieldByName('changechinename').asstring)<>'' then
      listbox1.Items.Add(adodataset1.fieldbyname('changechinename').asstring);
    adodataset1.Next;  
  end;
 end;
end;

procedure TFormaddzt1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 adodataset1.Close;
 adodataset2.Close;
end;

procedure TFormaddzt1.Button2Click(Sender: TObject);
begin
 edit1.Text:='';
 
end;

procedure TFormaddzt1.Button1Click(Sender: TObject);
begin
 edit1.Text:=copy(edit1.Text,1,length(edit1.text)-1);
end;

procedure TFormaddzt1.ListBox1DblClick(Sender: TObject);
begin
 edit1.text:=copy(edit1.Text,1,start)+listbox1.Items[listbox1.itemindex]+copy(edit1.text,start+1,length(edit1.text)-start);
 edit1.SelStart:=start+length(listbox1.items[listbox1.itemindex]);
 start:=edit1.selstart;
end;

procedure TFormaddzt1.SpeedButton1Click(Sender: TObject);
begin
 if (sender as tspeedbutton).caption<>'标准函数' then
 begin
  edit1.Text:=copy(edit1.Text,1,start)+(sender as tspeedbutton).caption+copy(edit1.text,start+1,length(edit1.text)-start);
  edit1.SelStart:=start+length((sender as tspeedbutton).caption);
  start:=edit1.selstart;
 end
 else
 begin
  adodataset2.Close;
  adodataset2.Open;
  groupbox3.Visible:=true;
  panel2.visible:=false;
  groupbox3.align:=alclient;
 end;
end;

procedure TFormaddzt1.Button3Click(Sender: TObject);
var
  ary1,qry2:tadoquery;
  s,s1,s2,sal:string;
  i,j:integer;
  str:array of string;
begin
  ary1:=tadoquery.Create(application);
  ary1.Connection:=datamod.Database1;
  qry2:=tadoquery.Create(application);
  qry2.Connection:=datamod.Database1;
 j:=0;
 formzhantao.DBEdit2.Text:=edit1.Text;
 s:=edit1.Text;
 sal:='';
 s1:='';
 if trim(s)<>'' then
 begin
     setlength(str,length(s)+1);
     for i:=1 to length(s) do
      str[i]:='';
     for i:=1 to length(s) do
      if (s[i] in [#39..#47]) or (s[i] in [#60..#62]) then
       str[i]:=s[i];
     for i:=1 to length(s) do
       if str[i]<>'' then
       begin
        if i=1 then
           sal:=str[i]
        else
        begin
         if i-j=1 then
           sal:=sal+str[i]
         else
         begin
           s1:=copy(s,j+1,i-j-1);
           ary1.Close;
           ary1.SQL.Clear;
           ary1.SQL.Text:='select * from syssalfields where chinename='''+s1+'''';
           ary1.Open;
           if not ary1.Eof then
           begin
            sal:=sal+ary1.fieldbyname('name').asstring+str[i];
            qry2.Close;
            qry2.SQL.Clear;
            qry2.SQL.Text:='select calmore from ztandp where penglishname='''+ary1.fieldbyname('name').asstring+'''';
            qry2.Open;
            if datamod.adoztandp.fieldbyname('calmore').asinteger<=qry2.fieldbyname('calmore').asinteger then
             datamod.ADOztandp.FieldByName('calmore').asinteger:=qry2.fieldbyname('calmore').asinteger+1;
           end
           else
            sal:=sal+copy(s,j+1,i-j-1)+str[i];
         end;
        end;
        j:=i;
       end;
       s1:=copy(s,j+1,i-j);
       ary1.Close;
       ary1.SQL.Clear;
       ary1.SQL.Text:='select * from syssalfields where chinename='''+s1+'''';
       ary1.Open;
       if not ary1.Eof then
       begin
          sal:=sal+ary1.fieldbyname('name').asstring;
          qry2.Close;
          qry2.SQL.Clear;
          qry2.SQL.Text:='select calmore from ztandp where penglishname='''+ary1.fieldbyname('name').asstring+'''';
          qry2.Open;
          if datamod.adoztandp.fieldbyname('calmore').asinteger<=qry2.fieldbyname('calmore').asinteger then
           datamod.ADOztandp.FieldByName('calmore').asinteger:=qry2.fieldbyname('calmore').asinteger+1;
       end
       else
        sal:=sal+copy(s,j+1,i-j);
 end
 else
    datamod.ADOztandp.FieldByName('calmore').asinteger:=0;
 if trim(datamod.ADOztandp.fieldbyname('calmore').asstring)='' then
   datamod.ADOztandp.FieldByName('calmore').asinteger:=0;
 datamod.ADOztandp.fieldbyname('calfromenglish').asstring:=sal;

end;

procedure TFormaddzt1.DBGrid1DblClick(Sender: TObject);
begin
 edit1.Text:=adodataset2.fieldbyname('gongshi').asstring;
end;

procedure TFormaddzt1.Button8Click(Sender: TObject);
begin
 if adodataset2.State=dsedit then
  adodataset2.Post;
 groupbox3.Visible:=false;
 groupbox2.Visible:=true;
 groupbox2.align:=alclient;
end;

procedure TFormaddzt1.Button7Click(Sender: TObject);
begin
 edit1.Text:=adodataset2.fieldbyname('gongshi').asstring;

end;

procedure TFormaddzt1.Button6Click(Sender: TObject);
begin
 if application.MessageBox(pchar('确定要删除'+adodataset2.fieldbyname('gongshi').asstring+'公式吗?'),'提示',mb_okcancel+mb_iconwarning)=idok then
   adodataset2.Delete;
end;

procedure TFormaddzt1.Button5Click(Sender: TObject);
begin
 adodataset2.Insert;
 button:=true;
 panel2.Visible:=true;
end;

procedure TFormaddzt1.Edit1Click(Sender: TObject);
begin
 start:=edit1.SelStart;
end;

procedure TFormaddzt1.Button9Click(Sender: TObject);
begin
 if trim(dbedit1.text)='' then
  application.MessageBox('对不起,函数名不能为空','提示',mb_ok)
 else
 begin
  if (adodataset2.State=dsedit) or(adodataset2.State=dsinsert) then
   adodataset2.Post;
  if button then
  begin
   if application.MessageBox('是否继续增加?','提示',mb_okcancel+mb_iconinformation)=idok then
    adodataset2.Insert
   else
    panel2.Visible:=false;
  end
  else
    panel2.Visible:=false;
 end;
end;

procedure TFormaddzt1.Button10Click(Sender: TObject);
begin
 adodataset2.Cancel;
 panel2.Visible:=false;
end;

procedure TFormaddzt1.Button11Click(Sender: TObject);
begin
 button:=false;
 adodataset2.Edit ;
 panel2.Visible:=true;
end;

end.

⌨️ 快捷键说明

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