uusermaint.pas

来自「我收集的一些Delphi动态连接库资料」· PAS 代码 · 共 86 行

PAS
86
字号
unit uUserMaint;
interface

uses
  Windows, Messages, SysUtils, Variants, Classes,DBClient,udmUser,uIUserMaint;

type

  TUserMaint = class (TIUserMaint)
  private
    UserDM:TUserDM;
  public
    function GetDepList: TStrings;override;
    function GetUserList(strName:String): OLEVariant;override;
    procedure UpdateUserData(UserData:OleVariant;out  ErrCount: Integer);override;
    constructor create;override;
    destructor Destroy;override;
  end;

implementation


{
********************************** TUserMaint **********************************
}
constructor TUserMaint.create;
begin
  UserDM:=TUserDM.Create(nil);
end;

destructor TUserMaint.Destroy;
begin
  freeandnil(UserDM);
  inherited;
end;

function TUserMaint.GetDepList:TStrings;
var
  i: Integer;
  tmpstrs:TStrings;
begin
  tmpstrs:=TStringlist.Create;
  with UserDM do
  try
    if not adcUser.Connected then
       adcUser.Connected:=True;
    adqTemp.sql.Clear;
    adqTemp.sql.add('select * from M_BMBM');
    adqTemp.Open;
    for i:=1 to  adqTemp.RecordCount do
    begin
      tmpstrs.Add(adqTemp.Fieldbyname('BMMC').AsString);
      adqTemp.Next;
    end;
    adqTemp.Close;
    result:=tmpstrs;
  finally
    adcUser.Connected:=False;
  end;
end;

function TUserMaint.GetUserList(strName:String): OLEVariant;
begin
  with UserDM do
  try
    if not adcUser.Connected then
       adcUser.Connected:=True;
    with  adqByName do
    begin
      close;
      Parameters.ParamByName('name').value:='%'+strName+'%';
      open;
      result:=dspUser.Data;
    end;
  finally
    adcUser.Connected:=False;
  end;
end;

procedure TUserMaint.UpdateUserData(UserData:OleVariant;out  ErrCount: Integer);
begin
  UserDM.dspUser.ApplyUpdates(UserData,0,ErrCount);
end;

end.

⌨️ 快捷键说明

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