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

📄 changeschedefine.pas

📁 pasa人力资源考勤管理系统
💻 PAS
📖 第 1 页 / 共 3 页
字号:
    for i:=0 to Listbox2.Items.Count-1 do
    begin
      if ansicomparetext(trim(copy(listbox2.items[i],1,10)),Edit1.text)=0 then
      begin
         have:=true;
         p:=i;
      end;
    end;
    if not have then
    begin
      Qry1.Close;
      Qry1.sql.text:='Select * from per24010 where workno='''+Edit1.text+''' and leave=0 ';
      Qry1.open;
      if not Qry1.eof then
      begin
           listbox2.Items.Add(Qry1.fieldbyname('workno').asstring+'  '+
                              Qry1.fieldbyname('name').asstring+'  '+
                              Qry1.fieldbyname('sexname').asstring);
           listbox2.ItemIndex:=Listbox2.Items.count-1;
      end else
         Application.MessageBox('没有该工号的员工','Error',mb_ok+mb_iconerror);
    end;
    listbox2.ItemIndex:=p;
    edit1.Clear;
  end;
  label25.Caption:=inttostr(listbox2.items.count);
  label25.update;
end;

procedure Tformchangeschedefine.RG1Click(Sender: TObject);
begin
    if rg1.ItemIndex=0 then  //全厂
    begin
       combobox1.enabled:=false;
       listbox1.enabled:=false;
       speedbutton1.enabled:=false;
       speedbutton2.enabled:=false;
       Listbox2.clear;
       Qry1.close;
       Qry1.sql.text:='Select * from per24010 where  stoppay=0 and leave=0 ';
       //Qry1.sql.text:='Select * from per24010 where brushcard=1 and stoppay=0 and leave=0 ';
       Qry1.open;
       while not Qry1.eof do
       begin
           listbox2.Items.Add(Qry1.fieldbyname('workno').asstring+'   '+
                              Qry1.fieldbyname('name').asstring+'   '+
                              Qry1.fieldbyname('sexname').asstring);
           Qry1.next;
       end;
    label25.caption:=inttostr(listbox2.items.count);
    label25.update;
    end else                //部分
    begin
       combobox1.enabled:=true;
       listbox1.enabled:=true;
       speedbutton1.enabled:=true;
       speedbutton2.enabled:=true;
    end;
end;

procedure Tformchangeschedefine.SpeedButton1Click(Sender: TObject);
var i:integer;
begin
    for i:=0 to listbox1.items.count-1 do
    begin
       if listbox1.Selected[i] then
         if listbox2.items.indexof(listbox1.items[i])<0 then
         listbox2.Items.add(listbox1.items[i]);
    end;
    label25.caption:=inttostr(listbox2.items.count);
    label25.update;
end;

procedure Tformchangeschedefine.SpeedButton2Click(Sender: TObject);
var i:integer;
begin
    for i:=0 to listbox1.items.count-1 do
      if listbox2.items.indexof(listbox1.items[i])<0 then
        listbox2.items.add(listbox1.items[i]);
    label25.caption:=inttostr(listbox2.items.count);
    label25.update;
end;

procedure Tformchangeschedefine.SpeedButton3Click(Sender: TObject);
///2003/04/05
var i,j,k:integer;
    list:TStringList;
begin
  j:=0;
  list:=TStringList.Create;
  for i:=0 to listbox2.items.count-1 do
       list.add(listbox2.items[i]);
  //for i:=0 to listbox2.items.count-1 do
   // begin
   //j:=i;
   // break;
   // end;
 k:=0;
 for i:=0 to listbox2.items.count-1 do
    if listbox2.Selected[i] then
    begin
    j:=i;
      list.delete(j-k);
      inc(k);
    end;
  listbox2.items.clear;
  for i:=0 to list.Count-1 do
    listbox2.Items.Add(list.Strings[i]);
  for i:=0 to list.count-1 do
    if j=list.count then
    begin
    //listbox2.itemindex:=j-1 ;
    listbox2.selected[j-1]:=true;
     end
     else
     begin
    //listbox2.itemindex:=j;
    listbox2.selected[j]:=true;
    break;
    end;
    ////////////////////////////////
    label25.caption:=inttostr(listbox2.items.count);
    label25.update;
end;

procedure Tformchangeschedefine.SpeedButton4Click(Sender: TObject);
begin
  listbox2.clear;
    label25.caption:=inttostr(listbox2.items.count);
    label25.update;
end;

procedure Tformchangeschedefine.ListBox1DblClick(Sender: TObject);
begin
  if listbox2.items.indexof(listbox1.items[listbox1.itemindex])<0 then
     listbox2.items.add(listbox1.items[listbox1.itemindex]);
end;

procedure Tformchangeschedefine.DBEdit2Exit(Sender: TObject);
begin
  if not datamod.ADOchangebc.Fieldbyname('endrq').isnull then
   begin
   if not isdate(dbedit2.text) then
    begin
      Application.messagebox('您必须输入一个正确的日期,否则您的作业将产生一想不到的结果','Warning',mb_ok+mb_iconwarning);
      dbedit2.SetFocus;
      exit;
    end;
    if dbedit2.text<dbedit1.text then
     begin
      showmessage('后面的日期不能小于前面的日期');
      exit;
     end;
   end
end;
procedure Tformchangeschedefine.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  //datamod.adochangebc.cancel;

end;

procedure Tformchangeschedefine.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=VK_F1 then
      begin
      Application.HelpFile :=Extractfilepath(application.ExeName)+ 'help\pasahelp.hlp';
      application.HelpJump('SHM_CONTENTS0019');
    end;
end;
procedure Tformchangeschedefine.Indata(var cx:Tbcdfield;lb1:string;decrease:string);
var h,m:string;   //第一个时段
begin
  if length(lb1)>1 then
   begin
    h:=copy(lb1,1,pos('小时',lb1)-1);
    m:=copy(lb1,pos('时',lb1)+2,pos('分',lb1)-pos('时',lb1)-2);
   end else exit;
  cx.DataSet.edit;
  if length(decrease)>1 then
    if strtoint(m)>=strtoint(decrease) then
      cx.Value:=strtoint(h)+(strtoint(m)-strtoint(decrease))/60
    else
      cx.Value:=(strtoint(h)*60-strtoint(decrease)+strtoint(m))/60
  else
    cx.Value:=strtoint(h)+(strtoint(m)/60);


end;

procedure Tformchangeschedefine.wwDBLookupCombo1Exit(Sender: TObject);
begin
  Adoquery1.close;
  Adoquery1.sql.clear;
  Adoquery1.sql.Text:='select * from atd01010 ';
  Adoquery1.Open;
 { if ((adoquery1.Locate('scheno',wwDBLookupCombo1.Text,[])=false))  then
    begin
     fillnull1;
     showmessage('对不起该班次不是有效的班次');
    end
   else
     formchangeschedefine.filldata1;}
end;

procedure Tformchangeschedefine.DBCheckBox6Click(Sender: TObject);
begin
  // dbcheckbox22.Checked:=(sender as tdbcheckbox).checked;
end;

procedure Tformchangeschedefine.DBCheckBox7Click(Sender: TObject);
begin
  // dbcheckbox23.Checked:=(sender as tdbcheckbox).checked;
end;

procedure Tformchangeschedefine.DBCheckBox8Click(Sender: TObject);
begin
  // dbcheckbox24.Checked:=(sender as tdbcheckbox).checked;
end;

procedure Tformchangeschedefine.DBCheckBox9Click(Sender: TObject);
begin
  // dbcheckbox25.Checked:=(sender as tdbcheckbox).checked;
end;

procedure Tformchangeschedefine.DBCheckBox10Click(Sender: TObject);
begin
 //  dbcheckbox26.Checked:=(sender as tdbcheckbox).checked;
end;

procedure Tformchangeschedefine.DBCheckBox16Click(Sender: TObject);
begin
{ if dbcheckbox16.Checked then
   dbcombobox3.Enabled:=true
 else
   dbcombobox3.Enabled:=false;}
end;

procedure Tformchangeschedefine.DBNavigator1BeforeAction(Sender: TObject;
  Button: TNavigateBtn);
begin
if button in [nbfirst,nbprior,nbnext,nblast] then
begin
       formchangeschedefine.ListBox2.Clear;
       with datamod do
       begin
         ADOotman.First;
         while not ADOotman.eof do
         begin
           formchangeschedefine.ListBox2.Items.Add (ADOotman.fieldbyname('workno').asstring+copychar(' ',ADOotman.fieldbyname('workno').size-length(ADOotman.fieldbyname('workno').asstring))+'  '+
              ADOotman.fieldbyname('name').asstring+copychar(' ',ADOotman.fieldbyname('name').size-length(ADOotman.fieldbyname('name').asstring)));
           ADOotman.next;
         end;
       end;
end;
end;

procedure Tformchangeschedefine.DBCheckBox15Click(Sender: TObject);
begin
if dbcheckbox15.Checked then
 dbcheckbox21.Checked:=false ;
end;

procedure Tformchangeschedefine.DBCheckBox21Click(Sender: TObject);
begin
if dbcheckbox21.Checked then
 dbcheckbox15.Checked:=false ;
end;

procedure Tformchangeschedefine.DBEdit50Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOotmangotime1.Value<>'') and (datamod.ADOotmanouttime1.Value<>'')) then
  begin
    hours:=timedec1(datamod.ADOotmangotime1.Value,datamod.ADOotmanouttime1.Value);
    Indata(datamod.ADOotmanothours1,hours,dbedit50.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit57Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOotmangotime2.Value<>'') and (datamod.ADOotmanouttime2.Value<>'')) then
  begin
    hours:=timedec1(datamod.ADOotmangotime2.Value,datamod.ADOotmanouttime2.Value);
    Indata(datamod.ADOotmanothours2,hours,dbedit57.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit64Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOotmangotime3.Value<>'') and (datamod.ADOotmanouttime3.Value<>'')) then
  begin
    hours:=timedec1(datamod.ADOotmangotime3.Value,datamod.ADOotmanouttime3.Value);
    Indata(datamod.ADOotmanothours3,hours,dbedit64.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit71Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOotmangotime4.Value<>'') and (datamod.ADOotmanouttime4.Value<>'')) then
  begin
    hours:=timedec1(datamod.ADOotmangotime4.Value,datamod.ADOotmanouttime4.Value);
    Indata(datamod.ADOotmanothours4,hours,dbedit71.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit78Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOotmangotime5.Value<>'') and (datamod.ADOotmanouttime5.Value<>'')) then
  begin
    hours:=timedec1(datamod.ADOotmangotime5.Value,datamod.ADOotmanouttime5.Value);
    Indata(datamod.ADOotmanothours5,hours,dbedit79.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit10Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOchangebcgotime1.Value<>'') and (datamod.ADOchangebcouttime1.Value<>'')) then
  begin
    hours:=timedec(datamod.ADOchangebcgotime1.Value,datamod.ADOchangebcouttime1.Value);
    Indata(datamod.ADOchangebcdaytime1,hours,dbedit10.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit14Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOchangebcgotime2.Value<>'') and (datamod.ADOchangebcouttime2.Value<>'')) then
  begin
    hours:=timedec(datamod.ADOchangebcgotime2.Value,datamod.ADOchangebcouttime2.Value);
    Indata(datamod.ADOchangebcdaytime2,hours,dbedit14.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit15Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOchangebcgotime3.Value<>'') and (datamod.ADOchangebcouttime3.Value<>'')) then
  begin
    hours:=timedec(datamod.ADOchangebcgotime3.Value,datamod.ADOchangebcouttime3.Value);
    Indata(datamod.ADOchangebcdaytime3,hours,dbedit15.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit16Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOchangebcgotime4.Value<>'') and (datamod.ADOchangebcouttime4.Value<>'')) then
  begin
    hours:=timedec(datamod.ADOchangebcgotime4.Value,datamod.ADOchangebcouttime4.Value);
    Indata(datamod.ADOchangebcdaytime4,hours,dbedit16.Text);
  end;
end;
procedure Tformchangeschedefine.DBEdit20Exit(Sender: TObject);
var hours:string;
begin      //第一时段
  if ((datamod.ADOchangebcgotime5.Value<>'') and (datamod.ADOchangebcouttime5.Value<>'')) then
  begin
    hours:=timedec(datamod.ADOchangebcgotime5.Value,datamod.ADOchangebcouttime5.Value);
    Indata(datamod.ADOchangebcdaytime5,hours,dbedit20.Text);
  end;
end;

procedure Tformchangeschedefine.DBEdit81KeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
if key=vk_return then
begin
 datamod.adoquery1.Close;
 datamod.adoquery1.SQL.Clear;
 datamod.adoquery1.SQL.Text:='select * from atd11010 where otid='''+dbedit81.text+'''';
 datamod.adoquery1.Open;
 if not datamod.adoquery1.Eof then
 begin
  application.MessageBox('该单号的加班单已存在,请核实!','提示',mb_ok+mb_iconwarning);
  dbedit81.SetFocus;
 end;
end;
end;

procedure Tformchangeschedefine.wwDBLookupCombo2Exit(Sender: TObject);
begin
  Adoquery1.close;
  Adoquery1.sql.clear;
  Adoquery1.sql.Text:='select * from atd01010 ';
  Adoquery1.Open;
  if ((trim(wwDBLookupCombo2.text)<>'') and (adoquery1.Locate('scheno',wwDBLookupCombo2.Text,[])=true))  then
     filldata2;
end;

end.

⌨️ 快捷键说明

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