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

📄 uqrypage.pas

📁 关于利用DELPHI来进行企业级方案解决的著作的附书源码
💻 PAS
字号:

unit uQryPage;

interface

uses
  Windows, Messages, SysUtils, Classes, HTTPApp, WebModu, HTTPProd,
  MidItems, WebForm, WebComp, CompProd, PagItems, SiteProd, WebAdapt,
   DBAdapt;

type
  TQryPage = class(TWebPageModule)
    AdapterPageProducer: TAdapterPageProducer;
    AdapterForm1: TAdapterForm;
    LayoutGroup1: TLayoutGroup;
    AdapterGrid1: TAdapterGrid;
    ColEMPID: TAdapterDisplayColumn;
    ColNAME: TAdapterDisplayColumn;
    ColSEX: TAdapterDisplayColumn;
    ColBIRTHDAY: TAdapterDisplayColumn;
    ColTIMEJOIN: TAdapterDisplayColumn;
    ColTEL: TAdapterDisplayColumn;
    ColDEP: TAdapterDisplayColumn;
    ColMARRIAGE: TAdapterDisplayColumn;
    ColEDUCATION: TAdapterDisplayColumn;
    ColADMJOB: TAdapterDisplayColumn;
    ColTYPEOFEMP: TAdapterDisplayColumn;
    AdapterCommandGroup1: TAdapterCommandGroup;
    CmdPrevPage: TAdapterActionButton;
    CmdGotoPage: TAdapterActionButton;
    CmdNextPage: TAdapterActionButton;
    adpQry: TAdapter;
    adaQryName: TAdapterAction;
    adfName: TAdapterField;
    AdapterForm2: TAdapterForm;
    LayoutGroup2: TLayoutGroup;
    AdapterFieldGroup1: TAdapterFieldGroup;
    AdapterCommandGroup2: TAdapterCommandGroup;
    adfEdu: TAdapterField;
    adaQry: TAdapterAction;
    FldadfName: TAdapterDisplayField;
    LayoutGroup3: TLayoutGroup;
    AdapterFieldGroup2: TAdapterFieldGroup;
    AdapterCommandGroup3: TAdapterCommandGroup;
    CmdadaQryName: TAdapterActionButton;
    CmdadaQry: TAdapterActionButton;
    adfTypeOfEmp: TAdapterField;
    adfCount: TAdapterField;
    LayoutGroup4: TLayoutGroup;
    FldadfEdu: TAdapterDisplayField;
    FldadfTypeOfEmp: TAdapterDisplayField;
    FldadfCount: TAdapterDisplayField;
    adaMail: TAdapterAction;
    LayoutGroup5: TLayoutGroup;
    AdapterFieldGroup3: TAdapterFieldGroup;
    AdapterCommandGroup4: TAdapterCommandGroup;
    CmdadaMail: TAdapterActionButton;
    procedure adaQryNameExecute(Sender: TObject; Params: TStrings);
    procedure adpQryBeforeExecuteAction(Sender, Action: TObject;
      Params: TStrings; var Handled: Boolean);
    procedure adfNameGetValue(Sender: TObject; var Value: Variant);
    procedure WebPageModuleActivate(Sender: TObject);
    procedure adaQryExecute(Sender: TObject; Params: TStrings);
    procedure adfEduGetValue(Sender: TObject; var Value: Variant);
    procedure adfTypeOfEmpGetValue(Sender: TObject; var Value: Variant);
    procedure adfTypeOfEmpGetDisplayText(Sender: TObject;
      var Value: String);
    procedure adfEduGetDisplayText(Sender: TObject; var Value: String);
    procedure adfCountGetValue(Sender: TObject; var Value: Variant);
  private
    FQryName,FEdu,FTypeOfEmp:string;
    FPage:string;
    FCount:integer;
  public
    { Public declarations }
  end;

  function QryPage: TQryPage;

implementation

{$R *.dfm}  {*.html}

uses WebReq, WebCntxt, WebFact, Variants, wdmDB, home;

function QryPage: TQryPage;
begin
  Result := TQryPage(WebContext.FindModuleClass(TQryPage));
end;

procedure TQryPage.adaQryNameExecute(Sender: TObject; Params: TStrings);
var
  SQLStr:string;
begin
  SQLStr:='select * from  BasicInfo where Name like '
         +#39+'%'+FQryName+'%'+#39;
  wdm.adqBasicInfo.Close;
  wdm.adqBasicInfo.SQL.Clear;
  wdm.adqBasicInfo.SQL.Add(SQLStr);
  wdm.adqBasicInfo.Open;
  Fcount:=wdm.adqBasicInfo.recordcount;
  FldadfCount.HideOptions:=[];
end;

procedure TQryPage.adpQryBeforeExecuteAction(Sender, Action: TObject;
  Params: TStrings; var Handled: Boolean);
begin
  if Assigned(adfName.ActionValue)  then
      FQryName:=adfName.ActionValue.Values[0];
  if Assigned(adfEdu.ActionValue)  then
      FEdu:=adfEdu.ActionValue.Values[0];
  if Assigned(adfTypeOfEmp.ActionValue)  then
      FTypeOfEmp:=adfTypeOfEmp.ActionValue.Values[0];
end;

procedure TQryPage.adfNameGetValue(Sender: TObject; var Value: Variant);
begin
  Value:=FQryName;
end;

procedure TQryPage.WebPageModuleActivate(Sender: TObject);
begin
  FQryName:='';
  FEdu:='';
  FTypeOfEmp:='';
  FldadfCount.HideOptions:=[hoHideAlways];
end;

procedure TQryPage.adaQryExecute(Sender: TObject; Params: TStrings);
var
  LocateParams:TLocateParams;
  strEdu,strTypeOfEmp:string;
  SqlStr:string;
  sEmailTo:string;
  i:integer;
begin
  strEdu:='Education='+#39+FEdu+#39;
  strTypeOfEmp:='TypeOfEmp='+#39+FTypeOfEmp+#39;
  SQLStr:='select * from  BasicInfo where '
          +strEdu+' and '+strTypeOfEmp;
  wdm.adqBasicInfo.Close;
  wdm.adqBasicInfo.SQL.Clear;
  wdm.adqBasicInfo.SQL.Add(SQLStr);
  wdm.adqBasicInfo.Open;
  Fcount:=wdm.adqBasicInfo.recordcount;
  wdm.adqBasicInfo.First;
  for  i:=1  to  Fcount-1 do
  begin
    sEmailTo:=sEmailTo+wdm.adqBasicInfo.fieldbyname('name').AsString+',';
    wdm.adqBasicInfo.Next;
  end;
  hrhome.Session.Values['EmailTo'] :=
    sEmailTo+wdm.adqBasicInfo.fieldbyname('name').AsString;
  FldadfCount.HideOptions:=[];
end;

procedure TQryPage.adfEduGetValue(Sender: TObject; var Value: Variant);
begin
  Value:=FEdu;
end;

procedure TQryPage.adfTypeOfEmpGetValue(Sender: TObject;
  var Value: Variant);
begin
  Value:=FTypeOfEmp;
end;

procedure TQryPage.adfTypeOfEmpGetDisplayText(Sender: TObject;
  var Value: String);
begin
  Value:=FTypeOfEmp;
end;

procedure TQryPage.adfEduGetDisplayText(Sender: TObject;
  var Value: String);
begin
  Value:=FEdu;
end;

procedure TQryPage.adfCountGetValue(Sender: TObject; var Value: Variant);
begin
  Value:=FCount;
end;

initialization
  if WebRequestHandler <> nil then
    WebRequestHandler.AddWebModuleFactory(TWebPageModuleFactory.Create(TQryPage, TWebPageInfo.Create([wpPublished, wpLoginRequired], '.html', '', '人员查询'), crOnDemand, caCache));

end.

⌨️ 快捷键说明

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