📄 absbase.hpp
字号:
virtual bool __fastcall TableExists(AnsiString TableName) = 0 ;
virtual void __fastcall SetObject(TABSSessionNamedObject* Value);
virtual TABSSessionNamedObject* __fastcall GetObjectByName(AnsiString ObjectName);
virtual TABSSessionNamedObject* __fastcall GetObjectByID(int id);
virtual void __fastcall DeleteObject(int id);
virtual void __fastcall StartTransaction(void) = 0 ;
virtual void __fastcall Commit(bool DoFlushBuffers = true) = 0 ;
virtual void __fastcall Rollback(void) = 0 ;
virtual void __fastcall FlushBuffers(void) = 0 ;
__property bool Connected = {read=GetConnected, write=SetConnected, default=0};
__property AnsiString DatabaseFileName = {read=FDatabaseFileName, write=FDatabaseFileName};
__property AnsiString DatabaseName = {read=FDatabaseName, write=FDatabaseName};
__property int SessionID = {read=FSessionID, write=FSessionID, nodefault};
__property bool InTransaction = {read=FInTransaction, write=FInTransaction, nodefault};
__property bool ReadOnly = {read=FReadOnly, write=FReadOnly, nodefault};
__property bool Exclusive = {read=FExclusive, write=FExclusive, nodefault};
__property bool InMemory = {read=FInMemory, write=FInMemory, nodefault};
__property AnsiString Login = {read=FLogin, write=FLogin};
__property TABSSessionComponentManager* SessionComponentManager = {read=FSessionHandle, write=FSessionHandle};
__property int MaxSessionCount = {read=FMaxSessionCount, write=FMaxSessionCount, nodefault};
__property bool RepairNeeded = {read=FRepairNeeded, write=FRepairNeeded, nodefault};
__property bool SuppressDBHeaderErrors = {read=GetSuppressDBHeaderErrors, write=SetSuppressDBHeaderErrors, nodefault};
__property bool MultiUser = {read=FMultiUser, write=FMultiUser, nodefault};
__property AnsiString SessionName = {read=FSessionName, write=FSessionName};
};
class PASCALIMPLEMENTATION TABSCursor : public System::TObject
{
typedef System::TObject inherited;
public:
bool FSettingProjection;
AnsiString FTableName;
AnsiString FIndexName;
int FIndexID;
bool FReadOnly;
bool FExclusive;
bool FInMemory;
bool FTemporary;
TABSBaseSession* FSession;
bool FIsOpen;
bool FPhysicalOrder;
System::TObject* FCurrentRecordPositionInIndex;
char *FCurrentRecordBuffer;
char *FDistinctRecordBuffer;
char *FEditRecordBuffer;
Abssecurity::TABSPassword FPassword;
TABSConstraintDefs* FConstraintDefs;
#pragma pack(push,1)
Abscompression::TABSCompression FBLOBCompression;
#pragma pack(pop)
TABSFieldDefs* FFieldDefs;
TABSFieldDefs* FVisibleFieldDefs;
TABSIndexDefs* FIndexDefs;
Classes::TList* FBLOBStreams;
void *FRecordBitmap;
Abstypes::TABSIndexPositionCache* FIndexPositionCache;
bool FTableLockedByCursor;
bool FBatchUpdate;
bool FDisableTempFiles;
bool FIsRepairing;
private:
int FErrorCode;
AnsiString FErrorMessage;
bool FIsDesignMode;
int FRecordBufferSize;
int FRecordSize;
int FKeyBufferSize;
int FKeyOffset;
int FKeyFieldCount;
int FFieldValuesOffset;
int FCalculatedFieldsOffset;
int FBookmarkOffset;
void *FFilterExpression;
void *FSQLFilterExpression;
char *FKeyBuffer;
char *FRangeStartBuffer;
char *FRangeEndBuffer;
bool FRangeStartExclusive;
bool FRangeEndExclusive;
int FRangeStartKeyFieldCount;
int FRangeEndKeyFieldCount;
int FDistinctFieldCount;
protected:
void __fastcall SetIndexName(AnsiString Value);
public:
__property int RecordBufferSize = {read=FRecordBufferSize, write=FRecordBufferSize, nodefault};
__property int RecordSize = {read=FRecordSize, write=FRecordSize, nodefault};
__property int FieldValuesOffset = {read=FFieldValuesOffset, write=FFieldValuesOffset, nodefault};
__property int CalculatedFieldsOffset = {read=FCalculatedFieldsOffset, write=FCalculatedFieldsOffset, nodefault};
__property int BookmarkOffset = {read=FBookmarkOffset, write=FBookmarkOffset, nodefault};
__property int KeyOffset = {read=FKeyOffset, write=FKeyOffset, nodefault};
__property int KeyBufferSize = {read=FKeyBufferSize, write=FKeyBufferSize, nodefault};
virtual void __fastcall CreateTable(TABSFieldDefs* FieldDefs, TABSIndexDefs* IndexDefs, TABSConstraintDefs* ConstraintDefs) = 0 ;
virtual void __fastcall DeleteTable(void) = 0 ;
virtual void __fastcall EmptyTable(void) = 0 ;
virtual void __fastcall RenameTable(AnsiString NewTableName) = 0 ;
virtual void __fastcall InternalInitFieldDefs(void) = 0 ;
virtual void __fastcall OpenTableByFieldDefs(TABSFieldDefs* FieldDefs, TABSIndexDefs* IndexDefs, TABSConstraintDefs* ConstraintDefs) = 0 ;
virtual void __fastcall CloseTable(void) = 0 ;
virtual void __fastcall LockTableData(void) = 0 ;
virtual void __fastcall UnlockTableData(void) = 0 ;
virtual bool __fastcall LockTable(Abstypes::TABSLockType LockType, int TryCount, int Delay, bool AllowXIRWAfterSIRW = true) = 0 ;
virtual bool __fastcall UnlockTable(Abstypes::TABSLockType LockType, bool IgnoreIfNoLock = false) = 0 ;
virtual void __fastcall RenameField(AnsiString FieldName, AnsiString NewFieldName);
virtual TABSIndexDefs* __fastcall GetIndexDefs(void);
virtual void __fastcall AddIndex(TABSIndexDef* IndexDef) = 0 ;
virtual void __fastcall DeleteIndex(AnsiString Name) = 0 ;
virtual void __fastcall DeleteAllIndexes(void) = 0 ;
virtual AnsiString __fastcall FindOrCreateIndex(Classes::TStringList* FieldNamesList, Classes::TStringList* AscDescList, Classes::TStringList* CaseSensitivityList, bool &IsCreated) = 0 ;
virtual bool __fastcall IndexExists(Classes::TStringList* FieldNamesList, Classes::TStringList* AscDescList, Classes::TStringList* CaseSensitivityList) = 0 ;
bool __fastcall GetFieldData(int FieldNo, void * Buffer, char * RecordBuffer);
void __fastcall SetFieldData(int FieldNo, void * Buffer, char * RecordBuffer);
void __fastcall ClearStringFieldsGarbage(char * RecordBuffer);
void __fastcall GetFieldValue(Absvariant::TABSVariant* Value, int FieldNo, bool DirectAccess);
void __fastcall SetFieldValue(Absvariant::TABSVariant* Value, int FieldNo, bool DirectAccess, char * RecordBuffer = (void *)(0x0));
virtual void __fastcall CopyFieldValue(int SrcFieldNo, bool DirectAccess, int DestFieldNo, TABSCursor* DestCursor) = 0 ;
char * __fastcall AllocateRecordBuffer(void);
virtual void __fastcall InternalInitRecord(char * RecordBuffer, bool InsertMode) = 0 ;
virtual void __fastcall FreeRecordBuffer(char * &Buffer);
char * __fastcall AllocateKeyRecordBuffer(void);
void __fastcall InternalInitKeyBuffer(char * RecordBuffer);
virtual __int64 __fastcall GetRecordCount(void) = 0 ;
virtual Abstypes::TABSGetRecordResult __fastcall GetRecordBuffer(Abstypes::TABSGetRecordMode GetRecordMode) = 0 ;
virtual void __fastcall SetRecNo(__int64 Value) = 0 ;
virtual __int64 __fastcall GetRecNo(void) = 0 ;
virtual void __fastcall InternalFirst(void) = 0 ;
virtual void __fastcall InternalLast(void) = 0 ;
void * __fastcall SavePosition(void);
void __fastcall RestorePosition(void * Pos);
void __fastcall FreePosition(void * Pos);
virtual void __fastcall InternalInsert(void) = 0 ;
virtual void __fastcall InternalEdit(void) = 0 ;
virtual void __fastcall InternalCancel(bool ToInsert) = 0 ;
virtual void __fastcall InternalPost(bool ToInsert) = 0 ;
virtual void __fastcall InternalDelete(void) = 0 ;
void __fastcall DisableRecordBitmap(void);
virtual void __fastcall ApplyDistinct(Classes::TStringList* FieldNamesList, Classes::TStringList* AscDescList, Classes::TStringList* CaseSensitivityList) = 0 ;
void __fastcall ApplyProjection(Classes::TStringList* FieldNamesList, Classes::TStringList* AliasList);
virtual void __fastcall ActivateFilters(AnsiString FilterText, bool CaseInsensitive, bool PartialKey) = 0 ;
virtual void __fastcall DeactivateFilters(void) = 0 ;
virtual bool __fastcall Locate(const AnsiString KeyFields, const Variant &KeyValues, bool CaseInsensitive, bool PartialKey) = 0 ;
virtual bool __fastcall FindKey(Abstypes::TABSSearchCondition SearchCondition) = 0 ;
virtual bool __fastcall IsAnyRecordMatchCondition(const AnsiString FieldName, const Abstypes::TABSDataOperator Operator, const Absvariant::TABSVariant* Value) = 0 ;
bool __fastcall IsIndexApplied(void);
bool __fastcall IsDistinctApplied(void);
bool __fastcall IsFilterApplied(void);
bool __fastcall IsRangeApplied(void);
bool __fastcall IsViewRestricted(void);
void __fastcall ResetRange(void);
void __fastcall ApplyRange(char * StartBuffer, char * EndBuffer, int StartKeyFieldCount, int EndKeyFieldCount, bool StartExclusive, bool EndExclusive);
void __fastcall SetSQLFilter(System::TObject* FilterExpr, System::TObject* ParentQueryAO, TABSCursor* ParentCursor);
virtual Abscompression::TABSStream* __fastcall InternalCreateBlobStream(bool ToInsert, bool ToEdit, int FieldNo, Abstypes::TABSBLOBOpenMode OpenMode, bool CanDoGetRecordBuffer) = 0 ;
virtual void __fastcall InternalCloseBLOB(int FieldNo) = 0 ;
virtual void __fastcall ClearBLOBStreams(bool WriteOnly = false) = 0 ;
virtual __int64 __fastcall LastAutoincValue(int FieldNo) = 0 ;
virtual void __fastcall BeginBatchUpdate(void) = 0 ;
virtual void __fastcall EndBatchUpdate(void) = 0 ;
virtual void __fastcall CancelBatchUpdate(void) = 0 ;
virtual bool __fastcall CheckConstraints(bool ToInsert) = 0 ;
#pragma pack(push,1)
Abstypes::TABSPageItemID CurrentRecordID;
#pragma pack(pop)
int CurrentIndexID;
bool FirstPosition;
bool LastPosition;
void *FilterRecord;
void *Dataset;
__property void * RecordBitmap = {read=FRecordBitmap, write=FRecordBitmap};
__property Abstypes::TABSIndexPositionCache* IndexPositionCache = {read=FIndexPositionCache};
__property int DistinctFieldCount = {read=FDistinctFieldCount, write=FDistinctFieldCount, nodefault};
__property void * FilterExpression = {read=FFilterExpression, write=FFilterExpression};
__property void * SQLFilterExpression = {read=FSQLFilterExpression, write=FSQLFilterExpression};
__property Classes::TList* BLOBStreams = {read=FBLOBStreams};
__property int ErrorCode = {read=FErrorCode, write=FErrorCode, nodefault};
__property AnsiString ErrorMessage = {read=FErrorMessage, write=FErrorMessage};
__property bool IsDesignMode = {read=FIsDesignMode, write=FIsDesignMode, nodefault};
__property AnsiString TableName = {read=FTableName, write=FTableName};
__property AnsiString IndexName = {read=FIndexName, write=SetIndexName};
__property int IndexID = {read=FIndexID, write=FIndexID, nodefault};
__property bool ReadOnly = {read=FReadOnly, write=FReadOnly, nodefault};
__property bool Exclusive = {read=FExclusive, write=FExclusive, nodefault};
__property bool InMemory = {read=FInMemory, write=FInMemory, nodefault};
__property bool Temporary = {read=FTemporary, write=FTemporary, nodefault};
__property TABSBaseSession* Session = {read=FSession, write=FSession};
__property bool IsOpen = {read=FIsOpen, write=FIsOpen, nodefault};
__property bool IsRepairing = {read=FIsRepairing, write=FIsRepairing, nodefault};
__property __int64 RecordCount = {read=GetRecordCount};
__property TABSFieldDefs* FieldDefs = {read=FFieldDefs};
__property TABSFieldDefs* VisibleFieldDefs = {read=FVisibleFieldDefs};
__property TABSIndexDefs* IndexDefs = {read=GetIndexDefs};
__property TABSConstraintDefs* ConstraintDefs = {read=FConstraintDefs};
__property Abscompression::TABSCompression BLOBCompression = {read=FBLOBCompression, write=FBLOBCompression};
__property Abssecurity::TABSPassword Password = {read=FPassword, write=FPassword};
__property int KeyFieldCount = {read=FKeyFieldCount, write=FKeyFieldCount, nodefault};
__property char * KeyBuffer = {read=FKeyBuffer, write=FKeyBuffer};
__property char * RangeStartBuffer = {read=FRangeStartBuffer, write=FRangeStartBuffer};
__property char * RangeEndBuffer = {read=FRangeEndBuffer, write=FRangeEndBuffer};
__property bool RangeStartExclusive = {read=FRangeStartExclusive, write=FRangeStartExclusive, nodefault};
__property bool RangeEndExclusive = {read=FRangeEndExclusive, write=FRangeEndExclusive, nodefault};
__property int RangeStartKeyFieldCount = {read=FRangeStartKeyFieldCount, write=FRangeStartKeyFieldCount, nodefault};
__property int RangeEndKeyFieldCount = {read=FRangeEndKeyFieldCount, write=FRangeEndKeyFieldCount, nodefault};
__property char * CurrentRecordBuffer = {read=FCurrentRecordBuffer, write=FCurrentRecordBuffer};
__property char * DistinctRecordBuffer = {read=FDistinctRecordBuffer, write=FDistinctRecordBuffer};
__property char * EditRecordBuffer = {read=FEditRecordBuffer, write=FEditRecordBuffer};
__property bool PhysicalOrder = {read=FPhysicalOrder, write=FPhysicalOrder, nodefault};
__property System::TObject* CurrentRecordPositionInIndex = {read=FCurrentRecordPositionInIndex, write=FCurrentRecordPositionInIndex};
__property bool TableLockedByCursor = {read=FTableLockedByCursor, write=FTableLockedByCursor, nodefault};
__property bool InBatchUpdate = {read=FBatchUpdate, write=FBatchUpdate, nodefault};
public:
#pragma option push -w-inl
/* TObject.Create */ inline __fastcall TABSCursor(void) : System::TObject() { }
#pragma option pop
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~TABSCursor(void) { }
#pragma option pop
};
class PASCALIMPLEMENTATION TABSSessionNamedObject : public System::TObject
{
typedef System::TObject inherited;
private:
int FObjectID;
System::ShortString FName;
public:
__fastcall TABSSessionNamedObject(AnsiString Name)/* overload */;
__fastcall TABSSessionNamedObject(int ObjectID)/* overload */;
__property System::ShortString Name = {read=FName, write=FName};
__property int ObjectID = {read=FObjectID, write=FObjectID, nodefault};
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~TABSSessionNamedObject(void) { }
#pragma option pop
};
class DELPHICLASS TABSSessionNamedObjectSequenceValue;
class PASCALIMPLEMENTATION TABSSessionNamedObjectSequenceValue : public TABSSessionNamedObject
{
typedef TABSSessionNamedObject inherited;
public:
__int64 FValue;
__fastcall TABSSessionNamedObjectSequenceValue(int ObjectID, __int64 Value);
__property __int64 Value = {read=FValue, write=FValue};
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~TABSSessionNamedObjectSequenceValue(void) { }
#pragma option pop
};
//-- var, const, procedure ---------------------------------------------------
} /* namespace Absbase */
using namespace Absbase;
#pragma pack(pop)
#pragma option pop
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // Absbase
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -