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

📄 ufrmmain.pas

📁 一个会议签到系统
💻 PAS
📖 第 1 页 / 共 3 页
字号:
unit uFrmMain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, ExtCtrls, dxExEdtr, dxCntner, dxTL,
  dxDBCtrl, dxDBGrid, Buttons, ImgList, CheckLst, Mask, DBCtrls, DB, ADODB,
  DBClient, Provider;

type
  TFrmMain = class(TForm)
    StatusBar1: TStatusBar;
    Panel1: TPanel;
    Bevel1: TBevel;
    Panel2: TPanel;
    Bevel2: TBevel;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    TabSheet3: TTabSheet;
    TabSheet4: TTabSheet;
    Panel3: TPanel;
    Panel4: TPanel;
    Panel5: TPanel;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    TrvMenu: TTreeView;
    IMGTree: TImageList;
    Panel6: TPanel;
    TrvBM: TTreeView;
    SpeedButton5: TSpeedButton;
    TrvHY: TTreeView;
    Panel7: TPanel;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    EdtKHMC: TEdit;
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    SpbtnRefresh: TSpeedButton;
    SpbtnExport: TSpeedButton;
    dxDBGrid1: TdxDBGrid;
    dxDBGridColumn1: TdxDBGridColumn;
    dxDBGridColumn2: TdxDBGridColumn;
    ADOTable1: TADOTable;
    DataSource1: TDataSource;
    SpeedButton11: TSpeedButton;
    SpeedButton12: TSpeedButton;
    SpeedButton13: TSpeedButton;
    PnlRenA: TPanel;
    dxDBGrid1Column4: TdxDBGridColumn;
    dxDBGrid1Column5: TdxDBGridColumn;
    dxDBGrid1Column6: TdxDBGridColumn;
    AdoQ_HYCX: TADOQuery;
    DataSource2: TDataSource;
    Panel11: TPanel;
    SpeedButton4: TSpeedButton;
    SpeedButton14: TSpeedButton;
    SpeedButton15: TSpeedButton;
    SpeedButton16: TSpeedButton;
    Panel12: TPanel;
    SpeedButton6: TSpeedButton;
    Edit1: TEdit;
    SpeedButton17: TSpeedButton;
    TabSheet5: TTabSheet;
    LBoxRen: TListBox;
    LBoxRenA: TListBox;
    PnlRen: TPanel;
    QrvV_BM: TADOQuery;
    Label9: TLabel;
    Panel10: TPanel;
    Label10: TLabel;
    Edit2: TEdit;
    Label11: TLabel;
    Edit3: TEdit;
    SpeedButton18: TSpeedButton;
    ADOQ_HY: TADOQuery;
    DataSource3: TDataSource;
    dxDBGrid2: TdxDBGrid;
    ADODBA: TADOQuery;
    ADODBB: TADOQuery;
    dxDBGrid1Column8: TdxDBGridColumn;
    SpeedButton19: TSpeedButton;
    ADOQ_HYRC: TADOQuery;
    DataSource4: TDataSource;
    Panel9: TPanel;
    Panel14: TPanel;
    TrvHYA: TTreeView;
    Panel15: TPanel;
    TrvHYAA: TTreeView;
    SpeedButton9: TSpeedButton;
    SpeedButton22: TSpeedButton;
    SpeedButton10: TSpeedButton;
    Bevel6: TBevel;
    ListBox2: TListBox;
    Panel18: TPanel;
    TabSheet7: TTabSheet;
    Panel21: TPanel;
    Panel23: TPanel;
    TrvHYB: TTreeView;
    dxDBGrid3: TdxDBGrid;
    dxDBGrid3Column1: TdxDBGridColumn;
    dxDBGrid3Column2: TdxDBGridColumn;
    dxDBGrid3Column3: TdxDBGridColumn;
    dxDBGrid3Column4: TdxDBGridColumn;
    dxDBGrid3Column5: TdxDBGridColumn;
    dxDBGrid3Column6: TdxDBGridColumn;
    dxDBGrid3Column7: TdxDBGridColumn;
    Edit6: TEdit;
    SpeedButton28: TSpeedButton;
    Bevel3: TBevel;
    Bevel4: TBevel;
    SpeedButton29: TSpeedButton;
    TrvE: TTreeView;
    ADOQry_HYRen: TADOQuery;
    DataSource5: TDataSource;
    dxDBGrid3Column9: TdxDBGridColumn;
    CDSA: TClientDataSet;
    DSPA: TDataSetProvider;
    dxDBGrid3Column10: TdxDBGridColumn;
    dxDBGrid3Column11: TdxDBGridColumn;
    SpeedButton7: TSpeedButton;
    dxDBGrid3Column12: TdxDBGridColumn;
    SpeedButton23: TSpeedButton;
    dxDBGrid2Column1: TdxDBGridColumn;
    dxDBGrid2Column2: TdxDBGridColumn;
    dxDBGrid2Column3: TdxDBGridColumn;
    dxDBGrid2Column4: TdxDBGridColumn;
    dxDBGrid2Column5: TdxDBGridColumn;
    dxDBGrid2Column6: TdxDBGridColumn;
    dxDBGrid2Column7: TdxDBGridColumn;
    dxDBGrid2Column8: TdxDBGridColumn;
    dxDBGrid2Column9: TdxDBGridColumn;
    ComboBox1: TComboBox;
    CBoxHYLB: TCheckBox;
    dxDBGrid1Column9: TdxDBGridColumn;
    dxDBGrid1Column10: TdxDBGridColumn;
    dxDBGrid1Column11: TdxDBGridColumn;
    ComboBox2: TComboBox;
    CBoxFenZua: TCheckBox;
    dxDBGrid5: TdxDBGrid;
    dxDBGrid5Column1: TdxDBGridColumn;
    dxDBGrid5Column2: TdxDBGridColumn;
    dxDBGrid5Column3: TdxDBGridColumn;
    dxDBGrid5Column4: TdxDBGridColumn;
    dxDBGrid5Column5: TdxDBGridColumn;
    SpeedButton24: TSpeedButton;
    SpeedButton25: TSpeedButton;
    Bevel5: TBevel;
    SpeedButton8: TSpeedButton;
    dxDBGrid5Column6: TdxDBGridColumn;
    DataSource6: TDataSource;
    CDSB: TClientDataSet;
    SpeedButton20: TSpeedButton;
    SpeedButton21: TSpeedButton;
    Label2: TLabel;
    Edit4: TEdit;
    procedure SpeedButton11Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure SpbtnSaveClick(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton13Click(Sender: TObject);
    procedure SpbtnExportClick(Sender: TObject);
    procedure TrvBMChange(Sender: TObject; Node: TTreeNode);
    procedure SpeedButton4Click(Sender: TObject);
    procedure SpeedButton14Click(Sender: TObject);
    procedure SpeedButton15Click(Sender: TObject);
    procedure SpeedButton16Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure SpeedButton6Click(Sender: TObject);
    procedure TrvMenuChange(Sender: TObject; Node: TTreeNode);
    procedure SpeedButton17Click(Sender: TObject);
    procedure SpeedButton18Click(Sender: TObject);
    procedure SpeedButton19Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure TrvHYAChange(Sender: TObject; Node: TTreeNode);
    procedure SpeedButton22Click(Sender: TObject);
    procedure SpeedButton9Click(Sender: TObject);
    procedure SpeedButton10Click(Sender: TObject);
    procedure TrvHYBChange(Sender: TObject; Node: TTreeNode);
    procedure SpeedButton7Click(Sender: TObject);
    procedure TrvHYAAChange(Sender: TObject; Node: TTreeNode);
    procedure SpeedButton23Click(Sender: TObject);
    procedure TrvHYChange(Sender: TObject; Node: TTreeNode);
    procedure SpeedButton8Click(Sender: TObject);
    procedure SpbtnRefreshClick(Sender: TObject);
    procedure CBoxHYLBClick(Sender: TObject);
    procedure CBoxFenZuaClick(Sender: TObject);
    procedure SpeedButton28Click(Sender: TObject);
    procedure SpeedButton29Click(Sender: TObject);
    procedure Edit6Enter(Sender: TObject);
    procedure Edit6Click(Sender: TObject);
    procedure SpeedButton24Click(Sender: TObject);
    procedure SpeedButton25Click(Sender: TObject);
    procedure SpeedButton20Click(Sender: TObject);
  private
    Procedure PInitData();
     

    procedure PLoadTrvData;
    Procedure PFillFenZu();


    { Private declarations }
  public
    sSYSSQL:String;
    { Public declarations }
  end;

var
  FrmMain: TFrmMain;

implementation

uses uDMOA, uDataOA, uFunSys, uFrmA01_HY, uFunKQ, uFrmHYRenE, uFrmTY;

{$R *.dfm}

procedure TFrmMain.SpeedButton11Click(Sender: TObject);
begin
  ADOTable1.Cancel;
end;

procedure TFrmMain.FormCreate(Sender: TObject);

begin
  Application.Title:='会议签到';
  PInitData();
  ADOTable1.Open; 
end;

procedure TFrmMain.SpbtnSaveClick(Sender: TObject);

begin
end;

//Add
procedure TFrmMain.SpeedButton1Click(Sender: TObject);
var
  FrmX:TFrmA01_HY;
begin
  FrmX:=TFrmA01_HY.Create(Application);
  FrmX.Visible:=False;
  FrmX.BorderStyle:=bsDialog;
  FrmX.Position:=poScreenCenter;
  FrmX.Edit1.Text:='';
  FrmX.DTPA.DateTime:=now;
  FrmX.DTPB1.Time:=0;FrmX.DTPB2.Time:=0;
  FrmX.iFlag:=0;
  sSYSSQL:=''; 
  FrmX.ShowModal;
  if sSYSSQL = '' then Exit;
  PInitData();
end;

procedure TFrmMain.PInitData;
var
  Str:String;
begin
  Str:='Select * from TAD02_HY order by sBM';
  FCarryOutSQL(DMOA.ADOQry ,Str,True);
  PCuiFengFillTreeD(TrvMenu,DMOA.ADOQry,'sBM','sMC');
  
  PCuiFengFillTreeD(TrvHY,DMOA.ADOQry,'sBM','sMC');
  PCuiFengFillTreeD(TrvHYA,DMOA.ADOQry,'sBM','sMC');
  PCuiFengFillTreeD(TrvHYB,DMOA.ADOQry,'sBM','sMC');
  PCuiFengFillTreeD(TrvE,DMOA.ADOQry,'sBM','sMC');

end;

procedure TFrmMain.SpeedButton2Click(Sender: TObject);
var
  Str,S:String;
  FrmX:TFrmA01_HY;
begin
  if TrvMenu.Selected = nil then Exit;
  if TrvMenu.Selected.AbsoluteIndex = 0 then Exit;

  S:=MyCutString(True,TrvMenu.Selected.Text);
  Str:='Select * from TAD02_HY Where sBM ='+''''+S+'''';
  FCarryOutSQL(DMOA.ADOQry ,Str,True);


  FrmX:=TFrmA01_HY.Create(Application);
  FrmX.Visible:=False;
  FrmX.BorderStyle:=bsDialog;
  FrmX.Position:=poScreenCenter;

  FrmX.iFlag:=1;
  Str:=Trim(DMOA.ADOQry.FieldByName('sBM').AsString);
  FrmX.Edit1.Text:=Str;
  Str:=Trim(DMOA.ADOQry.FieldByName('sDateYMD').AsString);
  if Str <> '' then FrmX.DTPA.Date:=StrToDate(Str);
  Str:=Trim(DMOA.ADOQry.FieldByName('sDateHMSA').AsString);
  if Str <> '' then FrmX.DTPB1.Time:=StrToTime(Str);
  Str:=Trim(DMOA.ADOQry.FieldByName('sDateHMSB').AsString);
  if Str <> '' then FrmX.DTPB2.Time:=StrToTime(Str);
  FrmX.Edit1.Enabled:=False;
  Str:=Trim(DMOA.ADOQry.FieldByName('sMC').AsString);
  FrmX.Edit3.text:=str;

  Str:=Trim(DMOA.ADOQry.FieldByName('sBZ').AsString);
  FrmX.Edit2.text:=str;

  FrmX.ShowModal;
    PInitData();

end;
       //加载考勤机
procedure TFrmMain.SpeedButton13Click(Sender: TObject);
var
  Str:String;
begin
  Str:='Select * from TAD02_HY order by sBM';
  FCarryOutSQL(DMOA.ADOQry ,Str,True);
  PCuiFengFillTreeD(TrvHY,DMOA.ADOQry,'sBM','sMC');
end;


{-------------------------------------------------------------------------------
*	记录格式为:000000 00:00 00000000 00 0
*	前六位为卡号,00:00为时间,再八位为时间如20010806,再二两位为机
*	器编号,最后一位为类型标识
*    类型标识:1为中途外入,2为中途外出,3为门禁读头读卡,0为正常读卡
-------------------------------------------------------------------------------}
{**********    下载考勤数据 ********}
{**********    硬件接口函数 ********}
{****************** 给考勤机设置时间********************}


procedure TFrmMain.SpbtnExportClick(Sender: TObject);
var
  Str:String;
  dlg:TSaveDialog;
begin
  dlg:=TSaveDialog.Create(nil);
  dlg.DefaultExt:='*.XLS';
  dlg.Filter:='Execl文件|*.XLS';
  if not dlg.Execute then Exit;
  Str:=LowerCase(dlg.FileName);
  Str:=MyCutOutStringB('.xls',Str)+'.xls';//扩展名重复问题
  dxDBGrid1.SaveToXLS(Str,True);
end;


procedure TFrmMain.TrvBMChange(Sender: TObject; Node: TTreeNode);
var
  Str,sBM:String;
begin
  if TrvBM.Selected = nil then Exit;
  Str:=TrvBM.Selected.Text;
  sBM:=MyCutString(True,Str);
  Str:='Select * from TBD01_RYXX Where sBMLH Like '+''''+sBM+'%'+''''
     +' order by sBMLH';    
 
  FCarryOutSQL(DMOA.ADOQry,Str,True);
  DMOA.ADOQry.First;LBoxRen.Items.Clear;  
  While not DMOA.ADOQry.Eof do begin
     Str:=Trim(DMOA.ADOQry.FieldByName('sKH').AsString)
         +' '+Trim(DMOA.ADOQry.FieldByName('sMC').AsString)
         +'                           '
         +Trim(DMOA.ADOQry.FieldByName('sFZID').AsString);

     LBoxRen.Items.Add(Str);
     DMOA.ADOQry.Next; 
  end;
  PnlRen.Caption:='人数:'+IntToStr(DMOA.ADOQry.RecordCount);
end;

procedure TFrmMain.SpeedButton4Click(Sender: TObject);
var
  I,J,n:integer;
  Str,S,SA:String;
begin
  I:=LBoxRen.ItemIndex;
  if I < 0 then Exit;
    
  
      Str:=LBoxRen.Items.Strings[I];
      Str:=MyCutString(False,Str);

⌨️ 快捷键说明

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