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

📄 canfind.pas

📁 pasa人力资源考勤管理系统
💻 PAS
📖 第 1 页 / 共 2 页
字号:
var b1,b2:boolean;
begin
  if (trim(combobox1.text)+trim(combobox2.text)+trim(combobox3.text)
  +trim(combobox4.text)+trim(combobox5.text)+trim(combobox6.text)
  +trim(combobox7.text)+trim(combobox8.text)+trim(combobox9.text)
  +trim(combobox10.text)+trim(combobox11.text)
  +trim(combobox13.text)+trim(combobox14.text)+trim(combobox15.text)+trim(combobox16.text))='' then
  begin
   changetrue:=true;
   exit;
  end;
  if (trim(combobox4.text)<>'') and (trim(combobox3.text)='') then
  begin
    Application.Messagebox('请在第一个条件和第二个条件之间选择一种关系','Error',mb_ok+mb_iconerror);
    changetrue:=true;
    exit;
  end;
  if (trim(combobox7.text)<>'') and (trim(combobox6.text)='') then
  begin
    Application.Messagebox('请在第二个条件和第三个条件之间选择一种关系','Error',mb_ok+mb_iconerror);
    changetrue:=true;
    exit;
  end;
  if (trim(combobox10.text)<>'') and (trim(combobox9.text)='') then
  begin
    Application.Messagebox('请在第三个条件和第四个条件之间选择一种关系','Error',mb_ok+mb_iconerror);
    changetrue:=true;
    exit;
  end;
  if (trim(combobox1.text)='') or (trim(combobox2.text)='') or (trim(combobox13.text)='') then
   b1:=true
  else
   b1:=false;
  if (trim(combobox1.text)+trim(combobox2.text)+trim(combobox13.text))<>'' then
   b2:=true
  else
   b2:=false;
  if b1 and b2 then
    begin
      Application.Messagebox('第一个条件不合格','Warning',mb_ok+mb_iconwarning);
      changetrue:=true;
      exit;
    end;
  if (trim(combobox4.text)='') or (trim(combobox5.text)='') or (trim(combobox14.text)='') then
   b1:=true
  else
   b1:=false;
  if (trim(combobox4.text)+trim(combobox5.text)+trim(combobox14.text))<>'' then
   b2:=true
  else
   b2:=false;
  if b1 and b2 then
    begin
      Application.Messagebox('第二个条件不合格','Warning',mb_ok+mb_iconwarning);
      changetrue:=true;
      exit;
    end;
  if (trim(combobox7.text)='') or (trim(combobox8.text)='') or (trim(combobox15.text)='') then
   b1:=true
  else
   b1:=false;
  if (trim(combobox7.text)+trim(combobox8.text)+trim(combobox15.text))<>'' then
   b2:=true
  else
   b2:=false;
  if b1 and b2 then
    begin
      Application.Messagebox('第三个条件不合格','Warning',mb_ok+mb_iconwarning);
      changetrue:=true;
      exit;
    end;
  if (trim(combobox10.text)='') or (trim(combobox11.text)='') or (trim(combobox16.text)='') then
   b1:=true
  else
   b1:=false;
  if (trim(combobox10.text)+trim(combobox11.text)+trim(combobox16.text))<>'' then
   b2:=true
  else
   b2:=false;
  if b1 and b2 then
    begin
      Application.Messagebox('第四个条件不合格','Warning',mb_ok+mb_iconwarning);
      changetrue:=true;
      exit;
    end;
  changetrue:=false;
end;

procedure Tformcanfind.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
  begin
    key:=#0;
    selectnext(Activecontrol,true,true);
  end;
end;

procedure Tformcanfind.SpeedButton1Click(Sender: TObject);
begin
  combobox1.Text :='';
  combobox2.Text :='';
  combobox3.Text :='';
  combobox13.Text :='';
  speedbutton1.Enabled :=false;
end;

procedure Tformcanfind.SpeedButton2Click(Sender: TObject);
begin
  combobox4.Text :='';
  combobox5.Text :='';
  combobox6.Text :='';
  combobox14.Text :='';
  speedbutton2.Enabled :=false;
end;

procedure Tformcanfind.SpeedButton3Click(Sender: TObject);
begin
  combobox7.Text :='';
  combobox8.Text :='';
  combobox9.Text :='';
  combobox15.Text :='';
  speedbutton3.Enabled :=false;
end;

procedure Tformcanfind.SpeedButton4Click(Sender: TObject);
begin
  combobox10.Text :='';
  combobox11.Text :='';
  combobox16.Text :='';
  speedbutton4.Enabled :=false;
end;

procedure Tformcanfind.ComboBox1Change(Sender: TObject);
var fs:string;
begin
 speedbutton1.Enabled :=true;
 if trim(combobox1.text)<>'' then
  begin
   fs:=adt.Fields[strtoint(copy(combobox1.text,1,2))-1].FieldName;
   itemadd('13',fs);
  end;
end;

procedure Tformcanfind.ComboBox4Change(Sender: TObject);
var fs:string;
begin
 speedbutton2.Enabled :=true;
 if trim(combobox4.text)<>'' then
  begin
    fs:=adt.Fields[strtoint(copy(combobox4.text,1,2))-1].FieldName;
    itemadd('14',fs);
  end;
end;

procedure Tformcanfind.ComboBox7Change(Sender: TObject);
var fs:string;
begin
 speedbutton3.Enabled :=true;
 if trim(combobox7.text)<>'' then
  begin
    fs:=adt.Fields[strtoint(copy(combobox7.text,1,2))-1].FieldName;
    itemadd('15',fs);
  end;
end;

procedure Tformcanfind.ComboBox10Change(Sender: TObject);
var fs:string;
begin
 speedbutton4.Enabled :=true;
 if trim(combobox10.text)<>'' then
  begin
   fs:=adt.Fields[strtoint(copy(combobox10.text,1,2))-1].FieldName;
   itemadd('16',fs);
  end;
end;

procedure Tformcanfind.itemadd(cs,f:string);
var cbx:Tcombobox;
begin
  cbx:=Tcombobox(findcomponent('combobox'+cs));
  with cbx do
  begin
    cbx.Clear;
    datamod.ADOQuery1.sql.Clear;
    datamod.ADOQuery1.sql.Add('select distinct('+f+') from '+tabname+' ');
    datamod.ADOQuery1.open;
    while not datamod.ADOQuery1.eof do
    begin
      cbx.Items.Add(datamod.ADOQuery1.fields[0].AsString);
      datamod.ADOQuery1.next;
    end;
    datamod.ADOQuery1.close;
  end;
end;

procedure Tformcanfind.N1Click(Sender: TObject);
var i:0..5;
begin
  for i:=1 to fcount1 do
   if dbgrid1.SelectedIndex =findex[i] then
    begin
     fsort[i]:='ASC';
     exit;
    end;
  if fcount1<5 then
   begin
    fcount1:=fcount1+1;
    findex[fcount1]:=dbgrid1.selectedindex;
    fsort[fcount1]:='ASC';
    dbgrid1.Columns[dbgrid1.selectedindex].Color :=clgray;
   end;
end;

procedure Tformcanfind.N2Click(Sender: TObject);
var i:0..5;
begin
  for i:=1 to fcount1 do
   if dbgrid1.SelectedIndex =findex[i] then
    begin
     fsort[i]:='DESC';
     exit;
    end;
  if fcount1<5 then
   begin
    fcount1:=fcount1+1;
    findex[fcount1]:=dbgrid1.selectedindex;
    fsort[fcount1]:='DESC';
    dbgrid1.Columns[dbgrid1.selectedindex].Color :=clgray;
   end;
end;

procedure Tformcanfind.N4Click(Sender: TObject);
var i:0..5;
    sortexp:string;
begin
  sortexp:='';
  for i:=1 to fcount1 do
  begin
   if dbgrid1.Columns[findex[i]].Color=clgray then
    begin
     sortexp:=Sortexp+dbgrid1.Columns[findex[i]].FieldName+' '+fsort[i];
     if i<fcount1 then Sortexp:=Sortexp+',';
    end;
  end;
  if sortexp<>'' then
  begin
   // if aryB then ary.Sort :=sortexp;
   // if adtB then adt.Sort :=sortexp;
   adoquery1.Sort :=sortexp;
  end;
end;

procedure Tformcanfind.N3Click(Sender: TObject);
var i:1..5;
begin
  for i:=1 to fcount1 do
    dbgrid1.Columns[findex[i]].Color :=clwindow;
  fcount1:=0;
end;

procedure Tformcanfind.DBGrid1TitleClick(Column: TColumn);
begin
   if f='DESC' then
     f:='ASC'
   else
     f:='DESC';
   adoquery1.Sort :=column.FieldName+' '+f;
end;

//用创建的checkbox来执行已存在的copycheck的click事件
procedure Tformcanfind.copycheckClick(Sender: TObject);
begin
  SpnNewshowClick(sender);
end;

procedure tformcanfind.showcomboxitem(y:integer);
var i:integer;
    s:string;
    ckx:Tcheckbox;
begin
  s:='';
  for i:=0 to y-1 do
  begin
   ckx:=Tcheckbox(findcomponent('check'+inttostr(i)));
   with ckx do
   begin
     if i<9 then
       s:='0'+inttostr(i+1)+'  '+ckx.caption
     else
       s:=inttostr(i+1)+'  '+ckx.caption;
     combobox1.Items.add(s);
     combobox4.Items.add(s);
     combobox7.Items.add(s);
     combobox10.Items.add(s);
    end;
   end;
end;

procedure Tformcanfind.ToolButton4Click(Sender: TObject);
begin
  close;
end;

procedure Tformcanfind.ToolButton1Click(Sender: TObject);
begin
  SpnNewshowclick(sender);
end;

procedure Tformcanfind.SpnToExcelClick(Sender: TObject);
begin
  formmain.output.Click;
end;

procedure Tformcanfind.ToolButton5Click(Sender: TObject);
begin
  formmain.output.Click;
end;

procedure Tformcanfind.SpnPrintClick(Sender: TObject);
begin
     command:=AdoQuery1.sql.text;
     formprintsel:=TFormprintsel.create(self);
     formprintsel.showmodal;
     formprintsel.free;
end;
end.

⌨️ 快捷键说明

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