home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Internet 2000 May / MICD_2000_05.iso / CBuilder5 / INSTALL / DATA1.CAB / Program_Built_Files / Include / Vcl / dsintf.hpp < prev    next >
C/C++ Source or Header  |  2000-02-01  |  23KB  |  574 lines

  1. // Borland C++ Builder
  2. // Copyright (c) 1995, 1999 by Borland International
  3. // All rights reserved
  4.  
  5. // (DO NOT EDIT: machine generated header) 'DSIntf.pas' rev: 5.00
  6.  
  7. #ifndef DSIntfHPP
  8. #define DSIntfHPP
  9.  
  10. #pragma delphiheader begin
  11. #pragma option push -w-
  12. #pragma option push -Vx
  13. #include <DBCommon.hpp>    // Pascal unit
  14. #include <Db.hpp>    // Pascal unit
  15. #include <ActiveX.hpp>    // Pascal unit
  16. #include <Windows.hpp>    // Pascal unit
  17. #include <SysInit.hpp>    // Pascal unit
  18. #include <System.hpp>    // Pascal unit
  19.  
  20. //-- user supplied -----------------------------------------------------------
  21.  
  22. namespace Dsintf
  23. {
  24. //-- type declarations -------------------------------------------------------
  25. typedef Word DBResult;
  26.  
  27. #pragma option push -b
  28. enum DBSearchCond { keySEARCHEQ, keySEARCHGT, keySEARCHGEQ };
  29. #pragma option pop
  30.  
  31. typedef char MIDASNAME[32];
  32.  
  33. typedef char MIDASPATH[261];
  34.  
  35. typedef tagSAFEARRAY *TDataPacket;
  36.  
  37. typedef Byte DSAttr;
  38.  
  39. typedef DSAttr *pDSAttr;
  40.  
  41. typedef void *hDSFilter;
  42.  
  43. typedef hDSFilter *phDSFilter;
  44.  
  45. #pragma option push -b
  46. enum GROUPSTATE { grSTATEMIDDLE, grSTATEFIRST, grSTATELAST, grSTATEFIRSTLAST };
  47. #pragma option pop
  48.  
  49. typedef int hDSAggregate;
  50.  
  51. typedef hDSAggregate *phDSAggregate;
  52.  
  53. #pragma option push -b
  54. enum AGGSTATE { aggSTATEUNDEF, aggSTATEOK, aggSTATEBLANK, aggSTATEERROR };
  55. #pragma option pop
  56.  
  57. #pragma pack(push, 1)
  58. struct DSIntf__1
  59. {
  60.     
  61. } ;
  62. #pragma pack(pop)
  63.  
  64. #pragma pack(push, 1)
  65. struct AGGVALUE
  66. {
  67.     int iCnt;
  68.     AGGSTATE eAggState;
  69.     DSIntf__1 Value;
  70. } ;
  71. #pragma pack(pop)
  72.  
  73. struct DSBOOKMRK;
  74. typedef DSBOOKMRK *pDSBOOKMRK;
  75.  
  76. #pragma pack(push, 1)
  77. struct DSBOOKMRK
  78. {
  79.     int iPos;
  80.     int iState;
  81.     int iRecNo;
  82.     int iSeqNo;
  83.     int iOrderID;
  84. } ;
  85. #pragma pack(pop)
  86.  
  87. typedef int SAVEPOINT;
  88.  
  89. typedef SAVEPOINT *pSAVEPOINT;
  90.  
  91. typedef int DSKEY[16];
  92.  
  93. typedef BOOL DSKEYBOOL[16];
  94.  
  95. #pragma option push -b
  96. enum DSProp { dspropLOGCHANGES, dspropREADONLY, dspropNOOFCHANGES, dspropCONSTRAINTS_DISABLED, dspropDSISPARTIAL, 
  97.     dspropRECORDSINDS, dspropAUTOINC_DISABLED, dspropISDELTA, dspropDONTINCLMETADATA, dspropINCLBLOBSINDELTA, 
  98.     dspropGETSAVEPOINT, dspropCOMPRESSARRAYS, dspropMD_SEMANTICS, dspropFIELD_FULLNAME, dspropFIELDID_FORNAME, 
  99.     dspropFIELDID_FORPARENT, dspropCHANGEINDEX_VIEW, dspropGETUNIQUEINDEX, dspropREMOTE_UPDATEMODE, dspropXML_STREAMMODE 
  100.     };
  101. #pragma option pop
  102.  
  103. #pragma option push -b
  104. enum CURProp { curpropCONSTRAINT_ERROR_MESSAGE, curpropDSBASE, curpropSETCRACK, curpropGETORG_RECBUF 
  105.     };
  106. #pragma option pop
  107.  
  108. struct DSProps;
  109. typedef DSProps *pDSProps;
  110.  
  111. #pragma pack(push, 1)
  112. struct DSProps
  113. {
  114.     char szName[261];
  115.     int iFields;
  116.     int iRecBufSize;
  117.     int iBookMarkSize;
  118.     BOOL bReadOnly;
  119.     int iIndexes;
  120.     int iOptParams;
  121.     BOOL bDelta;
  122.     int iLCID;
  123.     int iUnused[8];
  124. } ;
  125. #pragma pack(pop)
  126.  
  127. struct DSFLDDesc;
  128. typedef DSFLDDesc *pDSFLDDesc;
  129.  
  130. #pragma pack(push, 1)
  131. struct DSFLDDesc
  132. {
  133.     char szName[32];
  134.     int iFldType;
  135.     int iFldSubType;
  136.     int iUnits1;
  137.     int iUnits2;
  138.     int iFldLen;
  139.     int iFldOffsInRec;
  140.     int iNullOffsInRec;
  141.     Word iFieldID;
  142.     Word iFieldIDParent;
  143.     BOOL bCalculated;
  144.     int iFldAttr;
  145.     int iOptParameters;
  146. } ;
  147. #pragma pack(pop)
  148.  
  149. struct DSIDXDesc;
  150. typedef DSIDXDesc *pDSIDXDesc;
  151.  
  152. #pragma pack(push, 1)
  153. struct DSIDXDesc
  154. {
  155.     char szName[32];
  156.     int iFields;
  157.     int iKeyFields[16];
  158.     int iKeyLen;
  159.     BOOL bUnique;
  160.     BOOL bDescending[16];
  161.     BOOL bCaseInsensitive[16];
  162. } ;
  163. #pragma pack(pop)
  164.  
  165. typedef void __stdcall (*pfCHANGECallBack)(int iClientData);
  166.  
  167. typedef BOOL __stdcall (*pfDSFilter)(int iClientData, void * pRecBuf);
  168.  
  169. typedef Word __stdcall (*pfDSCalcField)(int iClientData, void * pRecBuf);
  170.  
  171. typedef int dsCBRType;
  172.  
  173. typedef int *pdsCBRType;
  174.  
  175. typedef int __stdcall (*pfDSReconcile)(int iClientData, int iRslt, DSAttr iAction, int iResponse, int 
  176.     iErrCode, char * pErrMessage, char * pErrContext, void * pRecUpd, void * pRecOrg, void * pRecConflict
  177.     );
  178.  
  179. typedef int __fastcall (*pfDSReconcile_MD)(int iClientData, int iRslt, DSAttr iAction, int iErrResponse
  180.     , int iErrCode, char * pErrMessage, char * pErrContext, Windows::PByte pRecUpd, Windows::PByte pRecOrg
  181.     , Windows::PByte pRecConflict, int iLevels, Windows::PInteger piFieldIDs);
  182.  
  183. typedef int __fastcall (*pfFLDComp)(int iClientData, void * pVal1, void * pVal2);
  184.  
  185. #pragma option push -b
  186. enum TPcktAttrArea { fldAttrArea, pcktAttrArea };
  187. #pragma option pop
  188.  
  189. #pragma option push -b
  190. enum TPcktFldStatus { fldIsChanged, fldIsNull, fldIsUnChanged };
  191. #pragma option pop
  192.  
  193. #pragma pack(push, 1)
  194. struct TDSDataPacketFldDesc
  195. {
  196.     char szFieldName[32];
  197.     int iFieldType;
  198.     Word iAttributes;
  199. } ;
  200. #pragma pack(pop)
  201.  
  202. typedef TDSDataPacketFldDesc *PDSDataPacketFldDesc;
  203.  
  204. __interface IDSBase;
  205. typedef System::DelphiInterface<IDSBase> _di_IDSBase;
  206. __interface INTERFACE_UUID("{9E8D2FA2-591C-11D0-BF52-0020AF32BD64}") IDSBase  : public IUnknown 
  207. {
  208.     
  209. public:
  210.     virtual Word __stdcall Create(unsigned iFields, pDSFLDDesc pFldDes, char * pszName) = 0 ;
  211.     virtual Word __stdcall AddField(pDSFLDDesc pFldDes) = 0 ;
  212.     virtual Word __stdcall AppendData(Activex::PSafeArray Packet, BOOL bEof) = 0 ;
  213.     virtual Word __stdcall GetOptParameter(unsigned iNo, unsigned iFldNo, void * &ppName, unsigned &piType
  214.         , unsigned &piLen, void * &ppValue) = 0 ;
  215.     virtual Word __stdcall AddOptParameter(unsigned iFldNo, char * pszAttr, unsigned iType, unsigned iLen
  216.         , void * pValue) = 0 ;
  217.     virtual Word __stdcall GetProps(DSProps &Prop) = 0 ;
  218.     virtual Word __stdcall GetFieldDescs(pDSFLDDesc Fields) = 0 ;
  219.     virtual Word __stdcall GetIndexDescs(pDSIDXDesc p1) = 0 ;
  220.     virtual Word __stdcall GetDelta(/* out */ _di_IDSBase &DsDelta) = 0 ;
  221.     virtual Word __stdcall StreamDS(/* out */ Activex::PSafeArray &Packet) = 0 ;
  222.     virtual Word __stdcall AcceptChanges(void) = 0 ;
  223.     virtual Word __stdcall PutBlank(void * pRecBuf, unsigned iRecNo, unsigned iFldNo, unsigned iBlankValue
  224.         ) = 0 ;
  225.     virtual Word __stdcall CreateIndex(const DSIDXDesc &IdxDesc) = 0 ;
  226.     virtual Word __stdcall RemoveIndex(char * pszName) = 0 ;
  227.     virtual Word __stdcall GetErrorString(Word iErrCode, char * pString) = 0 ;
  228.     virtual int __stdcall FldCmp(unsigned iFldType, void * pFld1, void * pFld2, unsigned iUnits1, unsigned 
  229.         iUnits2) = 0 ;
  230.     virtual Word __stdcall GetProp(DSProp eProp, void * piPropValue) = 0 ;
  231.     virtual Word __stdcall SetProp(DSProp eProp, unsigned iPropValue) = 0 ;
  232.     virtual Word __stdcall SetFieldCalculation(unsigned iClientData, pfDSCalcField pfCalc) = 0 ;
  233.     virtual Word __stdcall Reconcile(Activex::PSafeArray DeltaPacket, Activex::PSafeArray ErrorPacket, 
  234.         unsigned iClientData, pfDSReconcile pfReconcile) = 0 ;
  235.     virtual Word __stdcall Reserved1(void * Input) = 0 ;
  236.     virtual Word __stdcall Reserved2(void * Input) = 0 ;
  237.     virtual Word __stdcall Reserved3(void * Input) = 0 ;
  238.     virtual Word __stdcall Refresh(Activex::PSafeArray NewPacket, unsigned iClientData, pfDSReconcile pfReconcile
  239.         ) = 0 ;
  240.     virtual Word __stdcall Reset(void) = 0 ;
  241.     virtual Word __stdcall RollBack(SAVEPOINT iSavePoint) = 0 ;
  242.     virtual Word __stdcall GetEmbeddedDS(unsigned iFieldID, /* out */ _di_IDSBase &DsDet) = 0 ;
  243.     virtual Word __stdcall MakeEmbedded(_di_IDSBase DsDet, unsigned iFieldsLink, PDWORD piFieldsM, PDWORD 
  244.         piFieldsD, char * pMasterFieldName, char * pDetailFieldName) = 0 ;
  245.     virtual Word __stdcall RefreshRecords(Activex::PSafeArray NewDataPacket, unsigned iRecNo, unsigned 
  246.         iClientData, pfDSReconcile pfReconcile) = 0 ;
  247.     virtual Word __stdcall ReleaseBlobs(unsigned iBlobId) = 0 ;
  248.     virtual Word __stdcall Clone(unsigned iPType, BOOL bRecurse, BOOL bCloneOptParams, _di_IDSBase &DataSet
  249.         ) = 0 ;
  250.     virtual Word __stdcall Reconcile_MD(_di_IDSBase pDsRec, Activex::PSafeArray pDeltaPacket, Activex::PSafeArray 
  251.         pErrorPacket, unsigned iClientData, pfDSReconcile_MD pfReconcile_MD) = 0 ;
  252.     virtual Word __stdcall DropOptParameter(unsigned iFldNo, char * pName) = 0 ;
  253. };
  254.  
  255. __interface IDSCursor;
  256. typedef System::DelphiInterface<IDSCursor> _di_IDSCursor;
  257. __interface INTERFACE_UUID("{9E8D2FA4-591C-11D0-BF52-0020AF32BD64}") IDSCursor  : public IUnknown 
  258. {
  259.     
  260. public:
  261.     virtual Word __stdcall InitCursor(_di_IDSBase DataSet) = 0 ;
  262.     virtual Word __stdcall CloneCursor(_di_IDSCursor Cursor) = 0 ;
  263.     virtual Word __stdcall GetCursorProps(DSProps &p1) = 0 ;
  264.     virtual Word __stdcall GetIndexDescs(BOOL bCurrentOnly, DSIDXDesc &IdxDesc) = 0 ;
  265.     virtual Word __stdcall GetFieldDescs(pDSFLDDesc p1) = 0 ;
  266.     virtual Word __stdcall GetCurrentRecord(void * pRecBuf) = 0 ;
  267.     virtual Word __stdcall GetRecordBlock(PDWORD piRecs, void * pRecBuf) = 0 ;
  268.     virtual Word __stdcall GetCurrentBookMark(void * pBookMark) = 0 ;
  269.     virtual Word __stdcall GetSequenceNumber(unsigned &iSeq) = 0 ;
  270.     virtual Word __stdcall GetRecordAttribute(DSAttr &Attr) = 0 ;
  271.     virtual Word __stdcall GetRecordCount(int &iRecs) = 0 ;
  272.     virtual Word __stdcall MoveToBOF(void) = 0 ;
  273.     virtual Word __stdcall MoveToEOF(void) = 0 ;
  274.     virtual Word __stdcall MoveRelative(int i) = 0 ;
  275.     virtual Word __stdcall MoveToSeqNo(unsigned i) = 0 ;
  276.     virtual Word __stdcall MoveToBookMark(void * pBookMark) = 0 ;
  277.     virtual Word __stdcall MoveToKey(DBSearchCond SearchCond, unsigned iFields, unsigned iPartLen, void * 
  278.         pRecBuf) = 0 ;
  279.     virtual Word __stdcall CompareBookMarks(void * pBookMark1, void * pBookMark2, int &iCmp) = 0 ;
  280.     virtual Word __stdcall ExtractKey(void * pRecBuf, void * pKeyBuf) = 0 ;
  281.     virtual Word __stdcall GetRecordForKey(unsigned iFields, unsigned iPartLen, void * pKey, void * pRecBuf
  282.         ) = 0 ;
  283.     virtual Word __stdcall GetField(void * pRecBuf, unsigned iFieldNo, void * pFldBuf, BOOL &bBlank) = 0 
  284.         ;
  285.     virtual Word __stdcall PutField(void * pRecBuf, unsigned iFieldNo, void * pFldBuf) = 0 ;
  286.     virtual Word __stdcall GetBlobLen(void * pRecBuf, unsigned iFieldNo, unsigned &iLength) = 0 ;
  287.     virtual Word __stdcall GetBlob(void * pRecBuf, unsigned iFieldNo, unsigned iOffSet, void * pBuf, unsigned 
  288.         &iLength) = 0 ;
  289.     virtual Word __stdcall PutBlob(void * pRecBuf, unsigned iFieldNo, unsigned iOffSet, void * pBuf, unsigned 
  290.         iLength) = 0 ;
  291.     virtual Word __stdcall InitRecord(void * pRecBuf) = 0 ;
  292.     virtual Word __stdcall DeleteRecord(void) = 0 ;
  293.     virtual Word __stdcall ModifyRecord(void * pRecBuf) = 0 ;
  294.     virtual Word __stdcall InsertRecord(void * pRecBuf) = 0 ;
  295.     virtual Word __stdcall UndoLastChange(BOOL bFollowChange) = 0 ;
  296.     virtual Word __stdcall AddFilter(void * pcanExpr, unsigned iLen, hDSFilter &hFilter) = 0 ;
  297.     virtual Word __stdcall DropFilter(hDSFilter hFilter) = 0 ;
  298.     virtual Word __stdcall SetRange(unsigned iFields, void * pKey1, BOOL bKey1Incl, void * pKey2, BOOL 
  299.         bKey2Incl) = 0 ;
  300.     virtual Word __stdcall DropRange(void) = 0 ;
  301.     virtual Word __stdcall SortOnFields(unsigned iFields, PDWORD piFields, PBOOL pDescending, PBOOL pCaseInsensitive
  302.         ) = 0 ;
  303.     virtual Word __stdcall UseIndexOrder(char * pszName) = 0 ;
  304.     virtual Word __stdcall SetNotifyCallBack(unsigned iClientData, pfCHANGECallBack pfCallBack) = 0 ;
  305.     virtual Word __stdcall AddFilterCallBack(unsigned iClientData, pfDSFilter pfFilter, hDSFilter &hFilter
  306.         ) = 0 ;
  307.     virtual Word __stdcall VerifyField(unsigned iFieldNo, void * pFldBuf) = 0 ;
  308.     virtual Word __stdcall GetProp(CURProp eProp, void * piPropValue) = 0 ;
  309.     virtual Word __stdcall RevertRecord(void) = 0 ;
  310.     virtual Word __stdcall LocateWithFilter(void * pCanExpr, unsigned iLen) = 0 ;
  311.     virtual Word __stdcall AddAggregate(unsigned iFlds, unsigned iCanLen, void * pCanExpr, hDSAggregate 
  312.         &hAgg) = 0 ;
  313.     virtual Word __stdcall DropAggregate(hDSAggregate hAgg) = 0 ;
  314.     virtual Word __stdcall GetAggregateValue(hDSAggregate hAgg, void * pValue, BOOL &bBlank) = 0 ;
  315.     virtual Word __stdcall GetAggregateDesc(hDSAggregate hAgg, DSFLDDesc &Desc) = 0 ;
  316.     virtual Word __stdcall MoveToNextSubGroup(unsigned iFields) = 0 ;
  317.     virtual Word __stdcall GetSubGroupState(unsigned iFields, GROUPSTATE &iSubGroupState) = 0 ;
  318.     virtual Word __stdcall LinkCursors(unsigned iFieldsM, PDWORD piFieldsM, PDWORD piFieldsD, _di_IDSCursor 
  319.         hCurDet) = 0 ;
  320.     virtual Word __stdcall ResyncWithMaster(void) = 0 ;
  321.     virtual Word __stdcall SetProp(CURProp eProp, unsigned iPropValue) = 0 ;
  322.     virtual Word __stdcall GetRecordNumber(unsigned &iRecNo) = 0 ;
  323.     virtual Word __stdcall GetRowRequestPacket(BOOL bKeysOnly, BOOL bFetchAllBlobs, BOOL bFetchAllDetails
  324.         , BOOL bInclMetaData, /* out */ Activex::PSafeArray &Packet) = 0 ;
  325.     virtual Word __stdcall RefreshRecord(Activex::PSafeArray Packet) = 0 ;
  326. };
  327.  
  328. __interface IDSWriter;
  329. typedef System::DelphiInterface<IDSWriter> _di_IDSWriter;
  330. __interface INTERFACE_UUID("{9E8D2FA6-591C-11D0-BF52-0020AF32BD64}") IDSWriter  : public IUnknown 
  331. {
  332.     
  333. public:
  334.     virtual Word __stdcall Init_Sequential(unsigned Version, Word Columns) = 0 ;
  335.     virtual Word __stdcall Init(unsigned Version, Word Columns, PDSDataPacketFldDesc FieldDesc) = 0 ;
  336.     virtual Word __stdcall AddAttribute(TPcktAttrArea AttrArea, char * Attr, unsigned AttrType, unsigned 
  337.         Len, void * Value) = 0 ;
  338.     virtual Word __stdcall GetDataPacket(Activex::PSafeArray &SA) = 0 ;
  339.     virtual Word __stdcall GetSize(unsigned &DataPacketSize) = 0 ;
  340.     virtual Word __stdcall PutField(TPcktFldStatus FldStatus, unsigned Len, void * Src) = 0 ;
  341.     virtual Word __stdcall AddColumnDesc(const TDSDataPacketFldDesc &FldDes) = 0 ;
  342.     virtual Word __stdcall Reset(void) = 0 ;
  343.     virtual Word __stdcall GetColumnCount(unsigned &Count) = 0 ;
  344.     virtual Word __stdcall GetColumnDescs(PDSDataPacketFldDesc FieldDes) = 0 ;
  345.     virtual Word __stdcall GetErrorString(Word iErrCode, char * pString) = 0 ;
  346.     virtual Word __stdcall EndOfNestedRows(void) = 0 ;
  347.     virtual Word __stdcall SetXMLMode(int iMode) = 0 ;
  348.     virtual unsigned __stdcall GetXMLMode(void) = 0 ;
  349. };
  350.  
  351. //-- var, const, procedure ---------------------------------------------------
  352. static const Shortint dsRecUnmodified = 0x0;
  353. static const Shortint dsRecOrg = 0x1;
  354. static const Shortint dsRecDeleted = 0x2;
  355. static const Shortint dsRecNew = 0x4;
  356. static const Shortint dsRecModified = 0x8;
  357. static const Shortint dsUnused = 0x20;
  358. static const Shortint dsDetUpd = 0x40;
  359. static const Shortint dsIsNotVisible = 0x23;
  360. static const Shortint dsIsVisible = 0xffffffdc;
  361. static const Shortint fldAttrHIDDEN = 0x1;
  362. static const Shortint fldAttrREADONLY = 0x2;
  363. static const Shortint fldAttrREQUIRED = 0x4;
  364. static const Shortint fldAttrLINK = 0x8;
  365. static const Shortint BLANK_NULL = 0x1;
  366. static const Shortint BLANK_NOTCHANGED = 0x2;
  367. static const Shortint MAXKEYFIELDS = 0x10;
  368. static const Shortint mdCASCADEDEL = 0x4;
  369. static const Shortint mdCASCADEMOD = 0x8;
  370. static const Shortint mdALLOWLINKCHANGE = 0x10;
  371. static const Shortint dscbrSKIP = 0x1;
  372. static const Shortint dscbrABORT = 0x2;
  373. static const Shortint dscbrMERGE = 0x3;
  374. static const Shortint dscbrAPPLY = 0x4;
  375. static const Shortint dscbrIGNORE = 0x5;
  376. static const Shortint dscbrCORRECT = 0x4;
  377. static const Shortint dscbrCANCEL = 0x5;
  378. static const Shortint dscbrREFRESH = 0x6;
  379. static const Shortint xmlUNTYPED = 0x1;
  380. static const Shortint xmlXMLDATATYPED = 0x2;
  381. static const Shortint xmlXMLSCHEMA = 0x4;
  382. static const Shortint xmlON = 0x5;
  383. static const Shortint xmlOFF = 0x0;
  384. #define szUNIQUE_KEY "UNIQUE_KEY"
  385. #define szPRIMARY_KEY "PRIMARY_KEY"
  386. #define szDEFAULT_ORDER "DEFAULT_ORDER"
  387. #define szCHANGEINDEX "CHANGEINDEX"
  388. #define szCHANGE_LOG "CHANGE_LOG"
  389. #define szSERVER_COL "SERVER_COL"
  390. #define szCONSTRAINTS "CONSTRAINTS"
  391. #define szDATASET_CONTEXT "DATASET_CONTEXT"
  392. #define szDATASET_DELTA "DATASET_DELTA"
  393. #define szREADONLY "READONLY"
  394. #define szSUBTYPE "SUBTYPE"
  395. #define szDECIMALS "DECIMALS"
  396. #define szWIDTH "WIDTH"
  397. #define szLCID "LCID"
  398. #define szBDEDOMX "BDEDOMAIN_X"
  399. #define szBDERECX "BDERECORD_X"
  400. #define szBDEDEFX "BDEDEFAULT_X"
  401. #define szAUTOINCVALUE "AUTOINCVALUE"
  402. #define szELEMENTS "ELEMENTS"
  403. #define szTABLE_NAME "TABLE_NAME"
  404. #define szMD_FIELDLINKS "MD_FIELDLINKS"
  405. #define szTYPENAME "TYPENAME"
  406. #define szUPDATEMODE "UPDATEMODE"
  407. #define szFIELDPROPS "FIELDPROPS"
  408. #define szPROVFLAGS "PROVFLAGS"
  409. #define szORIGIN "ORIGIN"
  410. #define szMD_SEMANTICS "MD_SEMANTICS"
  411. #define szSERVERCALC "SERVER_CALC"
  412. #define szBDEDOMCL "BDEDOMAIN_CL"
  413. #define szBDERECCL "BDERECORD_CL"
  414. #define szBDEDEFCL "BDEDEFAULT_CL"
  415. #define szDISABLE_INSERTS "DISABLE_INSERTS"
  416. #define szDISABLE_DELETES "DISABLE_DELETES"
  417. #define szDISABLE_EDITS "DISABLE_EDITS"
  418. #define szNO_RESET_CALL "NO_RESET_CALL"
  419. #define szMINVALUE "MINVALUE"
  420. #define szMAXVALUE "MAXVALUE"
  421. #define szstMEMO "Text"
  422. #define szstBINARY "Binary"
  423. #define szstFMTMEMO "Formatted"
  424. #define szstOLEOBJ "Ole"
  425. #define szstGRAPHIC "Graphics"
  426. #define szstDBSOLEOBJ "dBASEOle"
  427. #define szstTYPEDBINARY "TypedBinary"
  428. #define szstMONEY "Money"
  429. #define szstAUTOINC "Autoinc"
  430. #define szstADTNESTEDTABLE "ADTNestedTable"
  431. #define szstFIXEDCHAR "FixedChar"
  432. #define szstREFNESTEDTABLE "Reference"
  433. #define szstGUID "Guid"
  434. #define szstACCOLEOBJ "AccessOle"
  435. #define szstHMEMO "HMemo"
  436. #define szstHBINARY "HBinary"
  437. static const Shortint fldstReference = 0x46;
  438. static const Shortint dsfldUNKNOWN = 0x0;
  439. static const Shortint dsfldINT = 0x1;
  440. static const Shortint dsfldUINT = 0x2;
  441. static const Shortint dsfldBOOL = 0x3;
  442. static const Shortint dsfldFLOATIEEE = 0x4;
  443. static const Shortint dsfldBCD = 0x5;
  444. static const Shortint dsfldDATE = 0x6;
  445. static const Shortint dsfldTIME = 0x7;
  446. static const Shortint dsfldTIMESTAMP = 0x8;
  447. static const Shortint dsfldZSTRING = 0x9;
  448. static const Shortint dsfldUNICODE = 0xa;
  449. static const Shortint dsfldBYTES = 0xb;
  450. static const Shortint dsfldADT = 0xc;
  451. static const Shortint dsfldARRAY = 0xd;
  452. static const Shortint dsfldEMBEDDEDTBL = 0xe;
  453. static const Shortint dsfldREF = 0xf;
  454. static const Shortint dsSizeBitsLen = 0x10;
  455. static const Word dsSizeBitsMask = 0xffff;
  456. static const int dsTypeBitsMask = 0x3f0000;
  457. static const int dsVaryingFldType = 0x400000;
  458. static const int dsArrayFldType = 0x800000;
  459. static const int dsPseudoFldType = 0x1000000;
  460. static const int dsCompArrayFldType = 0x2000000;
  461. static const int dsEmbeddedFldType = 0x4000000;
  462. static const unsigned dsIncInDelta = 0x80000000;
  463. static const Word dskeyCASEINSENSITIVE = 0x4000;
  464. static const Word dskeyDESCENDING = 0x8000;
  465. static const unsigned dsDELAYEDBIT = 0x80000000;
  466. static const Shortint PACKETVERSION_1 = 0x1;
  467. static const Shortint PACKETVERSION_2 = 0x2;
  468. static const Shortint dsCASCADEDELETES = 0x1;
  469. static const Shortint dsCASCADEUPDATES = 0x2;
  470. static const Shortint fldUNKNOWN = 0x0;
  471. static const Shortint fldZSTRING = 0x1;
  472. static const Shortint fldDATE = 0x2;
  473. static const Shortint fldBLOB = 0x3;
  474. static const Shortint fldBOOL = 0x4;
  475. static const Shortint fldINT16 = 0x5;
  476. static const Shortint fldINT32 = 0x6;
  477. static const Shortint fldFLOAT = 0x7;
  478. static const Shortint fldBCD = 0x8;
  479. static const Shortint fldBYTES = 0x9;
  480. static const Shortint fldTIME = 0xa;
  481. static const Shortint fldTIMESTAMP = 0xb;
  482. static const Shortint fldUINT16 = 0xc;
  483. static const Shortint fldUINT32 = 0xd;
  484. static const Shortint fldFLOATIEEE = 0xe;
  485. static const Shortint fldVARBYTES = 0xf;
  486. static const Shortint fldLOCKINFO = 0x10;
  487. static const Shortint fldCURSOR = 0x11;
  488. static const Shortint fldINT64 = 0x12;
  489. static const Shortint fldUINT64 = 0x13;
  490. static const Shortint fldADT = 0x14;
  491. static const Shortint fldARRAY = 0x15;
  492. static const Shortint fldREF = 0x16;
  493. static const Shortint fldTABLE = 0x17;
  494. static const Shortint MAXLOGFLDTYPES = 0x18;
  495. static const Word fldUNICODE = 0x1007;
  496. static const Shortint fldstMONEY = 0x15;
  497. static const Shortint fldstMEMO = 0x16;
  498. static const Shortint fldstBINARY = 0x17;
  499. static const Shortint fldstFMTMEMO = 0x18;
  500. static const Shortint fldstOLEOBJ = 0x19;
  501. static const Shortint fldstGRAPHIC = 0x1a;
  502. static const Shortint fldstDBSOLEOBJ = 0x1b;
  503. static const Shortint fldstTYPEDBINARY = 0x1c;
  504. static const Shortint fldstACCOLEOBJ = 0x1e;
  505. static const Shortint fldstHMEMO = 0x21;
  506. static const Shortint fldstHBINARY = 0x22;
  507. static const Shortint fldstBFILE = 0x24;
  508. static const Shortint fldstPASSWORD = 0x1;
  509. static const Shortint fldstFIXED = 0x1f;
  510. static const Shortint fldstUNICODE = 0x20;
  511. static const Shortint fldstGUID = 0x26;
  512. static const Shortint fldstAUTOINC = 0x1d;
  513. extern PACKAGE Byte FieldTypeMap[36];
  514. extern PACKAGE Word FldSubTypeMap[36];
  515. extern PACKAGE Db::TFieldType DataTypeMap[24];
  516. extern PACKAGE Db::TFieldType BlobTypeMap[15];
  517. static const Shortint DBERR_NONE = 0x0;
  518. static const Word DBERR_BOF = 0x2201;
  519. static const Word DBERR_EOF = 0x2202;
  520. static const Word DBERR_NOSUCHINDEX = 0x270d;
  521. static const Shortint ERRCAT_ALC = 0x40;
  522. static const Word ERRBASE_ALC = 0x4000;
  523. static const Shortint ERRCODE_DELTAISEMPTY = 0x1;
  524. static const Shortint ERRCODE_NOTHINGTOUNDO = 0x2;
  525. static const Shortint ERRCODE_NOMETADATA = 0x3;
  526. static const Shortint ERRCODE_CANNOTAPPEND = 0x4;
  527. static const Shortint ERRCODE_DATAPACKETMISMATCH = 0x5;
  528. static const Shortint ERRCODE_ABORTED = 0x6;
  529. static const Shortint ERRCODE_CANCELLED = 0x7;
  530. static const Shortint ERRCODE_NEWERVERSIONREQ = 0x8;
  531. static const Shortint ERRCODE_BLOBNOTFETCHED = 0x9;
  532. static const Shortint ERRCODE_DETAILSNOTFETCHED = 0xa;
  533. static const Shortint ERRCODE_NOMASTERRECORD = 0xb;
  534. static const Shortint ERRCODE_LINKFIELDSNOTUNIQUE = 0xc;
  535. static const Shortint ERRCODE_FLYAWAY_WRONGORDER = 0xd;
  536. static const Shortint ERRCODE_NOCASCADEDUPDATES = 0xe;
  537. static const Word DBERR_DELTAISEMPTY = 0x4001;
  538. static const Word DBERR_NOTHINGTOUNDO = 0x4002;
  539. static const Word DBERR_NOMETADATA = 0x4003;
  540. static const Word DBERR_CANNOTAPPEND = 0x4004;
  541. static const Word DBERR_DATAPACKETMISMATCH = 0x4005;
  542. static const Word DBERR_ABORTED = 0x4006;
  543. static const Word DBERR_CANCELLED = 0x4007;
  544. static const Word DBERR_NEWERVERSIONREQ = 0x4008;
  545. static const Word DBERR_BLOBNOTFETCHED = 0x4009;
  546. static const Word DBERR_DETAILSNOTFETCHED = 0x400a;
  547. static const Word DBERR_NOMASTERRECORD = 0x400b;
  548. static const Word DBERR_LINKFIELDSNOTUNIQUE = 0x400c;
  549. static const Word DBERR_FLYAWAY_WRONGORDER = 0x400d;
  550. static const Word DBERR_NOCASCADEDUPDATES = 0x400e;
  551. extern PACKAGE GUID CLSID_DSBase;
  552. extern PACKAGE GUID CLSID_DSCursor;
  553. extern PACKAGE GUID CLSID_DSWriter;
  554. extern PACKAGE void __fastcall CreateDbClientObject(const GUID &CLSID, const GUID &IID, /* out */ void 
  555.     *Obj);
  556. extern PACKAGE void __fastcall FreeDataPacket(Activex::PSafeArray &DataPacket);
  557. extern PACKAGE Activex::PSafeArray __fastcall VarToDataPacket(const OleVariant &V);
  558. extern PACKAGE int __fastcall DataPacketSize(const Activex::PSafeArray DataPacket);
  559. extern PACKAGE void __fastcall DataPacketToVariant(const Activex::PSafeArray DataPacket, OleVariant 
  560.     &V);
  561. extern PACKAGE AnsiString __fastcall VariantArrayToString(const OleVariant &V);
  562. extern PACKAGE OleVariant __fastcall StringToVariantArray(const AnsiString S);
  563.  
  564. }    /* namespace Dsintf */
  565. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  566. using namespace Dsintf;
  567. #endif
  568. #pragma option pop    // -w-
  569. #pragma option pop    // -Vx
  570.  
  571. #pragma delphiheader end.
  572. //-- end unit ----------------------------------------------------------------
  573. #endif    // DSIntf
  574.