📄 datadrivereh.hpp
字号:
// CodeGear C++ Builder
// Copyright (c) 1995, 2007 by CodeGear
// All rights reserved
// (DO NOT EDIT: machine generated header) 'Datadrivereh.pas' rev: 11.00
#ifndef DatadriverehHPP
#define DatadriverehHPP
#pragma delphiheader begin
#pragma option push
#pragma option -w- // All warnings off
#pragma option -Vx // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp> // Pascal unit
#include <Sysinit.hpp> // Pascal unit
#include <Sysutils.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <Controls.hpp> // Pascal unit
#include <Db.hpp> // Pascal unit
#include <Windows.hpp> // Pascal unit
#include <Variants.hpp> // Pascal unit
#include <Contnrs.hpp> // Pascal unit
#include <Toolctrlseh.hpp> // Pascal unit
#include <Dbcommon.hpp> // Pascal unit
#include <Memtabledataeh.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Datadrivereh
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TUpdateErrorActionEh { ueaBreakAbortEh, ueaBreakRaiseEh, ueaCountinueEh, ueaRetryEh, ueaCountinueSkip };
#pragma option pop
class DELPHICLASS TDataDriverEh;
typedef void __fastcall (__closure *TDataDriverProduceDataReaderEhEvent)(TDataDriverEh* DataDriver, Db::TDataSet* &DataReader, bool &FreeOnEof);
typedef void __fastcall (__closure *TDataDriverBuildDataStructEhEvent)(TDataDriverEh* DataDriver, Memtabledataeh::TMTDataStructEh* DataStruct);
typedef void __fastcall (__closure *TDataDriverReadRecordEhEvent)(TDataDriverEh* DataDriver, Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec, bool &ProviderEOF);
typedef void __fastcall (__closure *TDataDriverUpdateErrorEhEvent)(TDataDriverEh* DataDriver, Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec, TUpdateErrorActionEh &Action);
typedef void __fastcall (__closure *TDataDriverRecordEhEvent)(TDataDriverEh* DataDriver, Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec);
typedef void __fastcall (__closure *TDataDriverAssignFieldValueEhEvent)(TDataDriverEh* DataDriver, Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec, int DataFieldIndex, Memtabledataeh::TDataValueVersionEh DataValueVersion, Db::TDataSet* ReaderDataSet);
__interface IDataDriverConsumerEh;
typedef System::DelphiInterface<IDataDriverConsumerEh> _di_IDataDriverConsumerEh;
__interface INTERFACE_UUID("{E390BBF2-666F-43D7-8CC8-1FA2BA8263D1}") IDataDriverConsumerEh : public IInterface
{
public:
virtual void __fastcall SetDataDriverConsumer(System::TObject* AObject) = 0 ;
virtual System::TObject* __fastcall GetDataDriverConsumer(void) = 0 ;
__property System::TObject* DataDriverConsumer = {read=GetDataDriverConsumer, write=SetDataDriverConsumer};
};
class PASCALIMPLEMENTATION TDataDriverEh : public Classes::TComponent
{
typedef Classes::TComponent inherited;
private:
AnsiString FKeyFields;
TDataDriverAssignFieldValueEhEvent FOnAssignFieldValue;
TDataDriverBuildDataStructEhEvent FOnBuildDataStruct;
TDataDriverProduceDataReaderEhEvent FOnProduceDataReader;
TDataDriverReadRecordEhEvent FOnReadRecord;
TDataDriverRecordEhEvent FOnRefreshRecord;
TDataDriverUpdateErrorEhEvent FOnUpdateError;
TDataDriverRecordEhEvent FOnUpdateRecord;
Db::TDataSet* FProviderDataSet;
bool FProviderEOF;
Db::TDataSet* FReaderDataSet;
bool FReaderDataSetFreeOnEof;
bool FResolveToDataSet;
System::TObject* FDataDriverConsumer;
void __fastcall SetKeyFields(const AnsiString Value);
void __fastcall SetProviderDataSet(const Db::TDataSet* Value);
void __fastcall SetProviderEOF(const bool Value);
protected:
System::TObject* __fastcall GetDataDriverConsumer(void);
virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
virtual void __fastcall SetAutoIncFields(Db::TFields* Fields, Memtabledataeh::TMTDataStructEh* DataStruct);
void __fastcall SetDataDriverConsumer(System::TObject* ADataDriverConsumer);
__property AnsiString KeyFields = {read=FKeyFields, write=SetKeyFields};
__property Db::TDataSet* ProviderDataSet = {read=FProviderDataSet, write=SetProviderDataSet};
__property Db::TDataSet* ReaderDataSet = {read=FReaderDataSet};
public:
__fastcall virtual TDataDriverEh(Classes::TComponent* AOwner);
__fastcall virtual ~TDataDriverEh(void);
virtual int __fastcall ApplyUpdates(Memtabledataeh::TMemTableDataEh* MemTableData);
virtual int __fastcall DefaultUpdateRecord(Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec);
virtual Db::TDataSet* __fastcall GetDataReader(void);
virtual int __fastcall ReadData(Memtabledataeh::TMemTableDataEh* MemTableData, int Count);
virtual bool __fastcall RefreshReaderParamsFromCursor(Db::TDataSet* DataSet);
virtual void __fastcall AssignFieldValue(Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec, int DataFieldIndex, Memtabledataeh::TDataValueVersionEh DataValueVersion, Db::TDataSet* ReaderDataSet);
virtual void __fastcall UpdateRecord(Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec);
virtual void __fastcall ConsumerClosed(Db::TDataSet* ConsumerDataSet);
virtual void __fastcall DefaultAssignFieldValue(Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec, int DataFieldIndex, Memtabledataeh::TDataValueVersionEh DataValueVersion, Db::TDataSet* ReaderDataSet);
virtual void __fastcall DefaultBuildDataStruct(Memtabledataeh::TMTDataStructEh* DataStruct);
virtual void __fastcall DefaultProduceDataReader(Db::TDataSet* &DataSet, bool &FreeOnEof);
virtual void __fastcall DefaultReadRecord(Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* Rec, bool &ProviderEOF);
virtual void __fastcall DefaultUpdateError(Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec, TUpdateErrorActionEh &Action);
virtual void __fastcall DefaultRefreshRecord(Memtabledataeh::TMemoryRecordEh* MemRecord);
virtual void __fastcall BuildDataStruct(Memtabledataeh::TMTDataStructEh* DataStruct);
virtual void __fastcall RefreshRecord(Memtabledataeh::TMemoryRecordEh* MemRecord);
virtual void __fastcall SetReaderParamsFromCursor(Db::TDataSet* DataSet);
__property bool ProviderEOF = {read=FProviderEOF, write=SetProviderEOF, nodefault};
__property bool ResolveToDataSet = {read=FResolveToDataSet, write=FResolveToDataSet, default=1};
__property TDataDriverBuildDataStructEhEvent OnBuildDataStruct = {read=FOnBuildDataStruct, write=FOnBuildDataStruct};
__property TDataDriverProduceDataReaderEhEvent OnProduceDataReader = {read=FOnProduceDataReader, write=FOnProduceDataReader};
__property TDataDriverAssignFieldValueEhEvent OnAssignFieldValue = {read=FOnAssignFieldValue, write=FOnAssignFieldValue};
__property TDataDriverReadRecordEhEvent OnReadRecord = {read=FOnReadRecord, write=FOnReadRecord};
__property TDataDriverRecordEhEvent OnRefreshRecord = {read=FOnRefreshRecord, write=FOnRefreshRecord};
__property TDataDriverRecordEhEvent OnUpdateRecord = {read=FOnUpdateRecord, write=FOnUpdateRecord};
__property TDataDriverUpdateErrorEhEvent OnUpdateError = {read=FOnUpdateError, write=FOnUpdateError};
private:
void *__IDataDriverConsumerEh; /* Datadrivereh::IDataDriverConsumerEh */
public:
operator IInterface*(void) { return (IInterface*)&__IDataDriverConsumerEh; }
operator IDataDriverConsumerEh*(void) { return (IDataDriverConsumerEh*)&__IDataDriverConsumerEh; }
};
class DELPHICLASS TDataSetDriverEh;
class PASCALIMPLEMENTATION TDataSetDriverEh : public TDataDriverEh
{
typedef TDataDriverEh inherited;
__published:
__property KeyFields ;
__property ProviderDataSet ;
__property OnBuildDataStruct ;
__property OnProduceDataReader ;
__property OnAssignFieldValue ;
__property OnReadRecord ;
__property OnRefreshRecord ;
__property OnUpdateRecord ;
__property OnUpdateError ;
__property ResolveToDataSet = {default=1};
public:
#pragma option push -w-inl
/* TDataDriverEh.Create */ inline __fastcall virtual TDataSetDriverEh(Classes::TComponent* AOwner) : TDataDriverEh(AOwner) { }
#pragma option pop
#pragma option push -w-inl
/* TDataDriverEh.Destroy */ inline __fastcall virtual ~TDataSetDriverEh(void) { }
#pragma option pop
};
#pragma option push -b-
enum TDynaSQLOptionEh { dsoDynamicSQLInsertEh, dsoDynamicSQLUpdateEh, dsoDynamicSQLDeleteEh };
#pragma option pop
typedef Set<TDynaSQLOptionEh, dsoDynamicSQLInsertEh, dsoDynamicSQLDeleteEh> TDynaSQLOptionsEh;
class DELPHICLASS TDynaSQLParamsEh;
class DELPHICLASS TCustomSQLDataDriverEh;
class DELPHICLASS TCustomSQLCommandEh;
#pragma option push -b-
enum TSQLCommandTypeEh { cthSelectQuery, cthUpdateQuery, cthTable, cthStoredProc };
#pragma option pop
class PASCALIMPLEMENTATION TCustomSQLCommandEh : public Classes::TPersistent
{
typedef Classes::TPersistent inherited;
private:
Classes::TStrings* FCommandText;
TSQLCommandTypeEh FCommandType;
TCustomSQLDataDriverEh* FDataDriver;
bool __fastcall IsCommandTypeStored(void);
protected:
virtual TSQLCommandTypeEh __fastcall DefaultCommandType(void);
virtual Classes::TStrings* __fastcall GetCommandText(void);
virtual TSQLCommandTypeEh __fastcall GetCommandType(void);
DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
virtual void __fastcall CommandTextChanged(System::TObject* Sender);
virtual void __fastcall CommandTypeChanged(void);
virtual void __fastcall SetCommandText(const Classes::TStrings* Value);
virtual void __fastcall SetCommandType(const TSQLCommandTypeEh Value);
public:
__fastcall TCustomSQLCommandEh(TCustomSQLDataDriverEh* ADataDriver);
__fastcall virtual ~TCustomSQLCommandEh(void);
virtual int __fastcall Execute(Db::TDataSet* &Cursor, bool &FreeOnEof);
DYNAMIC AnsiString __fastcall GetNamePath();
virtual Db::TParams* __fastcall GetParams(void);
virtual void __fastcall Assign(Classes::TPersistent* Source);
virtual void __fastcall RefreshParams(Memtabledataeh::TMemoryRecordEh* MemRecord, Memtabledataeh::TDataValueVersionEh DataValueVersion);
virtual void __fastcall SetParams(Db::TParams* AParams);
__property Classes::TStrings* CommandText = {read=GetCommandText, write=SetCommandText};
__property TSQLCommandTypeEh CommandType = {read=GetCommandType, write=SetCommandType, stored=IsCommandTypeStored, nodefault};
__property TCustomSQLDataDriverEh* DataDriver = {read=FDataDriver};
};
typedef int __fastcall (__closure *TDataDriverExecuteCommandEhEvent)(TCustomSQLDataDriverEh* DataDriver, TCustomSQLCommandEh* Command, Db::TDataSet* &Cursor, bool &FreeOnEof);
typedef void __fastcall (__closure *TDataDriverGetBackUpdatedValuesEhEvent)(TCustomSQLDataDriverEh* DataDriver, Memtabledataeh::TMemoryRecordEh* MemRec, TCustomSQLCommandEh* Command, Db::TDataSet* ResDataSet);
class DELPHICLASS TServerSpecOperationsEh;
class PASCALIMPLEMENTATION TServerSpecOperationsEh : public System::TObject
{
typedef System::TObject inherited;
private:
bool FIncludeInsertFieldsInUpdateCommand;
protected:
virtual void __fastcall GenWhereClause(AnsiString KeyFields, Classes::TStrings* SQL);
virtual void __fastcall BuildChangedFieldList(Memtabledataeh::TMemoryRecordEh* MemRec, Classes::TStringList* UpdateFieldList, Classes::TStringList* ChangedFieldList);
public:
__fastcall virtual TServerSpecOperationsEh(void);
virtual int __fastcall UpdateRecord(TCustomSQLDataDriverEh* SQLDataDriver, Memtabledataeh::TMemTableDataEh* MemTableData, Memtabledataeh::TMemoryRecordEh* MemRec);
virtual void __fastcall GetBackUpdatedValues(Memtabledataeh::TMemoryRecordEh* MemRec, TCustomSQLCommandEh* Command, Db::TDataSet* ResDataSet);
virtual void __fastcall GenerateDynaSQLCommand(Memtabledataeh::TMemoryRecordEh* MemRec, TCustomSQLCommandEh* Command);
virtual void __fastcall GenerateDeleteCommand(Memtabledataeh::TMemoryRecordEh* MemRec, TCustomSQLCommandEh* Command);
virtual void __fastcall GenerateUpdateCommand(Memtabledataeh::TMemoryRecordEh* MemRec, TCustomSQLCommandEh* Command);
virtual void __fastcall GenerateInsertCommand(Memtabledataeh::TMemoryRecordEh* MemRec, TCustomSQLCommandEh* Command);
__property bool IncludeInsertFieldsInUpdateCommand = {read=FIncludeInsertFieldsInUpdateCommand, write=FIncludeInsertFieldsInUpdateCommand, nodefault};
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~TServerSpecOperationsEh(void) { }
#pragma option pop
};
class PASCALIMPLEMENTATION TCustomSQLDataDriverEh : public TDataDriverEh
{
typedef TDataDriverEh inherited;
private:
TCustomSQLCommandEh* FDeleteCommand;
Classes::TComponent* FDesignDataBase;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -