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

📄 saldatabrow.pas

📁 pasa人力资源考勤管理系统
💻 PAS
字号:
unit saldatabrow;
interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Mask, DBCtrls, ExtCtrls, Grids, DBGrids, ComCtrls, RXCtrls,
  ToolWin, ImgList, Buttons, Db, ADODB;
type
  TFormsaldatabrow = class(TForm)
    ImageList1: TImageList;
    ToolBar1: TToolBar;
    ToolButton4: TToolButton;
    DBNavigator1: TDBNavigator;
    Panel2: TPanel;
    DBGrid3: TDBGrid;
    Panel3: TPanel;
    Bevel2: TBevel;
    Panel4: TPanel;
    Label507: TLabel;
    Edit1: TEdit;
    Label37: TLabel;
    ADOQuery1: TADOQuery;
    Panel1: TPanel;
    Label502: TLabel;
    Label501: TLabel;
    Label503: TLabel;
    Label504: TLabel;
    Label506: TLabel;
    DBText1: TDBText;
    DBText2: TDBText;
    DBText3: TDBText;
    DBText4: TDBText;
    DBText5: TDBText;
    Label505: TLabel;
    DBText7: TDBText;
    Label500: TLabel;
    DBText6: TDBText;
    DBText8: TDBText;
    DBCheckBox2: TDBCheckBox;
    DBCheckBox3: TDBCheckBox;
    GroupBox1: TGroupBox;
    Sys: TScrollBox;
    GroupBox2: TGroupBox;
    GroupBox3: TGroupBox;
    mustgive: TScrollBox;
    mustdec: TScrollBox;
    Label600: TLabel;
    DBEdit500: TDBEdit;
    Label602: TLabel;
    Label601: TLabel;
    DBEdit501: TDBEdit;
    Label603: TLabel;
    Label604: TLabel;
    DBEdit502: TDBEdit;
//    procedure ToolButton4Click(Sender: TObject);
    procedure tbnfindClick(Sender: TObject);
    procedure ToolButton7Click(Sender: TObject);
    procedure DBGrid1Exit(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure FormCreate(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure DBGrid3TitleClick(Column: TColumn);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
  private
    f:string;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Formsaldatabrow: TFormsaldatabrow;

implementation

uses datamol,main,saldata,publicfunction, salary, salcal;
{$R *.DFM}

procedure TFormsaldatabrow.tbnfindClick(Sender: TObject);
begin
    findrecorder(datamod.Adosaldata,'Adosaldata','sal21010');
end;

procedure TFormsaldatabrow.ToolButton7Click(Sender: TObject);
begin
  if not assigned(salaryreport) then
     salaryreport:=tsalaryreport.create(self);
     salaryreport.show;
end;

procedure TFormsaldatabrow.DBGrid1Exit(Sender: TObject);
begin
   (Sender as TDBGrid).Visible:=false;
end;
procedure TFormsaldatabrow.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if (key=#13) and (trim(edit1.text)<>'') then
  begin
    if not datamod.adosaldata.locate('workno;monthy',VarArrayOf([edit1.text,formsaldata.MaskEdit1.text]),[]) then
    if not datamod.adosaldata.locate('cardno;monthy',VarArrayOf([edit1.text,formsaldata.MaskEdit1.text]),[]) then
    if not datamod.adosaldata.locate('name;monthy',VarArrayOf([edit1.text,formsaldata.MaskEdit1.text]),[]) then
      application.messagebox('对不起,找不到你指定的人','查找不到',mb_ok+mb_iconinformation);
  end;
end;

procedure TFormsaldatabrow.FormCreate(Sender: TObject);
var labe:array of tlabel;
    edit:array of tdbedit;
    i,j,j1,k,k1,h,h1,sysx,sysy,mustgivex,mustgivey,mustdecx,mustdecy,d1,d2,d3:integer;
begin
  adoquery1.close;
  adoquery1.sql.clear;
  adoquery1.sql.add('select * from syssalfields where name<>''monthy''');
  adoquery1.Open;
  setlength(labe,adoquery1.RecordCount );
  setlength(edit,adoquery1.RecordCount );
  i:=1;
  j:=0; k:=0;h:=0;d1:=0;d2:=0;d3:=0;
  sysx:=14;sysy:=12;
  mustgivex:=14;mustgivey:=12;
  mustdecx:=14;mustdecy:=12;
  while not adoquery1.Eof do
  begin
    if (adoquery1.FieldByName('show').asboolean) and (adoquery1.fieldbyname('name').asstring <>'monthy') and (adoquery1.fieldbyname('name').asstring <>'workno') and (adoquery1.fieldbyname('name').asstring <>'cardno') and (adoquery1.fieldbyname('name').asstring <>'name') and
    (adoquery1.fieldbyname('name').asstring <>'deptno') and (adoquery1.fieldbyname('name').asstring <>'deptname') and (adoquery1.fieldbyname('name').asstring <>'indate') and (adoquery1.fieldbyname('name').asstring <>'mankind') and (adoquery1.fieldbyname('name').asstring <>'mustgive') and (adoquery1.fieldbyname('name').asstring <>'mustdec') and (adoquery1.fieldbyname('name').asstring <>'factmoney') then
    begin
      labe[i]:=tlabel.Create(self);
      edit[i]:=tdbedit.create(self);
      case adoquery1.FieldByName('flat').asinteger of
      0:
        begin
          labe[i].Parent:=sys;
          edit[i].parent:=sys;
          if (j mod 5)<>0 then
          begin
            d1:=0;
            sysx:=sysx+121;
            j1:=sysx;
            labe[i].Left :=j1;
            labe[i].top :=sysy;
            edit[i].Left:=j1+56;
            edit[i].Top:=sysy-2;
          end
          else
          begin
            if (d1<>0)  then
             sysx:=sysx+121
            else
            begin
              sysx:=14;
              if j<>0 then
               sysy:=sysy+27;
            end;
            d1:=1;
            labe[i].Left :=sysx;
            edit[i].Left:=sysx+56;
            labe[i].Top:=sysy;
            edit[i].Top:=sysy-2;
          end;

          labe[i].Caption:=adoquery1.fieldbyname('changechinename').asstring;
          if length(labe[i].caption)>8 then
          begin
           labe[i].WordWrap:=true;
           labe[i].Top:=labe[i].Top-4;
           labe[i].Width:=52;
           labe[i].Height:=26;
          end
          else
          begin
           labe[i].WordWrap:=false;
           labe[i].Width:=52;
           labe[i].Height:=13;
          end;
          labe[i].Font.Color:=clblack;
          labe[i].ParentColor:=false;
          labe[i].Show;
          edit[i].Width:=55;
          edit[i].Height:=21;
          //edit[i].Color:=clfuchsia;
          edit[i].Font.Color:=clfuchsia;
          edit[i].DataSource:=DataMod.DSsaldata;
          edit[i].DataField:=adoquery1.fieldbyname('name').asstring;
          edit[i].Show;
          inc(j);
        end;
      1:
        begin
          labe[i].Parent:=mustgive;
          edit[i].parent:=mustgive;
          if (k mod 5)<>0 then
          begin
            d2:=0;

            mustgivex:=mustgivex+121;
            j1:=mustgivex;
            labe[i].Left :=j1;
            labe[i].top :=mustgivey;
            edit[i].Left:=j1+56;
            edit[i].Top:=mustgivey-2;
          end
          else
          begin
            if (d2<>0)  then
             mustgivex:=mustgivex+121
            else
            begin
              mustgivex:=14;
              if k<>0 then
               mustgivey:=mustgivey+27;
            end;
            d2:=1;
            labe[i].Left :=mustgivex;
            edit[i].Left:=mustgivex+56;
            labe[i].Top:=mustgivey;
            edit[i].Top:=mustgivey-2;
          end;
          labe[i].Caption:=adoquery1.fieldbyname('changechinename').asstring;
          if length(labe[i].caption)>8 then
          begin
           labe[i].WordWrap:=true;
           labe[i].Top:=labe[i].Top-4;
           labe[i].Width:=52;
           labe[i].Height:=26;
          end
          else
          begin
           labe[i].WordWrap:=false;
           labe[i].Width:=52;
           labe[i].Height:=13;
          end;
          labe[i].Font.Color:=clblack;
          labe[i].Show;
          edit[i].Width:=55;
          edit[i].Height:=21;
          edit[i].Font.Color:=clblue;
          edit[i].DataSource:=DataMod.DSsaldata;
          edit[i].DataField:=adoquery1.fieldbyname('name').asstring;
          edit[i].Show;
          inc(k);
        end;
      2:
        begin
          labe[i].Parent:=mustdec;
          edit[i].parent:=mustdec;
          if (h mod 5)<>0 then
          begin
            d3:=0;
            mustdecx:=mustdecx+121;
            j1:=mustdecx;
            labe[i].Left :=j1;
            labe[i].top :=mustdecy;
            edit[i].Left:=j1+56;
            edit[i].Top:=mustdecy-2;
          end
          else
          begin
            if (d3<>0)  then
             mustdecx:=mustdecx+121
            else
            begin
              mustdecx:=14;
              if h<>0 then
               mustdecy:=mustdecy+27;
            end;
            d3:=1;
            labe[i].Left :=mustdecx;
            edit[i].Left:=mustdecx+56;
            labe[i].Top:=mustdecy;
            edit[i].Top:=mustdecy-2;
          end;
          labe[i].Caption:=adoquery1.fieldbyname('changechinename').asstring;
          if length(labe[i].caption)>8 then
          begin
           labe[i].WordWrap:=true;
           labe[i].Top:=labe[i].Top-4;
           labe[i].Width:=52;
           labe[i].Height:=26;
          end
          else
          begin
           labe[i].WordWrap:=false;
           labe[i].Width:=52;
           labe[i].Height:=13;
          end;
          labe[i].Font.Color:=clblack;
          labe[i].Show;
          edit[i].Width:=55;
          edit[i].Height:=21;
          edit[i].Font.Color:=clgreen;
          edit[i].DataSource:=DataMod.DSsaldata;
          edit[i].DataField:=adoquery1.fieldbyname('name').asstring;
          edit[i].Show;
          inc(h);
        end;
      end;
      labe[i].Font.Size:=9;
      inc(i);
    end;
    adoquery1.Next;
  end;
  adoquery1.close;
  adoquery1.sql.clear;
  adoquery1.sql.add('select * from salnoname');
  adoquery1.Open;
  if not adoquery1.eof then
  begin
  // label47.caption:=adoquery1.fieldbyname('noname1').asstring; label47.update;
  // label48.caption:=adoquery1.fieldbyname('noname2').asstring; label48.update;
 //label50.caption:=adoquery1.fieldbyname('noname3').asstring; label50.update;
// label51.caption:=adoquery1.fieldbyname('noname4').asstring; label51.update;
  // label53.caption:=adoquery1.fieldbyname('noname5').asstring; label53.update;
  // label57.caption:=adoquery1.fieldbyname('noname6').asstring; label57.update;
  // label58.caption:=adoquery1.fieldbyname('noname7').asstring; label58.update;
  // label60.caption:=adoquery1.fieldbyname('noname8').asstring; label60.update;
 //  label61.caption:=adoquery1.fieldbyname('noname9').asstring; label61.update;
 //  label67.caption:=adoquery1.fieldbyname('noname10').asstring; label67.update;
  // label70.caption:=adoquery1.fieldbyname('noname11').asstring; label70.update;

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

procedure TFormsaldatabrow.DBGrid3TitleClick(Column: TColumn);
begin
     if f='DESC' then
     f:='ASC'
   else
     f:='DESC';
   datamod.ADOsaldata.Sort :=column.FieldName+' '+f;
end;
procedure TFormsaldatabrow.FormKeyPress(Sender: TObject; var Key: Char);
begin

  if key=#13 then
  begin
    if activecontrol<>edit1 then
    begin
      key:=#0;
      selectnext(Activecontrol,true,true);
    end;
  end;
end;

end.

⌨️ 快捷键说明

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