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

📄 cfx4datalib.pas

📁 Chart FX for Delphi 2005
💻 PAS
字号:
unit Cfx4DataLib;
{$TYPEDADDRESS OFF}
{$WARN SYMBOL_PLATFORM OFF}
{$WRITEABLECONST ON}
{$VARPROPSETTER ON}

interface

uses Windows, ActiveX, Classes, Graphics, OleCtrls, ComObj, AxCtrls, Variants, BDE;

const
  // TypeLibrary Major and minor versions
  Cfx4DataLibMajorVersion = 1;
  Cfx4DataLibMinorVersion = 0;

  CLASS_CfxDataArray: TGUID = '{A1A32A8C-41A5-11D2-819F-00104B62BDDA}';
  CLASS_CfxDataAdo: TGUID = '{FBBAAC49-3DBA-11D2-9BF0-00104B62BDDA}';
  CLASS_CfxAdoDataBind: TGUID = '{8DA7A0E1-3E73-11D2-819F-00104B62BDDA}';
  CLASS_CfxOleDB: TGUID = '{FE31D5A7-3E6A-11D2-819F-00104B62BDDA}';
  CLASS_CfxDataFile: TGUID = '{CD1FE64D-4320-11D2-819F-00104B62BDDA}';
  CLASS_CfxDataBde: TGUID = '{CD1FE64E-4320-11D2-819F-00104B62BDDA}';

type CfxFileDateFormat = SmallInt;
const
  CFXFILE_MDY: SmallInt = 0;
  CFXFILE_DMY: SmallInt = 1;
  CFXFILE_YMD: SmallInt = 2;


type
  ICfxDataArray = interface;
  ICfxDataBde = interface;
  ICfxDataFile = interface;
  ICfxOleDB = interface;
  ICfxDataAdo = interface;

 
//*********************************************************************//
// Class: ICfxDataArray
//*********************************************************************//
  ICfxDataArray = interface(IDispatch)
    ['{A1A32A8F-41A5-11D2-819F-00104B62BDDA}']
    procedure AddArray(var vArray: OLEVariant); safecall;
    procedure set_UseLastArrayItem(Param1: WordBool); safecall;
  end;

//*********************************************************************//
// Class: ICfxDataBde
//*********************************************************************//
  ICfxDataBde = interface(IDispatch)
    ['{D2EB1740-74C4-11D2-B88F-00105A273451}']
    procedure set_StmtHandle(Param1: hDBICur); safecall;
  end;

//*********************************************************************//
// Class: ICfxDataFile
//*********************************************************************//
  ICfxDataFile = interface(IDispatch)
    ['{CD1FE64F-4320-11D2-819F-00104B62BDDA}']
    procedure set_FileName(const Param1: WideString); safecall;
    procedure set_StrictTypes(Param1: WordBool); safecall;
    procedure set_DateFormat(Param1: TOleEnum); safecall;
  end;

//*********************************************************************//
// Class: ICfxOleDB
//*********************************************************************//
  ICfxOleDB = interface(IDispatch)
    ['{FE31D5A6-3E6A-11D2-819F-00104B62BDDA}']
    procedure set_Rowset(Param1: OLEVariant); safecall;
  end;

//*********************************************************************//
// Class: ICfxDataAdo
//*********************************************************************//
  ICfxDataAdo = interface(IDispatch)
    ['{FBBAAC48-3DBA-11D2-9BF0-00104B62BDDA}']
    procedure set_ResultSet(Param1: IDispatch); safecall;
  end;

Type
  CfxDataArray = class;
  CfxDataBde = class;
  CfxDataFile = class;
  CfxOleDB = class;
  CfxDataAdo = class;

//*********************************************************************//
// Class: CfxDataArray
//*********************************************************************//
  CfxDataArray = class
  private
    DefaultInterface : ICfxDataArray;
  public
    constructor Create;
  protected
// Properties
    procedure Set_UseLastArrayItem(val: Boolean);
  public
// Methods
    procedure AddArray(var vArray: array of Single); overload;
    procedure AddArray(var vArray: array of Double); overload;
    procedure AddArray(var vArray: array of WideString); overload;
    procedure AddArray(var vArray: array of String); overload;
    procedure AddArray(var vArray: array of Integer); overload;
    procedure AddArray(var vArray: array of Smallint); overload;
    property UseLastArrayItem: Boolean write Set_UseLastArrayItem;
    property InterfacePtr : ICfxDataArray read DefaultInterface;
  end;

//*********************************************************************//
// Class: CfxDataBde
//*********************************************************************//
  CfxDataBde = class
  private
    DefaultInterface : ICfxDataBde;
  public
    constructor Create;
  protected
// Properties
    procedure Set_StmtHandle(val: hDBICur);
  public
// Methods
    property StmtHandle: hDBICur write Set_StmtHandle;
    property InterfacePtr : ICfxDataBde read DefaultInterface;
  end;
 
//*********************************************************************//
// Class: CfxDataFile
//*********************************************************************//
  CfxDataFile = class
  private
    DefaultInterface : ICfxDataFile;
  public
    constructor Create;
  protected
// Properties
    procedure Set_DateFormat(val: CfxFileDateFormat);
    procedure Set_StrictTypes(val: Boolean);
    procedure Set_FileName(const val: WideString);
  public
// Methods
    property DateFormat: CfxFileDateFormat write Set_DateFormat;
    property StrictTypes: Boolean write Set_StrictTypes;
    property FileName: WideString write Set_FileName;
    property InterfacePtr : ICfxDataFile read DefaultInterface;
  end;
 
//*********************************************************************//
// Class: CfxOleDB
//*********************************************************************//
  CfxOleDB = class
  private
    DefaultInterface : ICfxOleDB;
  public
    constructor Create;
  protected
// Properties
    procedure Set_Rowset(val: OleVariant);
  public
// Methods
    property Rowset: OLEVariant write Set_Rowset;
    property InterfacePtr : ICfxOleDB read DefaultInterface;
  end;
 
//*********************************************************************//
// Class: CfxDataAdo
//*********************************************************************//
  CfxDataAdo = class
  private
    DefaultInterface : ICfxDataAdo;
  public
    constructor Create;
  protected
// Properties
    procedure Set_ResultSet(val: OLEVariant);
  public
// Methods
    property ResultSet: OLEVariant write Set_ResultSet;
    property InterfacePtr : ICfxDataAdo read DefaultInterface;
  end;


implementation


procedure CfxDataArray.Set_UseLastArrayItem(val: Boolean);
begin
   DefaultInterface.Set_UseLastArrayItem(WordBool(val));
end;

procedure CfxDataArray.AddArray(var vArray: array of Smallint);
var
  v: OleVariant;
  i,l,h: Smallint;
begin
    l := Low(vArray);
    h := High(vArray);
    V:= VarArrayCreate ([l,h], varSmallint) ;
    for i:=l to h do
      v[i] := vArray[i];
    DefaultInterface.AddArray(v);
    TVarData(v).VType := varOleStr;
end;

procedure CfxDataArray.AddArray(var vArray: array of integer);
var
  v: OleVariant;
  i,l,h: Smallint;
begin
    l := Low(vArray);
    h := High(vArray);
    V:= VarArrayCreate ([l,h], varInteger) ;
    for i:=l to h do
      v[i] := vArray[i];
    DefaultInterface.AddArray(v);
    TVarData(v).VType := varOleStr;
end;

procedure CfxDataArray.AddArray(var vArray: array of single);
var
  v: OleVariant;
  i,l,h: Smallint;
begin
    l := Low(vArray);
    h := High(vArray);
    V:= VarArrayCreate ([l,h], varSingle) ;
    for i:=l to h do
      v[i] := vArray[i];
    DefaultInterface.AddArray(v);
    TVarData(v).VType := varInteger;
end;

procedure CfxDataArray.AddArray(var vArray: array of double);
var
  v: OleVariant;
  i,l,h: Smallint;
begin
    l := Low(vArray);
    h := High(vArray);
    V:= VarArrayCreate ([l,h], varDouble) ;
    for i:=l to h do
      v[i] := vArray[i];
    DefaultInterface.AddArray(v);
    TVarData(v).VType := varInteger;
end;

procedure CfxDataArray.AddArray(var vArray: array of WideString);
var
  v: OleVariant;
  i,l,h: Smallint;
begin
    l := Low(vArray);
    h := High(vArray);
    V:= VarArrayCreate ([l,h], varOleStr) ;
    for i:=l to h do
      v[i] := vArray[i];
    DefaultInterface.AddArray(v);
    TVarData(v).VType := varInteger;
end;

procedure CfxDataArray.AddArray(var vArray: array of String);
var
  v: OleVariant;
  i,l,h: Smallint;
begin
    l := Low(vArray);
    h := High(vArray);
    V:= VarArrayCreate ([l,h], varOleStr) ;
    for i:=l to h do
      v[i] := vArray[i];
    DefaultInterface.AddArray(v);
    TVarData(v).VType := varInteger;
end;

constructor CfxDataArray.Create();
begin
  DefaultInterface := CreateComObject(CLASS_CfxDataArray) as ICfxDataArray;
  DefaultInterface.set_UseLastArrayItem(true);
end;

procedure CfxDataBde.Set_StmtHandle(val: hDBICur);
begin
   DefaultInterface.Set_StmtHandle(val);
end;

constructor CfxDataBde.Create();
begin
    DefaultInterface := CreateComObject(CLASS_CfxDataBde) as ICfxDataBde;
end;

procedure CfxDataFile.Set_DateFormat(val: CfxFileDateFormat);
begin
   DefaultInterface.Set_DateFormat(TOleEnum(val));
end;

procedure CfxDataFile.Set_StrictTypes(val: Boolean);
begin
   DefaultInterface.Set_StrictTypes(WordBool(val));
end;

procedure CfxDataFile.Set_FileName(const val: WideString);
begin
   DefaultInterface.Set_FileName(val);
end;

constructor CfxDataFile.Create;
begin
   DefaultInterface := CreateComObject(CLASS_CfxDataFile) as ICfxDataFile;
end;

procedure CfxOleDB.Set_Rowset(val: OLEVariant);
begin
   DefaultInterface.Set_Rowset(val);
end;

constructor CfxOleDB.Create;
begin
    DefaultInterface := CreateComObject(CLASS_CfxOleDB) as ICfxOleDB;
end;

procedure CfxDataAdo.Set_ResultSet(val: OLEVariant);
begin
   DefaultInterface.Set_ResultSet(val);
end;

constructor CfxDataAdo.Create;
begin
   DefaultInterface := CreateComObject(CLASS_CfxDataAdo) as ICfxDataAdo;
end;

end.

⌨️ 快捷键说明

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