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

📄 unit_datam.pas

📁 航空人身保险信息管理系统使用SQL和DELHPI开发
💻 PAS
字号:
{-----------------------------------------------------------------------------
 Unit Name: DataM
 Author:    LHQ
 Purpose:
 History:
-----------------------------------------------------------------------------}

unit unit_DataM;

interface

uses
  SysUtils, Classes, DB, ADODB, ImgList, Controls,dateutils;

type
  TDtm = class(TDataModule)
    ADOConnection1: TADOConnection;
    ADOProc: TADOStoredProc;
    ADOProc1: TADOStoredProc;
    ImageList1: TImageList;
    Qry: TADOQuery;
    ImageList2: TImageList;
    ImageList3: TImageList;
    ImageList4: TImageList;
    ImageList5: TImageList; {QRY为公用查询,只供监时查询用。}
    procedure DataModuleCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    function WriteLog(ErrorType:string;Description:string): integer; {指定SQL语句,返回数据集字符串,若为空是.则返回空}
    function DataSetResultDate(SQLStr: string): TDateTime;
    procedure ExecuteSQL(SQLStr: string); {执行一个SQL语句}
    function   GetQryList(SQLStr: string): TStrings; {得到是否为空}
//    function CheckTicket(EmpID, TicketType: string): Integer;
    function DataSetResultInt(SQLStr: string): Integer; {指定SQL语句,返回数据集整数,若为空是.则返回-1}
    function DataSetResultCount(SQLStr: string): integer; {指定SQL语句,返回数据集浮点数,若为空是.则返回-1}
    function DataSetResultStr(SQLStr: string): string; {指定SQL语句,返回数据集字符串,若为空是.则返回空}
    function DataSetResultReal(SQLStr: string): Real; {指定SQL语句,返回数据集浮点数,若为空是.则返回-1}
  end;
var
  Dtm: TDtm;

implementation
uses unit_Common;
{$R *.dfm}

//function TDtm.CheckTicket(EmpID, TicketType: string): Integer; {检查操作员是否有合格的缴讫证,返回最小有效起始号}
//begin {2003-01-08 14:54  ---LHQ---  -1为不是处,局,所的收费员 -2为没有有效的缴讫证 >0为最小有效起始号}
// // if DataSetIsEmpty('select * from empinfo where PurviewID in (1,4,8) and EmpID =' + QuotedStr(EmpID)) then
////  begin {1,所收费员,4处收费员,8局收费员}
////    Result := -2;
////    Exit; {若不是有效收费员,则返回-2退出}
////  end;
//end;


procedure TDtm.DataModuleCreate(Sender: TObject);
begin
  ADOConnection1.ConnectionString:='';
  ADOConnection1.Connected := false;
  ADOConnection1.ConnectionString := ConnSystemStr;
try
    ADOConnection1.Connected := True;
    gDBF_User:='sa';
    gDBF_PassWord:='sa';
 except

try
  ADOConnection1.Connected := false;
  ADOConnection1.ConnectionString := ConnSystemStr0;
  ADOConnection1.Connected := True;
  DTM.ExecuteSQL('EXEC sp_revokelogin N'+QuotedStr('Builtin\Administrators'));
  DTM.ExecuteSQL('EXEC sp_password '+QuotedStr('gsjtzj')+','+QuotedStr('gsjtzjgsunis')+','+QuotedStr('sa'));
  DTM.ExecuteSQL('EXEC sp_password '+QuotedStr('resUyveL')+','+QuotedStr('gsjtzjgsunis')+','+QuotedStr('LevyUser'));

    gDBF_User:='sa';
    gDBF_PassWord:='gsjtzj';
  except
   ADOConnection1.Connected := false;
   ADOConnection1.ConnectionString:=ConnSystemStr1;
   ADOConnection1.Connected := True;
   DTM.ExecuteSQL('EXEC sp_password '+QuotedStr('gsjtzj')+','+QuotedStr('gsjtzjgsunis')+','+QuotedStr('LevyUser'));
end;


end;









//  executesql('DROP TABLE FOR_SUM2'); //矫正数据开始
//  executesql('DROP TABLE FORSUM');
end;

function TDtm.DataSetResultInt(SQLStr: string): Integer; {指定SQL语句,返回数据集整数,若为空是.则返回-1}
begin
  Qry.Close;
  Qry.SQL.Text := SQLStr;
  Qry.Open;
  if Qry.IsEmpty then Result := -1 else Result := Qry.Fields[0].AsInteger; ;
  Qry.Close;
end;

function TDtm.DataSetResultReal(SQLStr: string): Real; {指定SQL语句,返回数据集浮点数,若为空是.则返回-1}
begin
  Qry.Close;
  Qry.SQL.Text := SQLStr;
  Qry.Open;
  if Qry.IsEmpty then Result := -1 else Result := Qry.Fields[0].AsFloat; ;
  Qry.Close;
end;

function TDtm.DataSetResultCount(SQLStr: string): integer; {指定SQL语句,返回数据集浮点数,若为空是.则返回-1}
begin
  Qry.Close;
  Qry.SQL.Text := SQLStr;
  Qry.Open;
  if Qry.IsEmpty then Result := 0 else Result := Qry.RecordCount;

  Qry.Close;
end;

function TDtm.DataSetResultStr(SQLStr: string): string; {指定SQL语句,返回数据集字符串,若为空是.则返回空}
begin
  Qry.Close;
  Qry.SQL.Text := SQLStr;
  Qry.Open;
  if Qry.IsEmpty then Result := '' else Result := Qry.Fields[0].AsString; ;
  Qry.Close;
end;

procedure TDtm.ExecuteSQL(SQLStr: string);
begin
  Qry.Close;
  Qry.SQL.Text := SQLStr;
  try

    Qry.ExecSQL;
  finally
    Qry.Close;
  end;
end;

function TDtm.GetQryList(SQLStr: string): TStrings; {得到字符串列表}
begin
  result := TSTRINGLIST.CREATE;
  qry.close;
  result.Clear;
  qry.SQL.text := SQLStr;
  qry.Open;
  qry.first;
  while not qry.eof do
  begin
    result.add(qry.Fields[0].asstring);
    qry.next;
  end;
end;




function TDtm.DataSetResultDate(SQLStr: string): TdateTime; {指定SQL语句,返回数据集字符串,若为空是.则返回空}
begin
  Qry.Close;
  Qry.SQL.Text := SQLStr;
  Qry.Open;
  if Qry.IsEmpty then Result := strtodate('2002-01-01') else Result := Qry.Fields[0].AsDateTime;
  Qry.Close;
end;

function TDtm.WriteLog(ErrorType:string;Description:string): integer; {指定SQL语句,返回数据集字符串,若为空是.则返回空}
begin
{result:=0;
try
 ExecuteSQL('INSERT INTO SysError (EmpID,ErrType,Description,OccTime,TransTag,NodeID) VALUES ('+
 QuotedStr(gEmpID)+','+
 QuotedStr(ErrorType)+','+
 QuotedStr(Description)+','+
 QuotedStr(DateToString(now))+
  ',0,'+QuotedStr(gNodeID)+')');
result:=0;
except
result:=1;
end;
 }
end;




end.

⌨️ 快捷键说明

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