Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2020 lines
56 KiB

  1. /************************************************************************
  2. ** D B D A O I N T. H *
  3. ** *
  4. *************************************************************************
  5. ** Copyright (C) 1995-1997 by Microsoft Corporation *
  6. ** All Rights Reserved *
  7. ************************************************************************/
  8. /*
  9. DBDAOINT.H
  10. OLE DAO Interface.
  11. This is a part of the Microsoft Data Access Objects SDK library.
  12. See the dao*.hlp files for detailed information regarding the
  13. Microsoft Data Access Objects SDK product.
  14. */
  15. #ifndef _DBDAOINT_H_
  16. #define _DBDAOINT_H_
  17. #ifndef _INC_TCHAR
  18. #include <tchar.h>
  19. #endif
  20. // Forwards
  21. interface _DAODBEngine;
  22. #define DAODBEngine _DAODBEngine
  23. interface DAOError;
  24. interface _DAOCollection;
  25. #define DAOCollection _DAOCollection
  26. interface DAOErrors;
  27. interface DAOProperty;
  28. interface _DAODynaCollection;
  29. #define DAODynaCollection _DAODynaCollection
  30. interface DAOProperties;
  31. interface DAOWorkspace;
  32. interface DAOWorkspaces;
  33. interface DAOConnection;
  34. interface DAOConnections;
  35. interface DAODatabase;
  36. interface DAODatabases;
  37. interface _DAOTableDef;
  38. #define DAOTableDef _DAOTableDef
  39. interface DAOTableDefs;
  40. interface _DAOQueryDef;
  41. #define DAOQueryDef _DAOQueryDef
  42. interface DAOQueryDefs;
  43. interface DAORecordset;
  44. interface DAORecordsets;
  45. interface _DAOField;
  46. #define DAOField _DAOField
  47. interface DAOFields;
  48. interface _DAOIndex;
  49. #define DAOIndex _DAOIndex
  50. interface DAOIndexes;
  51. interface DAOParameter;
  52. interface DAOParameters;
  53. interface _DAOUser;
  54. #define DAOUser _DAOUser
  55. interface DAOUsers;
  56. interface _DAOGroup;
  57. #define DAOGroup _DAOGroup
  58. interface DAOGroups;
  59. interface _DAORelation;
  60. #define DAORelation _DAORelation
  61. interface DAORelations;
  62. interface DAOContainer;
  63. interface DAOContainers;
  64. interface DAODocument;
  65. interface DAODocuments;
  66. interface DAOIndexFields;
  67. typedef enum RecordsetTypeEnum
  68. { dbOpenTable = 1,
  69. dbOpenDynaset = 2,
  70. dbOpenSnapshot = 4,
  71. dbOpenForwardOnly = 8,
  72. dbOpenDynamic = 16
  73. } RecordsetTypeEnum;
  74. typedef enum EditModeEnum
  75. { dbEditNone = 0,
  76. dbEditInProgress = 1,
  77. dbEditAdd = 2,
  78. dbEditChanged = 4,
  79. dbEditDeleted = 8,
  80. dbEditNew = 16
  81. } EditModeEnum;
  82. typedef enum RecordsetOptionEnum
  83. { dbDenyWrite = 0x1,
  84. dbDenyRead = 0x2,
  85. dbReadOnly = 0x4,
  86. dbAppendOnly = 0x8,
  87. dbInconsistent = 0x10,
  88. dbConsistent = 0x20,
  89. dbSQLPassThrough = 0x40,
  90. dbFailOnError = 0x80,
  91. dbForwardOnly = 0x100,
  92. dbSeeChanges = 0x200,
  93. dbRunAsync = 0x400,
  94. dbExecDirect = 0x800
  95. } RecordsetOptionEnum;
  96. typedef enum LockTypeEnum
  97. { dbPessimistic = 0x2,
  98. dbOptimistic = 0x3,
  99. dbOptimisticValue = 0x1,
  100. dbOptimisticBatch = 0x5
  101. } LockTypeEnum;
  102. typedef enum UpdateCriteriaEnum
  103. { dbCriteriaKey = 0x1,
  104. dbCriteriaModValues = 0x2,
  105. dbCriteriaAllCols = 0x4,
  106. dbCriteriaTimestamp = 0x8,
  107. dbCriteriaDeleteInsert = 0x10,
  108. dbCriteriaUpdate = 0x20
  109. } UpdateCriteriaEnum;
  110. typedef enum FieldAttributeEnum
  111. { dbFixedField = 0x1,
  112. dbVariableField = 0x2,
  113. dbAutoIncrField = 0x10,
  114. dbUpdatableField = 0x20,
  115. dbSystemField = 0x2000,
  116. dbHyperlinkField = 0x8000,
  117. dbDescending = 0x1
  118. } FieldAttributeEnum;
  119. typedef enum DataTypeEnum
  120. { dbBoolean = 1,
  121. dbByte = 2,
  122. dbInteger = 3,
  123. dbLong = 4,
  124. dbCurrency = 5,
  125. dbSingle = 6,
  126. dbDouble = 7,
  127. dbDate = 8,
  128. dbBinary = 9,
  129. dbText = 10,
  130. dbLongBinary = 11,
  131. dbMemo = 12,
  132. dbGUID = 15,
  133. dbBigInt = 16,
  134. dbVarBinary = 17,
  135. dbChar = 18,
  136. dbNumeric = 19,
  137. dbDecimal = 20,
  138. dbFloat = 21,
  139. dbTime = 22,
  140. dbTimeStamp = 23
  141. } DataTypeEnum;
  142. typedef enum RelationAttributeEnum
  143. { dbRelationUnique = 0x1,
  144. dbRelationDontEnforce = 0x2,
  145. dbRelationInherited = 0x4,
  146. dbRelationUpdateCascade = 0x100,
  147. dbRelationDeleteCascade = 0x1000,
  148. dbRelationLeft = 0x1000000,
  149. dbRelationRight = 0x2000000
  150. } RelationAttributeEnum;
  151. typedef enum TableDefAttributeEnum
  152. { dbAttachExclusive = 0x10000,
  153. dbAttachSavePWD = 0x20000,
  154. dbSystemObject = 0x80000002,
  155. dbAttachedTable = 0x40000000,
  156. dbAttachedODBC = 0x20000000,
  157. dbHiddenObject = 0x1
  158. } TableDefAttributeEnum;
  159. typedef enum QueryDefTypeEnum
  160. { dbQSelect = 0,
  161. dbQProcedure = 0xe0,
  162. dbQAction = 0xf0,
  163. dbQCrosstab = 0x10,
  164. dbQDelete = 0x20,
  165. dbQUpdate = 0x30,
  166. dbQAppend = 0x40,
  167. dbQMakeTable = 0x50,
  168. dbQDDL = 0x60,
  169. dbQSQLPassThrough = 0x70,
  170. dbQSetOperation = 0x80,
  171. dbQSPTBulk = 0x90,
  172. dbQCompound = 0xa0
  173. } QueryDefTypeEnum;
  174. typedef enum QueryDefStateEnum
  175. { dbQPrepare = 1,
  176. dbQUnprepare = 2
  177. } QueryDefStateEnum;
  178. typedef enum DatabaseTypeEnum
  179. { dbVersion10 = 1,
  180. dbEncrypt = 2,
  181. dbDecrypt = 4,
  182. dbVersion11 = 8,
  183. dbVersion20 = 16,
  184. dbVersion30 = 32,
  185. dbVersion40 = 64
  186. } DatabaseTypeEnum;
  187. typedef enum CollatingOrderEnum
  188. { dbSortNeutral = 0x400,
  189. dbSortArabic = 0x401,
  190. dbSortCyrillic = 0x419,
  191. dbSortCzech = 0x405,
  192. dbSortDutch = 0x413,
  193. dbSortGeneral = 0x409,
  194. dbSortGreek = 0x408,
  195. dbSortHebrew = 0x40d,
  196. dbSortHungarian = 0x40e,
  197. dbSortIcelandic = 0x40f,
  198. dbSortNorwdan = 0x406,
  199. dbSortPDXIntl = 0x409,
  200. dbSortPDXNor = 0x406,
  201. dbSortPDXSwe = 0x41d,
  202. dbSortPolish = 0x415,
  203. dbSortSpanish = 0x40a,
  204. dbSortSwedFin = 0x41d,
  205. dbSortTurkish = 0x41f,
  206. dbSortJapanese = 0x411,
  207. dbSortChineseSimplified = 0x804,
  208. dbSortChineseTraditional = 0x404,
  209. dbSortKorean = 0x412,
  210. dbSortThai = 0x41e,
  211. dbSortSlovenian = 0x424,
  212. dbSortUndefined = -1
  213. } CollatingOrderEnum;
  214. typedef enum IdleEnum
  215. { dbFreeLocks = 1,
  216. dbRefreshCache = 8
  217. } IdleEnum;
  218. typedef enum PermissionEnum
  219. { dbSecNoAccess = 0,
  220. dbSecFullAccess = 0xfffff,
  221. dbSecDelete = 0x10000,
  222. dbSecReadSec = 0x20000,
  223. dbSecWriteSec = 0x40000,
  224. dbSecWriteOwner = 0x80000,
  225. dbSecDBCreate = 0x1,
  226. dbSecDBOpen = 0x2,
  227. dbSecDBExclusive = 0x4,
  228. dbSecDBAdmin = 0x8,
  229. dbSecCreate = 0x1,
  230. dbSecReadDef = 0x4,
  231. dbSecWriteDef = 0x1000c,
  232. dbSecRetrieveData = 0x14,
  233. dbSecInsertData = 0x20,
  234. dbSecReplaceData = 0x40,
  235. dbSecDeleteData = 0x80
  236. } PermissionEnum;
  237. typedef enum SynchronizeTypeEnum
  238. { dbRepExportChanges = 0x1,
  239. dbRepImportChanges = 0x2,
  240. dbRepImpExpChanges = 0x4,
  241. dbRepSyncInternet = 0x10
  242. } SynchronizeTypeEnum;
  243. typedef enum ReplicaTypeEnum
  244. { dbRepMakeReadOnly = 0x2,
  245. dbRepMakePartial = 0x1
  246. } ReplicaTypeEnum;
  247. typedef enum WorkspaceTypeEnum
  248. { dbUseODBC = 1,
  249. dbUseJet = 2
  250. } WorkspaceTypeEnum;
  251. typedef enum CursorDriverEnum
  252. { dbUseDefaultCursor = -1,
  253. dbUseODBCCursor = 1,
  254. dbUseServerCursor = 2,
  255. dbUseClientBatchCursor = 3,
  256. dbUseNoCursor = 4
  257. } CursorDriverEnum;
  258. typedef enum DriverPromptEnum
  259. { dbDriverPrompt = 2,
  260. dbDriverNoPrompt = 1,
  261. dbDriverComplete = 0,
  262. dbDriverCompleteRequired = 3
  263. } DriverPromptEnum;
  264. typedef enum SetOptionEnum
  265. { dbPageTimeout = 6,
  266. dbLockRetry = 57,
  267. dbMaxBufferSize = 8,
  268. dbUserCommitSync = 58,
  269. dbImplicitCommitSync = 59,
  270. dbExclusiveAsyncDelay = 60,
  271. dbSharedAsyncDelay = 61,
  272. dbMaxLocksPerFile = 62,
  273. dbLockDelay = 63,
  274. dbRecycleLVs = 65,
  275. dbFlushTransactionTimeout = 66
  276. } SetOptionEnum;
  277. typedef enum ParameterDirectionEnum
  278. { dbParamInput = 1,
  279. dbParamOutput = 2,
  280. dbParamInputOutput = 3,
  281. dbParamReturnValue = 4
  282. } ParameterDirectionEnum;
  283. typedef enum UpdateTypeEnum
  284. { dbUpdateBatch = 4,
  285. dbUpdateRegular = 1,
  286. dbUpdateCurrentRecord = 2
  287. } UpdateTypeEnum;
  288. typedef enum RecordStatusEnum
  289. { dbRecordUnmodified = 0,
  290. dbRecordModified = 1,
  291. dbRecordNew = 2,
  292. dbRecordDeleted = 3,
  293. dbRecordDBDeleted = 4
  294. } RecordStatusEnum;
  295. typedef enum CommitTransOptionsEnum
  296. { dbForceOSFlush = 1
  297. } CommitTransOptionsEnum;
  298. typedef enum _DAOSuppHelp
  299. { LogMessages = 0,
  300. KeepLocal = 0,
  301. Replicable = 0,
  302. ReplicableBool = 0,
  303. V1xNullBehavior = 0
  304. } _DAOSuppHelp;
  305. #define dbLangArabic _T(";LANGID=0x0401;CP=1256;COUNTRY=0")
  306. #define dbLangCzech _T(";LANGID=0x0405;CP=1250;COUNTRY=0")
  307. #define dbLangDutch _T(";LANGID=0x0413;CP=1252;COUNTRY=0")
  308. #define dbLangGeneral _T(";LANGID=0x0409;CP=1252;COUNTRY=0")
  309. #define dbLangGreek _T(";LANGID=0x0408;CP=1253;COUNTRY=0")
  310. #define dbLangHebrew _T(";LANGID=0x040D;CP=1255;COUNTRY=0")
  311. #define dbLangHungarian _T(";LANGID=0x040E;CP=1250;COUNTRY=0")
  312. #define dbLangIcelandic _T(";LANGID=0x040F;CP=1252;COUNTRY=0")
  313. #define dbLangNordic _T(";LANGID=0x041D;CP=1252;COUNTRY=0")
  314. #define dbLangNorwDan _T(";LANGID=0x0414;CP=1252;COUNTRY=0")
  315. #define dbLangPolish _T(";LANGID=0x0415;CP=1250;COUNTRY=0")
  316. #define dbLangCyrillic _T(";LANGID=0x0419;CP=1251;COUNTRY=0")
  317. #define dbLangSpanish _T(";LANGID=0x040A;CP=1252;COUNTRY=0")
  318. #define dbLangSwedFin _T(";LANGID=0x040B;CP=1252;COUNTRY=0")
  319. #define dbLangTurkish _T(";LANGID=0x041F;CP=1254;COUNTRY=0")
  320. #define dbLangJapanese _T(";LANGID=0x0411;CP=932;COUNTRY=0")
  321. #define dbLangChineseSimplified _T(";LANGID=0x0804;CP=936;COUNTRY=0")
  322. #define dbLangChineseTraditional _T(";LANGID=0x0404;CP=950;COUNTRY=0")
  323. #define dbLangKorean _T(";LANGID=0x0412;CP=949;COUNTRY=0")
  324. #define dbLangThai _T(";LANGID=0x041E;CP=874;COUNTRY=0")
  325. #define dbLangSlovenian _T(";LANGID=0x0424;CP=1250;COUNTRY=0")
  326. // Interface: _DAOCollection
  327. #undef INTERFACE
  328. #define INTERFACE _DAOCollection
  329. DECLARE_INTERFACE_(_DAOCollection, IDispatch)
  330. {
  331. STDMETHOD(get_Count) (THIS_ short FAR* c) PURE;
  332. STDMETHOD(_NewEnum) (THIS_ IUnknown * FAR* ppunk) PURE;
  333. STDMETHOD(Refresh) (THIS) PURE;
  334. };
  335. // Interface: _DAODynaCollection
  336. #undef INTERFACE
  337. #define INTERFACE _DAODynaCollection
  338. DECLARE_INTERFACE_(_DAODynaCollection, _DAOCollection)
  339. {
  340. STDMETHOD(Append) (THIS_ IDispatch * Object) PURE;
  341. STDMETHOD(Delete) (THIS_ BSTR Name) PURE;
  342. };
  343. // Interface: _DAO
  344. #undef INTERFACE
  345. #define INTERFACE _DAO
  346. DECLARE_INTERFACE_(_DAO, IDispatch)
  347. {
  348. STDMETHOD(get_Properties) (THIS_ DAOProperties FAR* FAR* ppprops) PURE;
  349. };
  350. // Interface: _DAODBEngine
  351. #undef INTERFACE
  352. #define INTERFACE _DAODBEngine
  353. DECLARE_INTERFACE_(_DAODBEngine, _DAO)
  354. {
  355. STDMETHOD( get_Properties ) (
  356. /* [retval][out] */ DAOProperties __RPC_FAR *__RPC_FAR *ppprops );
  357. STDMETHOD( get_Version ) (
  358. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  359. STDMETHOD( get_IniPath ) (
  360. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  361. STDMETHOD( put_IniPath ) (
  362. /* [in] */ BSTR path ) PURE;
  363. STDMETHOD( put_DefaultUser ) (
  364. /* [in] */ BSTR user ) PURE;
  365. STDMETHOD( put_DefaultPassword ) (
  366. /* [in] */ BSTR pw ) PURE;
  367. STDMETHOD( get_LoginTimeout ) (
  368. /* [retval][out] */ short __RPC_FAR *ps ) PURE;
  369. STDMETHOD( put_LoginTimeout ) (
  370. /* [in] */ short Timeout ) PURE;
  371. STDMETHOD( get_Workspaces ) (
  372. /* [retval][out] */ DAOWorkspaces __RPC_FAR *__RPC_FAR *ppworks ) PURE;
  373. STDMETHOD( get_Errors ) (
  374. /* [retval][out] */ DAOErrors __RPC_FAR *__RPC_FAR *pperrs ) PURE;
  375. STDMETHOD( Idle ) (
  376. /* [optional][in] */ VARIANT Action ) PURE;
  377. STDMETHOD( CompactDatabase ) (
  378. /* [in] */ BSTR SrcName,
  379. /* [in] */ BSTR DstName,
  380. /* [optional][in] */ VARIANT DstLocale,
  381. /* [optional][in] */ VARIANT Options,
  382. /* [optional][in] */ VARIANT SrcLocale ) PURE;
  383. STDMETHOD( RepairDatabase ) (
  384. /* [in] */ BSTR Name ) PURE;
  385. STDMETHOD( RegisterDatabase ) (
  386. /* [in] */ BSTR Dsn,
  387. /* [in] */ BSTR Driver,
  388. /* [in] */ VARIANT_BOOL Silent,
  389. /* [in] */ BSTR Attributes ) PURE;
  390. STDMETHOD( _30_CreateWorkspace ) (
  391. /* [in] */ BSTR Name,
  392. /* [in] */ BSTR UserName,
  393. /* [in] */ BSTR Password,
  394. /* [retval][out] */ DAOWorkspace __RPC_FAR *__RPC_FAR *ppwrk ) PURE;
  395. STDMETHOD( OpenDatabase ) (
  396. /* [in] */ BSTR Name,
  397. /* [optional][in] */ VARIANT Options,
  398. /* [optional][in] */ VARIANT ReadOnly,
  399. /* [optional][in] */ VARIANT Connect,
  400. /* [retval][out] */ DAODatabase __RPC_FAR *__RPC_FAR *ppdb ) PURE;
  401. STDMETHOD( CreateDatabase ) (
  402. /* [in] */ BSTR Name,
  403. /* [in] */ BSTR Locale,
  404. /* [optional][in] */ VARIANT Option,
  405. /* [retval][out] */ DAODatabase __RPC_FAR *__RPC_FAR *ppdb ) PURE;
  406. STDMETHOD( FreeLocks ) (
  407. VOID ) PURE;
  408. STDMETHOD( BeginTrans ) (
  409. VOID ) PURE;
  410. STDMETHOD( CommitTrans ) (
  411. /* [defaultvalue][in] */ long Option ) PURE;
  412. STDMETHOD( Rollback ) (
  413. VOID ) PURE;
  414. STDMETHOD( SetDefaultWorkspace ) (
  415. /* [in] */ BSTR Name,
  416. /* [in] */ BSTR Password ) PURE;
  417. STDMETHOD( SetDataAccessOption ) (
  418. /* [in] */ short Option,
  419. /* [in] */ VARIANT Value ) PURE;
  420. STDMETHOD( ISAMStats ) (
  421. /* [in] */ long StatNum,
  422. /* [optional][in] */ VARIANT Reset,
  423. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  424. STDMETHOD( get_SystemDB ) (
  425. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  426. STDMETHOD( put_SystemDB ) (
  427. /* [in] */ BSTR SystemDBPath ) PURE;
  428. STDMETHOD( CreateWorkspace ) (
  429. /* [in] */ BSTR Name,
  430. /* [in] */ BSTR UserName,
  431. /* [in] */ BSTR Password,
  432. /* [optional][in] */ VARIANT UseType,
  433. /* [retval][out] */ DAOWorkspace __RPC_FAR *__RPC_FAR *ppwrk ) PURE;
  434. STDMETHOD( OpenConnection ) (
  435. /* [in] */ BSTR Name,
  436. /* [optional][in] */ VARIANT Options,
  437. /* [optional][in] */ VARIANT ReadOnly,
  438. /* [optional][in] */ VARIANT Connect,
  439. /* [retval][out] */ DAOConnection __RPC_FAR *__RPC_FAR *ppconn ) PURE;
  440. STDMETHOD( get_DefaultType ) (
  441. /* [retval][out] */ long __RPC_FAR *Option ) PURE;
  442. STDMETHOD( put_DefaultType ) (
  443. /* [in] */ long Option ) PURE;
  444. STDMETHOD( SetOption ) (
  445. /* [in] */ LONG Option,
  446. /* [in] */ VARIANT Value ) PURE;
  447. STDMETHOD( DumpObjects ) (
  448. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  449. STDMETHOD( DebugPrint ) (
  450. /* [in] */ BSTR bstr ) PURE;
  451. };// end interface;
  452. // Interface: DAOError
  453. #undef INTERFACE
  454. #define INTERFACE DAOError
  455. DECLARE_INTERFACE_(DAOError, IDispatch)
  456. {
  457. STDMETHOD( get_Number ) (
  458. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  459. STDMETHOD( get_Source ) (
  460. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  461. STDMETHOD( get_Description ) (
  462. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  463. STDMETHOD( get_HelpFile ) (
  464. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  465. STDMETHOD( get_HelpContext ) (
  466. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  467. };// end interface;
  468. // Interface: DAOErrors
  469. #undef INTERFACE
  470. #define INTERFACE DAOErrors
  471. DECLARE_INTERFACE_(DAOErrors, _DAOCollection)
  472. {
  473. STDMETHOD( get_Item ) (
  474. /* [in] */ VARIANT Item,
  475. /* [retval][out] */ DAOError __RPC_FAR *__RPC_FAR *pperr ) PURE;
  476. };// end interface;
  477. // Interface: DAOProperty
  478. #undef INTERFACE
  479. #define INTERFACE DAOProperty
  480. DECLARE_INTERFACE_(DAOProperty, _DAO)
  481. {
  482. STDMETHOD( get_Value ) (
  483. /* [retval][out] */ VARIANT __RPC_FAR *pval ) PURE;
  484. STDMETHOD( put_Value ) (
  485. /* [in] */ VARIANT val ) PURE;
  486. STDMETHOD( get_Name ) (
  487. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  488. STDMETHOD( put_Name ) (
  489. /* [in] */ BSTR bstr ) PURE;
  490. STDMETHOD( get_Type ) (
  491. /* [retval][out] */ short __RPC_FAR *ptype ) PURE;
  492. STDMETHOD( put_Type ) (
  493. /* [in] */ short type ) PURE;
  494. STDMETHOD( get_Inherited ) (
  495. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  496. };// end interface;
  497. // Interface: DAOProperties
  498. #undef INTERFACE
  499. #define INTERFACE DAOProperties
  500. DECLARE_INTERFACE_(DAOProperties, _DAODynaCollection)
  501. {
  502. STDMETHOD( get_Item ) (
  503. /* [in] */ VARIANT Item,
  504. /* [retval][out] */ DAOProperty __RPC_FAR *__RPC_FAR *ppprop ) PURE;
  505. };// end interface;
  506. // Interface: DAOWorkspace
  507. #undef INTERFACE
  508. #define INTERFACE DAOWorkspace
  509. DECLARE_INTERFACE_(DAOWorkspace, _DAO)
  510. {
  511. STDMETHOD( get_Name ) (
  512. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  513. STDMETHOD( put_Name ) (
  514. /* [in] */ BSTR Name ) PURE;
  515. STDMETHOD( get_UserName ) (
  516. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  517. STDMETHOD( put__30_UserName ) (
  518. /* [in] */ BSTR UserName ) PURE;
  519. STDMETHOD( put__30_Password ) (
  520. /* [in] */ BSTR Password ) PURE;
  521. STDMETHOD( get_IsolateODBCTrans ) (
  522. /* [retval][out] */ short __RPC_FAR *ps ) PURE;
  523. STDMETHOD( put_IsolateODBCTrans ) (
  524. /* [in] */ short s ) PURE;
  525. STDMETHOD( get_Databases ) (
  526. /* [retval][out] */ DAODatabases __RPC_FAR *__RPC_FAR *ppdbs ) PURE;
  527. STDMETHOD( get_Users ) (
  528. /* [retval][out] */ DAOUsers __RPC_FAR *__RPC_FAR *ppusrs ) PURE;
  529. STDMETHOD( get_Groups ) (
  530. /* [retval][out] */ DAOGroups __RPC_FAR *__RPC_FAR *ppgrps ) PURE;
  531. STDMETHOD( BeginTrans ) (
  532. VOID ) PURE;
  533. STDMETHOD( CommitTrans ) (
  534. /* [defaultvalue][in] */ long Options ) PURE;
  535. STDMETHOD( Close ) (
  536. VOID ) PURE;
  537. STDMETHOD( Rollback ) (
  538. VOID ) PURE;
  539. STDMETHOD( OpenDatabase ) (
  540. /* [in] */ BSTR Name,
  541. /* [optional][in] */ VARIANT Options,
  542. /* [optional][in] */ VARIANT ReadOnly,
  543. /* [optional][in] */ VARIANT Connect,
  544. /* [retval][out] */ DAODatabase __RPC_FAR *__RPC_FAR *ppdb ) PURE;
  545. STDMETHOD( CreateDatabase ) (
  546. /* [in] */ BSTR Name,
  547. /* [in] */ BSTR Connect,
  548. /* [optional][in] */ VARIANT Option,
  549. /* [retval][out] */ DAODatabase __RPC_FAR *__RPC_FAR *ppdb ) PURE;
  550. STDMETHOD( CreateUser ) (
  551. /* [optional][in] */ VARIANT Name,
  552. /* [optional][in] */ VARIANT PID,
  553. /* [optional][in] */ VARIANT Password,
  554. /* [retval][out] */ DAOUser __RPC_FAR *__RPC_FAR *ppusr ) PURE;
  555. STDMETHOD( CreateGroup ) (
  556. /* [optional][in] */ VARIANT Name,
  557. /* [optional][in] */ VARIANT PID,
  558. /* [retval][out] */ DAOGroup __RPC_FAR *__RPC_FAR *ppgrp ) PURE;
  559. STDMETHOD( OpenConnection ) (
  560. /* [in] */ BSTR Name,
  561. /* [optional][in] */ VARIANT Options,
  562. /* [optional][in] */ VARIANT ReadOnly,
  563. /* [optional][in] */ VARIANT Connect,
  564. /* [retval][out] */ DAOConnection __RPC_FAR *__RPC_FAR *ppconn ) PURE;
  565. STDMETHOD( get_LoginTimeout ) (
  566. /* [retval][out] */ long __RPC_FAR *pTimeout ) PURE;
  567. STDMETHOD( put_LoginTimeout ) (
  568. /* [in] */ long Timeout ) PURE;
  569. STDMETHOD( get_DefaultCursorDriver ) (
  570. /* [retval][out] */ long __RPC_FAR *pCursorType ) PURE;
  571. STDMETHOD( put_DefaultCursorDriver ) (
  572. /* [in] */ long CursorType ) PURE;
  573. STDMETHOD( get_hEnv ) (
  574. /* [retval][out] */ LONG __RPC_FAR *phEnv ) PURE;
  575. STDMETHOD( get_Type ) (
  576. /* [retval][out] */ LONG __RPC_FAR *ptype ) PURE;
  577. STDMETHOD( get_Connections ) (
  578. /* [retval][out] */ DAOConnections __RPC_FAR *__RPC_FAR *ppcns ) PURE;
  579. };// end interface;
  580. // Interface: DAOWorkspaces
  581. #undef INTERFACE
  582. #define INTERFACE DAOWorkspaces
  583. DECLARE_INTERFACE_(DAOWorkspaces, _DAODynaCollection)
  584. {
  585. STDMETHOD( get_Item ) (
  586. /* [in] */ VARIANT Item,
  587. /* [retval][out] */ DAOWorkspace __RPC_FAR *__RPC_FAR *ppwrk ) PURE;
  588. };// end interface;
  589. // Interface: DAOConnection
  590. #undef INTERFACE
  591. #define INTERFACE DAOConnection
  592. DECLARE_INTERFACE_(DAOConnection, IDispatch)
  593. {
  594. STDMETHOD( QueryInterface ) ( REFIID riid, LPVOID FAR* ppvObj );
  595. STDMETHOD( get_Name ) (
  596. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  597. STDMETHOD( get_Connect ) (
  598. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  599. STDMETHOD( get_Database ) (
  600. /* [retval][out] */ DAODatabase __RPC_FAR *__RPC_FAR *ppDb ) PURE;
  601. STDMETHOD( get_hDbc ) (
  602. /* [retval][out] */ LONG __RPC_FAR *phDbc ) PURE;
  603. STDMETHOD( get_QueryTimeout ) (
  604. /* [retval][out] */ SHORT __RPC_FAR *pSeconds ) PURE;
  605. STDMETHOD( put_QueryTimeout ) (
  606. /* [in] */ SHORT Seconds ) PURE;
  607. STDMETHOD( get_Transactions ) (
  608. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  609. STDMETHOD( get_RecordsAffected ) (
  610. /* [retval][out] */ LONG __RPC_FAR *pRecords ) PURE;
  611. STDMETHOD( get_StillExecuting ) (
  612. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pStillExec ) PURE;
  613. STDMETHOD( get_Updatable ) (
  614. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pStillExec ) PURE;
  615. STDMETHOD( get_QueryDefs ) (
  616. /* [retval][out] */ DAOQueryDefs __RPC_FAR *__RPC_FAR *ppqdfs ) PURE;
  617. STDMETHOD( get_Recordsets ) (
  618. /* [retval][out] */ DAORecordsets __RPC_FAR *__RPC_FAR *pprsts ) PURE;
  619. STDMETHOD( Cancel ) (
  620. VOID ) PURE;
  621. STDMETHOD( Close ) (
  622. VOID ) PURE;
  623. STDMETHOD( CreateQueryDef ) (
  624. /* [optional][in] */ VARIANT Name,
  625. /* [optional][in] */ VARIANT SQLText,
  626. /* [retval][out] */ DAOQueryDef __RPC_FAR *__RPC_FAR *ppqdf ) PURE;
  627. STDMETHOD( Execute ) (
  628. /* [in] */ BSTR Query,
  629. /* [optional][in] */ VARIANT Options ) PURE;
  630. STDMETHOD( OpenRecordset ) (
  631. /* [in] */ BSTR Name,
  632. /* [optional][in] */ VARIANT Type,
  633. /* [optional][in] */ VARIANT Options,
  634. /* [optional][in] */ VARIANT LockEdit,
  635. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  636. };// end interface;
  637. // Interface: DAOConnections
  638. #undef INTERFACE
  639. #define INTERFACE DAOConnections
  640. DECLARE_INTERFACE_(DAOConnections, _DAOCollection)
  641. {
  642. STDMETHOD( get_Item ) (
  643. /* [in] */ VARIANT Item,
  644. /* [retval][out] */ DAOConnection __RPC_FAR *__RPC_FAR *ppconn ) PURE;
  645. };// end interface;
  646. // Interface: DAODatabase
  647. #undef INTERFACE
  648. #define INTERFACE DAODatabase
  649. DECLARE_INTERFACE_(DAODatabase, _DAO)
  650. {
  651. STDMETHOD( get_CollatingOrder ) (
  652. /* [retval][out] */ LONG __RPC_FAR *pl ) PURE;
  653. STDMETHOD( get_Connect ) (
  654. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  655. STDMETHOD( get_Name ) (
  656. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  657. STDMETHOD( get_QueryTimeout ) (
  658. /* [retval][out] */ short __RPC_FAR *ps ) PURE;
  659. STDMETHOD( put_QueryTimeout ) (
  660. /* [in] */ short Timeout ) PURE;
  661. STDMETHOD( get_Transactions ) (
  662. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  663. STDMETHOD( get_Updatable ) (
  664. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  665. STDMETHOD( get_Version ) (
  666. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  667. STDMETHOD( get_RecordsAffected ) (
  668. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  669. STDMETHOD( get_TableDefs ) (
  670. /* [retval][out] */ DAOTableDefs __RPC_FAR *__RPC_FAR *pptdfs ) PURE;
  671. STDMETHOD( get_QueryDefs ) (
  672. /* [retval][out] */ DAOQueryDefs __RPC_FAR *__RPC_FAR *ppqdfs ) PURE;
  673. STDMETHOD( get_Relations ) (
  674. /* [retval][out] */ DAORelations __RPC_FAR *__RPC_FAR *pprls ) PURE;
  675. STDMETHOD( get_Containers ) (
  676. /* [retval][out] */ DAOContainers __RPC_FAR *__RPC_FAR *ppctns ) PURE;
  677. STDMETHOD( get_Recordsets ) (
  678. /* [retval][out] */ DAORecordsets __RPC_FAR *__RPC_FAR *pprsts ) PURE;
  679. STDMETHOD( Close ) (
  680. VOID ) PURE;
  681. STDMETHOD( Execute ) (
  682. /* [in] */ BSTR Query,
  683. /* [optional][in] */ VARIANT Options ) PURE;
  684. STDMETHOD( _30_OpenRecordset ) (
  685. /* [in] */ BSTR Name,
  686. /* [optional][in] */ VARIANT Type,
  687. /* [optional][in] */ VARIANT Options,
  688. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  689. STDMETHOD( CreateProperty ) (
  690. /* [optional][in] */ VARIANT Name,
  691. /* [optional][in] */ VARIANT Type,
  692. /* [optional][in] */ VARIANT Value,
  693. /* [optional][in] */ VARIANT DDL,
  694. /* [retval][out] */ DAOProperty __RPC_FAR *__RPC_FAR *pprp ) PURE;
  695. STDMETHOD( CreateRelation ) (
  696. /* [optional][in] */ VARIANT Name,
  697. /* [optional][in] */ VARIANT Table,
  698. /* [optional][in] */ VARIANT ForeignTable,
  699. /* [optional][in] */ VARIANT Attributes,
  700. /* [retval][out] */ DAORelation __RPC_FAR *__RPC_FAR *pprel ) PURE;
  701. STDMETHOD( CreateTableDef ) (
  702. /* [optional][in] */ VARIANT Name,
  703. /* [optional][in] */ VARIANT Attributes,
  704. /* [optional][in] */ VARIANT SourceTablename,
  705. /* [optional][in] */ VARIANT Connect,
  706. /* [retval][out] */ DAOTableDef __RPC_FAR *__RPC_FAR *pptdf ) PURE;
  707. STDMETHOD( BeginTrans ) (
  708. VOID ) PURE;
  709. STDMETHOD( CommitTrans ) (
  710. /* [defaultvalue][in] */ long Options ) PURE;
  711. STDMETHOD( Rollback ) (
  712. VOID ) PURE;
  713. STDMETHOD( CreateDynaset ) (
  714. /* [in] */ BSTR Name,
  715. /* [optional][in] */ VARIANT Options,
  716. /* [optional][in] */ VARIANT Inconsistent,
  717. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  718. STDMETHOD( CreateQueryDef ) (
  719. /* [optional][in] */ VARIANT Name,
  720. /* [optional][in] */ VARIANT SQLText,
  721. /* [retval][out] */ DAOQueryDef __RPC_FAR *__RPC_FAR *ppqdf ) PURE;
  722. STDMETHOD( CreateSnapshot ) (
  723. /* [in] */ BSTR Source,
  724. /* [optional][in] */ VARIANT Options,
  725. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  726. STDMETHOD( DeleteQueryDef ) (
  727. /* [in] */ BSTR Name ) PURE;
  728. STDMETHOD( ExecuteSQL ) (
  729. /* [in] */ BSTR SQL,
  730. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  731. STDMETHOD( ListFields ) (
  732. /* [in] */ BSTR Name,
  733. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  734. STDMETHOD( ListTables ) (
  735. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  736. STDMETHOD( OpenQueryDef ) (
  737. /* [in] */ BSTR Name,
  738. /* [retval][out] */ DAOQueryDef __RPC_FAR *__RPC_FAR *ppqdf ) PURE;
  739. STDMETHOD( OpenTable ) (
  740. /* [in] */ BSTR Name,
  741. /* [optional][in] */ VARIANT Options,
  742. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  743. STDMETHOD( get_ReplicaID ) (
  744. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  745. STDMETHOD( get_DesignMasterID ) (
  746. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  747. STDMETHOD( put_DesignMasterID ) (
  748. /* [in] */ BSTR MasterID ) PURE;
  749. STDMETHOD( Synchronize ) (
  750. /* [in] */ BSTR DbPathName,
  751. /* [optional][in] */ VARIANT ExchangeType ) PURE;
  752. STDMETHOD( MakeReplica ) (
  753. /* [in] */ BSTR PathName,
  754. /* [in] */ BSTR Description,
  755. /* [optional][in] */ VARIANT Options ) PURE;
  756. STDMETHOD( put_Connect ) (
  757. /* [in] */ BSTR ODBCConnnect ) PURE;
  758. STDMETHOD( NewPassword ) (
  759. /* [in] */ BSTR bstrOld,
  760. /* [in] */ BSTR bstrNew ) PURE;
  761. STDMETHOD( OpenRecordset ) (
  762. /* [in] */ BSTR Name,
  763. /* [optional][in] */ VARIANT Type,
  764. /* [optional][in] */ VARIANT Options,
  765. /* [optional][in] */ VARIANT LockEdit,
  766. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  767. STDMETHOD( get_Connection ) (
  768. /* [retval][out] */ DAOConnection __RPC_FAR *__RPC_FAR *ppCn ) PURE;
  769. STDMETHOD( PopulatePartial ) (
  770. /* [in] */ BSTR DbPathName ) PURE;
  771. };// end interface;
  772. // Interface: DAODatabases
  773. #undef INTERFACE
  774. #define INTERFACE DAODatabases
  775. DECLARE_INTERFACE_(DAODatabases, _DAOCollection)
  776. {
  777. STDMETHOD( get_Item ) (
  778. /* [in] */ VARIANT Item,
  779. /* [retval][out] */ DAODatabase __RPC_FAR *__RPC_FAR *ppdb ) PURE;
  780. };// end interface;
  781. // Interface: _DAOTableDef
  782. #undef INTERFACE
  783. #define INTERFACE _DAOTableDef
  784. DECLARE_INTERFACE_(_DAOTableDef, _DAO)
  785. {
  786. STDMETHOD( get_Attributes ) (
  787. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  788. STDMETHOD( put_Attributes ) (
  789. /* [in] */ long Attributes ) PURE;
  790. STDMETHOD( get_Connect ) (
  791. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  792. STDMETHOD( put_Connect ) (
  793. /* [in] */ BSTR Connection ) PURE;
  794. STDMETHOD( get_DateCreated ) (
  795. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  796. STDMETHOD( get_LastUpdated ) (
  797. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  798. STDMETHOD( get_Name ) (
  799. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  800. STDMETHOD( put_Name ) (
  801. /* [in] */ BSTR Name ) PURE;
  802. STDMETHOD( get_SourceTableName ) (
  803. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  804. STDMETHOD( put_SourceTableName ) (
  805. /* [in] */ BSTR bstr ) PURE;
  806. STDMETHOD( get_Updatable ) (
  807. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  808. STDMETHOD( get_ValidationText ) (
  809. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  810. STDMETHOD( put_ValidationText ) (
  811. /* [in] */ BSTR bstr ) PURE;
  812. STDMETHOD( get_ValidationRule ) (
  813. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  814. STDMETHOD( put_ValidationRule ) (
  815. /* [in] */ BSTR bstr ) PURE;
  816. STDMETHOD( get_RecordCount ) (
  817. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  818. STDMETHOD( get_Fields ) (
  819. /* [retval][out] */ DAOFields __RPC_FAR *__RPC_FAR *ppflds ) PURE;
  820. STDMETHOD( get_Indexes ) (
  821. /* [retval][out] */ DAOIndexes __RPC_FAR *__RPC_FAR *ppidxs ) PURE;
  822. STDMETHOD( OpenRecordset ) (
  823. /* [optional][in] */ VARIANT Type,
  824. /* [optional][in] */ VARIANT Options,
  825. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  826. STDMETHOD( RefreshLink ) (
  827. VOID ) PURE;
  828. STDMETHOD( CreateField ) (
  829. /* [optional][in] */ VARIANT Name,
  830. /* [optional][in] */ VARIANT Type,
  831. /* [optional][in] */ VARIANT Size,
  832. /* [retval][out] */ DAOField __RPC_FAR *__RPC_FAR *ppfld ) PURE;
  833. STDMETHOD( CreateIndex ) (
  834. /* [optional][in] */ VARIANT Name,
  835. /* [retval][out] */ DAOIndex __RPC_FAR *__RPC_FAR *ppidx ) PURE;
  836. STDMETHOD( CreateProperty ) (
  837. /* [optional][in] */ VARIANT Name,
  838. /* [optional][in] */ VARIANT Type,
  839. /* [optional][in] */ VARIANT Value,
  840. /* [optional][in] */ VARIANT DDL,
  841. /* [retval][out] */ DAOProperty __RPC_FAR *__RPC_FAR *pprp ) PURE;
  842. STDMETHOD( get_ConflictTable ) (
  843. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  844. STDMETHOD( get_ReplicaFilter ) (
  845. /* [retval][out] */ VARIANT __RPC_FAR *pFilter ) PURE;
  846. STDMETHOD( put_ReplicaFilter ) (
  847. /* [in] */ VARIANT Filter ) PURE;
  848. };// end interface;
  849. // Interface: DAOTableDefs
  850. #undef INTERFACE
  851. #define INTERFACE DAOTableDefs
  852. DECLARE_INTERFACE_(DAOTableDefs, _DAODynaCollection)
  853. {
  854. STDMETHOD( get_Item ) (
  855. /* [in] */ VARIANT Item,
  856. /* [retval][out] */ DAOTableDef __RPC_FAR *__RPC_FAR *pptdf ) PURE;
  857. };// end interface;
  858. // Interface: _DAOQueryDef
  859. #undef INTERFACE
  860. #define INTERFACE _DAOQueryDef
  861. DECLARE_INTERFACE_(_DAOQueryDef, _DAO)
  862. {
  863. STDMETHOD( get_DateCreated ) (
  864. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  865. STDMETHOD( get_LastUpdated ) (
  866. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  867. STDMETHOD( get_Name ) (
  868. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  869. STDMETHOD( put_Name ) (
  870. /* [in] */ BSTR bstr ) PURE;
  871. STDMETHOD( get_ODBCTimeout ) (
  872. /* [retval][out] */ short __RPC_FAR *ps ) PURE;
  873. STDMETHOD( put_ODBCTimeout ) (
  874. /* [in] */ short timeout ) PURE;
  875. STDMETHOD( get_Type ) (
  876. /* [retval][out] */ short __RPC_FAR *pi ) PURE;
  877. STDMETHOD( get_SQL ) (
  878. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  879. STDMETHOD( put_SQL ) (
  880. /* [in] */ BSTR bstr ) PURE;
  881. STDMETHOD( get_Updatable ) (
  882. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  883. STDMETHOD( get_Connect ) (
  884. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  885. STDMETHOD( put_Connect ) (
  886. /* [in] */ BSTR bstr ) PURE;
  887. STDMETHOD( get_ReturnsRecords ) (
  888. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  889. STDMETHOD( put_ReturnsRecords ) (
  890. /* [in] */ VARIANT_BOOL f ) PURE;
  891. STDMETHOD( get_RecordsAffected ) (
  892. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  893. STDMETHOD( get_Fields ) (
  894. /* [retval][out] */ DAOFields __RPC_FAR *__RPC_FAR *ppflds ) PURE;
  895. STDMETHOD( get_Parameters ) (
  896. /* [retval][out] */ DAOParameters __RPC_FAR *__RPC_FAR *ppprms ) PURE;
  897. STDMETHOD( Close ) (
  898. VOID ) PURE;
  899. STDMETHOD( _30_OpenRecordset ) (
  900. /* [optional][in] */ VARIANT Type,
  901. /* [optional][in] */ VARIANT Options,
  902. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  903. STDMETHOD( _30__OpenRecordset ) (
  904. /* [optional][in] */ VARIANT Type,
  905. /* [optional][in] */ VARIANT Options,
  906. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  907. STDMETHOD( _Copy ) (
  908. /* [retval][out] */ DAOQueryDef __RPC_FAR *__RPC_FAR *ppqdf ) PURE;
  909. STDMETHOD( Execute ) (
  910. /* [optional][in] */ VARIANT Options ) PURE;
  911. STDMETHOD( Compare ) (
  912. /* [in] */ DAOQueryDef __RPC_FAR *pQdef,
  913. /* [in] */ SHORT __RPC_FAR *lps ) PURE;
  914. STDMETHOD( CreateDynaset ) (
  915. /* [optional][in] */ VARIANT Options,
  916. /* [optional][in] */ VARIANT Inconsistent,
  917. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  918. STDMETHOD( CreateSnapshot ) (
  919. /* [optional][in] */ VARIANT Options,
  920. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  921. STDMETHOD( ListParameters ) (
  922. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  923. STDMETHOD( CreateProperty ) (
  924. /* [optional][in] */ VARIANT Name,
  925. /* [optional][in] */ VARIANT Type,
  926. /* [optional][in] */ VARIANT Value,
  927. /* [optional][in] */ VARIANT DDL,
  928. /* [retval][out] */ DAOProperty __RPC_FAR *__RPC_FAR *pprp ) PURE;
  929. STDMETHOD( OpenRecordset ) (
  930. /* [optional][in] */ VARIANT Type,
  931. /* [optional][in] */ VARIANT Options,
  932. /* [optional][in] */ VARIANT LockEdit,
  933. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  934. STDMETHOD( _OpenRecordset ) (
  935. /* [optional][in] */ VARIANT Type,
  936. /* [optional][in] */ VARIANT Options,
  937. /* [optional][in] */ VARIANT LockEdit,
  938. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  939. STDMETHOD( Cancel ) (
  940. VOID ) PURE;
  941. STDMETHOD( get_hStmt ) (
  942. /* [retval][out] */ LONG __RPC_FAR *phStmt ) PURE;
  943. STDMETHOD( get_MaxRecords ) (
  944. /* [retval][out] */ LONG __RPC_FAR *pMxRecs ) PURE;
  945. STDMETHOD( put_MaxRecords ) (
  946. /* [in] */ LONG MxRecs ) PURE;
  947. STDMETHOD( get_StillExecuting ) (
  948. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pStillExec ) PURE;
  949. STDMETHOD( get_CacheSize ) (
  950. /* [retval][out] */ long __RPC_FAR *lCacheSize ) PURE;
  951. STDMETHOD( put_CacheSize ) (
  952. /* [in] */ long lCacheSize ) PURE;
  953. STDMETHOD( get_Prepare ) (
  954. /* [retval][out] */ VARIANT __RPC_FAR *pb ) PURE;
  955. STDMETHOD( put_Prepare ) (
  956. /* [in] */ VARIANT f ) PURE;
  957. };// end interface;
  958. // Interface: DAOQueryDefs
  959. #undef INTERFACE
  960. #define INTERFACE DAOQueryDefs
  961. DECLARE_INTERFACE_(DAOQueryDefs, _DAODynaCollection)
  962. {
  963. STDMETHOD( get_Item ) (
  964. /* [in] */ VARIANT Item,
  965. /* [retval][out] */ DAOQueryDef __RPC_FAR *__RPC_FAR *ppqdef ) PURE;
  966. };// end interface;
  967. // Interface: DAORecordset
  968. #undef INTERFACE
  969. #define INTERFACE DAORecordset
  970. DECLARE_INTERFACE_(DAORecordset, _DAO)
  971. {
  972. STDMETHOD( GetIDsOfNames ) ( REFIID riid, OLECHAR FAR* FAR* rgszNames, UINT cNames, LCID lcid, DISPID FAR* rgdispid );
  973. STDMETHOD( Invoke ) ( DISPID dispidMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS FAR* pdispparams, VARIANT FAR* pvarResult, EXCEPINFO FAR* pexcepinfo, UINT FAR* puArgErr );
  974. STDMETHOD( get_BOF ) (
  975. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  976. STDMETHOD( get_Bookmark ) (
  977. /* [retval][out] */ SAFEARRAY __RPC_FAR * __RPC_FAR *ppsach ) PURE;
  978. STDMETHOD( put_Bookmark ) (
  979. /* [in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *psach ) PURE;
  980. STDMETHOD( get_Bookmarkable ) (
  981. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  982. STDMETHOD( get_DateCreated ) (
  983. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  984. STDMETHOD( get_EOF ) (
  985. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  986. STDMETHOD( get_Filter ) (
  987. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  988. STDMETHOD( put_Filter ) (
  989. /* [in] */ BSTR Filter ) PURE;
  990. STDMETHOD( get_Index ) (
  991. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  992. STDMETHOD( put_Index ) (
  993. /* [in] */ BSTR bstr ) PURE;
  994. STDMETHOD( get_LastModified ) (
  995. /* [retval][out] */ SAFEARRAY __RPC_FAR * __RPC_FAR *ppsa ) PURE;
  996. STDMETHOD( get_LastUpdated ) (
  997. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  998. STDMETHOD( get_LockEdits ) (
  999. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1000. STDMETHOD( put_LockEdits ) (
  1001. /* [in] */ VARIANT_BOOL Lock ) PURE;
  1002. STDMETHOD( get_Name ) (
  1003. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1004. STDMETHOD( get_NoMatch ) (
  1005. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1006. STDMETHOD( get_Sort ) (
  1007. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1008. STDMETHOD( put_Sort ) (
  1009. /* [in] */ BSTR Sort ) PURE;
  1010. STDMETHOD( get_Transactions ) (
  1011. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1012. STDMETHOD( get_Type ) (
  1013. /* [retval][out] */ short __RPC_FAR *ps ) PURE;
  1014. STDMETHOD( get_RecordCount ) (
  1015. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1016. STDMETHOD( get_Updatable ) (
  1017. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1018. STDMETHOD( get_Restartable ) (
  1019. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1020. STDMETHOD( get_ValidationText ) (
  1021. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1022. STDMETHOD( get_ValidationRule ) (
  1023. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1024. STDMETHOD( get_CacheStart ) (
  1025. /* [retval][out] */ SAFEARRAY __RPC_FAR * __RPC_FAR *ppsa ) PURE;
  1026. STDMETHOD( put_CacheStart ) (
  1027. /* [in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *psa ) PURE;
  1028. STDMETHOD( get_CacheSize ) (
  1029. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1030. STDMETHOD( put_CacheSize ) (
  1031. /* [in] */ long CacheSize ) PURE;
  1032. STDMETHOD( get_PercentPosition ) (
  1033. /* [retval][out] */ float __RPC_FAR *pd ) PURE;
  1034. STDMETHOD( put_PercentPosition ) (
  1035. /* [in] */ float Position ) PURE;
  1036. STDMETHOD( get_AbsolutePosition ) (
  1037. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1038. STDMETHOD( put_AbsolutePosition ) (
  1039. /* [in] */ long Position ) PURE;
  1040. STDMETHOD( get_EditMode ) (
  1041. /* [retval][out] */ short __RPC_FAR *pi ) PURE;
  1042. STDMETHOD( get_ODBCFetchCount ) (
  1043. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1044. STDMETHOD( get_ODBCFetchDelay ) (
  1045. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1046. STDMETHOD( get_Parent ) (
  1047. /* [retval][out] */ DAODatabase __RPC_FAR *__RPC_FAR *pdb ) PURE;
  1048. STDMETHOD( get_Fields ) (
  1049. /* [retval][out] */ DAOFields __RPC_FAR *__RPC_FAR *ppflds ) PURE;
  1050. STDMETHOD( get_Indexes ) (
  1051. /* [retval][out] */ DAOIndexes __RPC_FAR *__RPC_FAR *ppidxs ) PURE;
  1052. STDMETHOD( _30_CancelUpdate ) (
  1053. VOID ) PURE;
  1054. STDMETHOD( AddNew ) (
  1055. VOID ) PURE;
  1056. STDMETHOD( Close ) (
  1057. VOID ) PURE;
  1058. STDMETHOD( OpenRecordset ) (
  1059. /* [optional][in] */ VARIANT Type,
  1060. /* [optional][in] */ VARIANT Options,
  1061. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  1062. STDMETHOD( Delete ) (
  1063. VOID ) PURE;
  1064. STDMETHOD( Edit ) (
  1065. VOID ) PURE;
  1066. STDMETHOD( FindFirst ) (
  1067. /* [in] */ BSTR Criteria ) PURE;
  1068. STDMETHOD( FindLast ) (
  1069. /* [in] */ BSTR Criteria ) PURE;
  1070. STDMETHOD( FindNext ) (
  1071. /* [in] */ BSTR Criteria ) PURE;
  1072. STDMETHOD( FindPrevious ) (
  1073. /* [in] */ BSTR Criteria ) PURE;
  1074. STDMETHOD( MoveFirst ) (
  1075. VOID ) PURE;
  1076. STDMETHOD( _30_MoveLast ) (
  1077. VOID ) PURE;
  1078. STDMETHOD( MoveNext ) (
  1079. VOID ) PURE;
  1080. STDMETHOD( MovePrevious ) (
  1081. VOID ) PURE;
  1082. STDMETHOD( Seek ) (
  1083. /* [in] */ BSTR Comparison,
  1084. /* [in] */ VARIANT Key1,
  1085. /* [optional][in] */ VARIANT Key2,
  1086. /* [optional][in] */ VARIANT Key3,
  1087. /* [optional][in] */ VARIANT Key4,
  1088. /* [optional][in] */ VARIANT Key5,
  1089. /* [optional][in] */ VARIANT Key6,
  1090. /* [optional][in] */ VARIANT Key7,
  1091. /* [optional][in] */ VARIANT Key8,
  1092. /* [optional][in] */ VARIANT Key9,
  1093. /* [optional][in] */ VARIANT Key10,
  1094. /* [optional][in] */ VARIANT Key11,
  1095. /* [optional][in] */ VARIANT Key12,
  1096. /* [optional][in] */ VARIANT Key13 ) PURE;
  1097. STDMETHOD( _30_Update ) (
  1098. VOID ) PURE;
  1099. STDMETHOD( Clone ) (
  1100. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  1101. STDMETHOD( Requery ) (
  1102. /* [optional][in] */ VARIANT NewQueryDef ) PURE;
  1103. STDMETHOD( Move ) (
  1104. /* [in] */ long Rows,
  1105. /* [optional][in] */ VARIANT StartBookmark ) PURE;
  1106. STDMETHOD( FillCache ) (
  1107. /* [optional][in] */ VARIANT Rows,
  1108. /* [optional][in] */ VARIANT StartBookmark ) PURE;
  1109. STDMETHOD( CreateDynaset ) (
  1110. /* [optional][in] */ VARIANT Options,
  1111. /* [optional][in] */ VARIANT Inconsistent,
  1112. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  1113. STDMETHOD( CreateSnapshot ) (
  1114. /* [optional][in] */ VARIANT Options,
  1115. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  1116. STDMETHOD( CopyQueryDef ) (
  1117. /* [retval][out] */ DAOQueryDef __RPC_FAR *__RPC_FAR *ppqdf ) PURE;
  1118. STDMETHOD( ListFields ) (
  1119. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  1120. STDMETHOD( ListIndexes ) (
  1121. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  1122. STDMETHOD( GetRows ) (
  1123. /* [optional][in] */ VARIANT NumRows,
  1124. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1125. STDMETHOD( get_Collect ) (
  1126. /* [in] */ VARIANT Item,
  1127. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1128. STDMETHOD( put_Collect ) (
  1129. /* [in] */ VARIANT Item,
  1130. /* [in] */ VARIANT value ) PURE;
  1131. STDMETHOD( Cancel ) (
  1132. VOID ) PURE;
  1133. STDMETHOD( NextRecordset ) (
  1134. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1135. STDMETHOD( get_hStmt ) (
  1136. /* [retval][out] */ LONG __RPC_FAR *phStmt ) PURE;
  1137. STDMETHOD( get_StillExecuting ) (
  1138. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pStillExec ) PURE;
  1139. STDMETHOD( get_BatchSize ) (
  1140. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1141. STDMETHOD( put_BatchSize ) (
  1142. /* [in] */ long BatchSize ) PURE;
  1143. STDMETHOD( get_BatchCollisionCount ) (
  1144. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1145. STDMETHOD( get_BatchCollisions ) (
  1146. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1147. STDMETHOD( get_Connection ) (
  1148. /* [retval][out] */ DAOConnection __RPC_FAR *__RPC_FAR *ppCn ) PURE;
  1149. STDMETHOD( putref_Connection ) (
  1150. /* [in] */ DAOConnection __RPC_FAR *pNewCn ) PURE;
  1151. STDMETHOD( get_RecordStatus ) (
  1152. /* [retval][out] */ short __RPC_FAR *pi ) PURE;
  1153. STDMETHOD( get_UpdateOptions ) (
  1154. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1155. STDMETHOD( put_UpdateOptions ) (
  1156. /* [in] */ long l ) PURE;
  1157. STDMETHOD( CancelUpdate ) (
  1158. /* [defaultvalue][in] */ long UpdateType ) PURE;
  1159. STDMETHOD( Update ) (
  1160. /* [defaultvalue][in] */ long UpdateType,
  1161. /* [defaultvalue][in] */ VARIANT_BOOL Force ) PURE;
  1162. STDMETHOD( MoveLast ) (
  1163. /* [defaultvalue][in] */ long Options ) PURE;
  1164. };// end interface;
  1165. // Interface: DAORecordsets
  1166. #undef INTERFACE
  1167. #define INTERFACE DAORecordsets
  1168. DECLARE_INTERFACE_(DAORecordsets, _DAOCollection)
  1169. {
  1170. STDMETHOD( get_Item ) (
  1171. /* [in] */ VARIANT Item,
  1172. /* [retval][out] */ DAORecordset __RPC_FAR *__RPC_FAR *pprst ) PURE;
  1173. };// end interface;
  1174. // Interface: _DAOField
  1175. #undef INTERFACE
  1176. #define INTERFACE _DAOField
  1177. DECLARE_INTERFACE_(_DAOField, _DAO)
  1178. {
  1179. STDMETHOD( get_CollatingOrder ) (
  1180. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1181. STDMETHOD( get_Type ) (
  1182. /* [retval][out] */ short __RPC_FAR *ps ) PURE;
  1183. STDMETHOD( put_Type ) (
  1184. /* [in] */ short Type ) PURE;
  1185. STDMETHOD( get_Name ) (
  1186. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1187. STDMETHOD( put_Name ) (
  1188. /* [in] */ BSTR Name ) PURE;
  1189. STDMETHOD( get_Size ) (
  1190. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1191. STDMETHOD( put_Size ) (
  1192. /* [in] */ long Size ) PURE;
  1193. STDMETHOD( get_SourceField ) (
  1194. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1195. STDMETHOD( get_SourceTable ) (
  1196. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1197. STDMETHOD( get_Value ) (
  1198. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1199. STDMETHOD( put_Value ) (
  1200. /* [in] */ VARIANT Val ) PURE;
  1201. STDMETHOD( get_Attributes ) (
  1202. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1203. STDMETHOD( put_Attributes ) (
  1204. /* [in] */ long Attr ) PURE;
  1205. STDMETHOD( get_OrdinalPosition ) (
  1206. /* [retval][out] */ short __RPC_FAR *ps ) PURE;
  1207. STDMETHOD( put_OrdinalPosition ) (
  1208. /* [in] */ short Pos ) PURE;
  1209. STDMETHOD( get_ValidationText ) (
  1210. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1211. STDMETHOD( put_ValidationText ) (
  1212. /* [in] */ BSTR bstr ) PURE;
  1213. STDMETHOD( get_ValidateOnSet ) (
  1214. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1215. STDMETHOD( put_ValidateOnSet ) (
  1216. /* [in] */ VARIANT_BOOL Validate ) PURE;
  1217. STDMETHOD( get_ValidationRule ) (
  1218. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1219. STDMETHOD( put_ValidationRule ) (
  1220. /* [in] */ BSTR bstr ) PURE;
  1221. STDMETHOD( get_DefaultValue ) (
  1222. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1223. STDMETHOD( put_DefaultValue ) (
  1224. /* [in] */ VARIANT var ) PURE;
  1225. STDMETHOD( get_Required ) (
  1226. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1227. STDMETHOD( put_Required ) (
  1228. /* [in] */ VARIANT_BOOL fReq ) PURE;
  1229. STDMETHOD( get_AllowZeroLength ) (
  1230. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1231. STDMETHOD( put_AllowZeroLength ) (
  1232. /* [in] */ VARIANT_BOOL fAllow ) PURE;
  1233. STDMETHOD( get_DataUpdatable ) (
  1234. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1235. STDMETHOD( get_ForeignName ) (
  1236. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1237. STDMETHOD( put_ForeignName ) (
  1238. /* [in] */ BSTR bstr ) PURE;
  1239. STDMETHOD( AppendChunk ) (
  1240. /* [in] */ VARIANT Val ) PURE;
  1241. STDMETHOD( GetChunk ) (
  1242. /* [in] */ long Offset,
  1243. /* [in] */ long Bytes,
  1244. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1245. STDMETHOD( _30_FieldSize ) (
  1246. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1247. STDMETHOD( CreateProperty ) (
  1248. /* [optional][in] */ VARIANT Name,
  1249. /* [optional][in] */ VARIANT Type,
  1250. /* [optional][in] */ VARIANT Value,
  1251. /* [optional][in] */ VARIANT DDL,
  1252. /* [retval][out] */ DAOProperty __RPC_FAR *__RPC_FAR *pprp ) PURE;
  1253. STDMETHOD( get_CollectionIndex ) (
  1254. /* [retval][out] */ short __RPC_FAR *i ) PURE;
  1255. STDMETHOD( get_OriginalValue ) (
  1256. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1257. STDMETHOD( get_VisibleValue ) (
  1258. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1259. STDMETHOD( get_FieldSize ) (
  1260. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1261. };// end interface;
  1262. // Interface: DAOFields
  1263. #undef INTERFACE
  1264. #define INTERFACE DAOFields
  1265. DECLARE_INTERFACE_(DAOFields, _DAODynaCollection)
  1266. {
  1267. STDMETHOD( get_Item ) (
  1268. /* [in] */ VARIANT Item,
  1269. /* [retval][out] */ DAOField __RPC_FAR *__RPC_FAR *ppfld ) PURE;
  1270. };// end interface;
  1271. // Interface: _DAOIndex
  1272. #undef INTERFACE
  1273. #define INTERFACE _DAOIndex
  1274. DECLARE_INTERFACE_(_DAOIndex, _DAO)
  1275. {
  1276. STDMETHOD( get_Name ) (
  1277. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1278. STDMETHOD( put_Name ) (
  1279. /* [in] */ BSTR bstr ) PURE;
  1280. STDMETHOD( get_Foreign ) (
  1281. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1282. STDMETHOD( get_Unique ) (
  1283. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1284. STDMETHOD( put_Unique ) (
  1285. /* [in] */ VARIANT_BOOL fUnique ) PURE;
  1286. STDMETHOD( get_Clustered ) (
  1287. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1288. STDMETHOD( put_Clustered ) (
  1289. /* [in] */ VARIANT_BOOL fClustered ) PURE;
  1290. STDMETHOD( get_Required ) (
  1291. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1292. STDMETHOD( put_Required ) (
  1293. /* [in] */ VARIANT_BOOL fRequired ) PURE;
  1294. STDMETHOD( get_IgnoreNulls ) (
  1295. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1296. STDMETHOD( put_IgnoreNulls ) (
  1297. /* [in] */ VARIANT_BOOL fIgnoreNulls ) PURE;
  1298. STDMETHOD( get_Primary ) (
  1299. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1300. STDMETHOD( put_Primary ) (
  1301. /* [in] */ VARIANT_BOOL fPrimary ) PURE;
  1302. STDMETHOD( get_DistinctCount ) (
  1303. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1304. STDMETHOD( get_Fields ) (
  1305. /* [retval][out] */ VARIANT __RPC_FAR *pv ) PURE;
  1306. STDMETHOD( put_Fields ) (
  1307. /* [in] */ VARIANT v ) PURE;
  1308. STDMETHOD( CreateField ) (
  1309. /* [optional][in] */ VARIANT Name,
  1310. /* [optional][in] */ VARIANT Type,
  1311. /* [optional][in] */ VARIANT Size,
  1312. /* [retval][out] */ DAOField __RPC_FAR *__RPC_FAR *ppfld ) PURE;
  1313. STDMETHOD( CreateProperty ) (
  1314. /* [optional][in] */ VARIANT Name,
  1315. /* [optional][in] */ VARIANT Type,
  1316. /* [optional][in] */ VARIANT Value,
  1317. /* [optional][in] */ VARIANT DDL,
  1318. /* [retval][out] */ DAOProperty __RPC_FAR *__RPC_FAR *pprp ) PURE;
  1319. };// end interface;
  1320. // Interface: DAOIndexes
  1321. #undef INTERFACE
  1322. #define INTERFACE DAOIndexes
  1323. DECLARE_INTERFACE_(DAOIndexes, _DAODynaCollection)
  1324. {
  1325. STDMETHOD( get_Item ) (
  1326. /* [in] */ VARIANT Item,
  1327. /* [retval][out] */ DAOIndex __RPC_FAR *__RPC_FAR *ppidx ) PURE;
  1328. };// end interface;
  1329. // Interface: DAOParameter
  1330. #undef INTERFACE
  1331. #define INTERFACE DAOParameter
  1332. DECLARE_INTERFACE_(DAOParameter, _DAO)
  1333. {
  1334. STDMETHOD( get_Name ) (
  1335. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1336. STDMETHOD( get_Value ) (
  1337. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1338. STDMETHOD( put_Value ) (
  1339. /* [in] */ VARIANT val ) PURE;
  1340. STDMETHOD( get_Type ) (
  1341. /* [retval][out] */ short __RPC_FAR *ps ) PURE;
  1342. STDMETHOD( put_Type ) (
  1343. /* [in] */ short s ) PURE;
  1344. STDMETHOD( get_Direction ) (
  1345. /* [retval][out] */ short __RPC_FAR *pOption ) PURE;
  1346. STDMETHOD( put_Direction ) (
  1347. /* [in] */ short Option ) PURE;
  1348. };// end interface;
  1349. // Interface: DAOParameters
  1350. #undef INTERFACE
  1351. #define INTERFACE DAOParameters
  1352. DECLARE_INTERFACE_(DAOParameters, _DAOCollection)
  1353. {
  1354. STDMETHOD( get_Item ) (
  1355. /* [in] */ VARIANT Item,
  1356. /* [retval][out] */ DAOParameter __RPC_FAR *__RPC_FAR *ppprm ) PURE;
  1357. };// end interface;
  1358. // Interface: _DAOUser
  1359. #undef INTERFACE
  1360. #define INTERFACE _DAOUser
  1361. DECLARE_INTERFACE_(_DAOUser, _DAO)
  1362. {
  1363. STDMETHOD( get_Name ) (
  1364. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1365. STDMETHOD( put_Name ) (
  1366. /* [in] */ BSTR bstr ) PURE;
  1367. STDMETHOD( put_PID ) (
  1368. /* [in] */ BSTR bstr ) PURE;
  1369. STDMETHOD( put_Password ) (
  1370. /* [in] */ BSTR bstr ) PURE;
  1371. STDMETHOD( get_Groups ) (
  1372. /* [retval][out] */ DAOGroups __RPC_FAR *__RPC_FAR *ppgrps ) PURE;
  1373. STDMETHOD( NewPassword ) (
  1374. /* [in] */ BSTR bstrOld,
  1375. /* [in] */ BSTR bstrNew ) PURE;
  1376. STDMETHOD( CreateGroup ) (
  1377. /* [optional][in] */ VARIANT Name,
  1378. /* [optional][in] */ VARIANT PID,
  1379. /* [retval][out] */ DAOGroup __RPC_FAR *__RPC_FAR *ppgrp ) PURE;
  1380. };// end interface;
  1381. // Interface: DAOUsers
  1382. #undef INTERFACE
  1383. #define INTERFACE DAOUsers
  1384. DECLARE_INTERFACE_(DAOUsers, _DAODynaCollection)
  1385. {
  1386. STDMETHOD( get_Item ) (
  1387. /* [in] */ VARIANT Item,
  1388. /* [retval][out] */ DAOUser __RPC_FAR *__RPC_FAR *ppusr ) PURE;
  1389. };// end interface;
  1390. // Interface: _DAOGroup
  1391. #undef INTERFACE
  1392. #define INTERFACE _DAOGroup
  1393. DECLARE_INTERFACE_(_DAOGroup, _DAO)
  1394. {
  1395. STDMETHOD( get_Name ) (
  1396. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1397. STDMETHOD( put_Name ) (
  1398. /* [in] */ BSTR bstr ) PURE;
  1399. STDMETHOD( put_PID ) (
  1400. /* [in] */ BSTR bstr ) PURE;
  1401. STDMETHOD( get_Users ) (
  1402. /* [retval][out] */ DAOUsers __RPC_FAR *__RPC_FAR *ppusrs ) PURE;
  1403. STDMETHOD( CreateUser ) (
  1404. /* [optional][in] */ VARIANT Name,
  1405. /* [optional][in] */ VARIANT PID,
  1406. /* [optional][in] */ VARIANT Password,
  1407. /* [retval][out] */ DAOUser __RPC_FAR *__RPC_FAR *ppusr ) PURE;
  1408. };// end interface;
  1409. // Interface: DAOGroups
  1410. #undef INTERFACE
  1411. #define INTERFACE DAOGroups
  1412. DECLARE_INTERFACE_(DAOGroups, _DAODynaCollection)
  1413. {
  1414. STDMETHOD( get_Item ) (
  1415. /* [in] */ VARIANT Item,
  1416. /* [retval][out] */ DAOGroup __RPC_FAR *__RPC_FAR *ppgrp ) PURE;
  1417. };// end interface;
  1418. // Interface: _DAORelation
  1419. #undef INTERFACE
  1420. #define INTERFACE _DAORelation
  1421. DECLARE_INTERFACE_(_DAORelation, _DAO)
  1422. {
  1423. STDMETHOD( get_Name ) (
  1424. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1425. STDMETHOD( put_Name ) (
  1426. /* [in] */ BSTR bstr ) PURE;
  1427. STDMETHOD( get_Table ) (
  1428. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1429. STDMETHOD( put_Table ) (
  1430. /* [in] */ BSTR bstr ) PURE;
  1431. STDMETHOD( get_ForeignTable ) (
  1432. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1433. STDMETHOD( put_ForeignTable ) (
  1434. /* [in] */ BSTR bstr ) PURE;
  1435. STDMETHOD( get_Attributes ) (
  1436. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1437. STDMETHOD( put_Attributes ) (
  1438. /* [in] */ long attr ) PURE;
  1439. STDMETHOD( get_Fields ) (
  1440. /* [retval][out] */ DAOFields __RPC_FAR *__RPC_FAR *ppflds ) PURE;
  1441. STDMETHOD( CreateField ) (
  1442. /* [optional][in] */ VARIANT Name,
  1443. /* [optional][in] */ VARIANT Type,
  1444. /* [optional][in] */ VARIANT Size,
  1445. /* [retval][out] */ DAOField __RPC_FAR *__RPC_FAR *ppfld ) PURE;
  1446. STDMETHOD( get_PartialReplica ) (
  1447. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pfPartialReplica ) PURE;
  1448. STDMETHOD( put_PartialReplica ) (
  1449. /* [in] */ VARIANT_BOOL fPartialReplica ) PURE;
  1450. };// end interface;
  1451. // Interface: DAORelations
  1452. #undef INTERFACE
  1453. #define INTERFACE DAORelations
  1454. DECLARE_INTERFACE_(DAORelations, _DAODynaCollection)
  1455. {
  1456. STDMETHOD( get_Item ) (
  1457. /* [in] */ VARIANT Item,
  1458. /* [retval][out] */ DAORelation __RPC_FAR *__RPC_FAR *pprel ) PURE;
  1459. };// end interface;
  1460. // Interface: DAOContainer
  1461. #undef INTERFACE
  1462. #define INTERFACE DAOContainer
  1463. DECLARE_INTERFACE_(DAOContainer, _DAO)
  1464. {
  1465. STDMETHOD( get_Name ) (
  1466. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1467. STDMETHOD( get_Owner ) (
  1468. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1469. STDMETHOD( put_Owner ) (
  1470. /* [in] */ BSTR bstr ) PURE;
  1471. STDMETHOD( get_UserName ) (
  1472. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1473. STDMETHOD( put_UserName ) (
  1474. /* [in] */ BSTR bstr ) PURE;
  1475. STDMETHOD( get_Permissions ) (
  1476. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1477. STDMETHOD( put_Permissions ) (
  1478. /* [in] */ long permissions ) PURE;
  1479. STDMETHOD( get_Inherit ) (
  1480. /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb ) PURE;
  1481. STDMETHOD( put_Inherit ) (
  1482. /* [in] */ VARIANT_BOOL fInherit ) PURE;
  1483. STDMETHOD( get_Documents ) (
  1484. /* [retval][out] */ DAODocuments __RPC_FAR *__RPC_FAR *ppdocs ) PURE;
  1485. STDMETHOD( get_AllPermissions ) (
  1486. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1487. };// end interface;
  1488. // Interface: DAOContainers
  1489. #undef INTERFACE
  1490. #define INTERFACE DAOContainers
  1491. DECLARE_INTERFACE_(DAOContainers, _DAOCollection)
  1492. {
  1493. STDMETHOD( get_Item ) (
  1494. /* [in] */ VARIANT Item,
  1495. /* [retval][out] */ DAOContainer __RPC_FAR *__RPC_FAR *ppctn ) PURE;
  1496. };// end interface;
  1497. // Interface: DAODocument
  1498. #undef INTERFACE
  1499. #define INTERFACE DAODocument
  1500. DECLARE_INTERFACE_(DAODocument, _DAO)
  1501. {
  1502. STDMETHOD( get_Name ) (
  1503. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1504. STDMETHOD( get_Owner ) (
  1505. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1506. STDMETHOD( put_Owner ) (
  1507. /* [in] */ BSTR bstr ) PURE;
  1508. STDMETHOD( get_Container ) (
  1509. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1510. STDMETHOD( get_UserName ) (
  1511. /* [retval][out] */ BSTR __RPC_FAR *pbstr ) PURE;
  1512. STDMETHOD( put_UserName ) (
  1513. /* [in] */ BSTR bstr ) PURE;
  1514. STDMETHOD( get_Permissions ) (
  1515. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1516. STDMETHOD( put_Permissions ) (
  1517. /* [in] */ long permissions ) PURE;
  1518. STDMETHOD( get_DateCreated ) (
  1519. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1520. STDMETHOD( get_LastUpdated ) (
  1521. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1522. STDMETHOD( get_AllPermissions ) (
  1523. /* [retval][out] */ long __RPC_FAR *pl ) PURE;
  1524. STDMETHOD( CreateProperty ) (
  1525. /* [optional][in] */ VARIANT Name,
  1526. /* [optional][in] */ VARIANT Type,
  1527. /* [optional][in] */ VARIANT Value,
  1528. /* [optional][in] */ VARIANT DDL,
  1529. /* [retval][out] */ DAOProperty __RPC_FAR *__RPC_FAR *pprp ) PURE;
  1530. };// end interface;
  1531. // Interface: DAODocuments
  1532. #undef INTERFACE
  1533. #define INTERFACE DAODocuments
  1534. DECLARE_INTERFACE_(DAODocuments, _DAOCollection)
  1535. {
  1536. STDMETHOD( get_Item ) (
  1537. /* [in] */ VARIANT Item,
  1538. /* [retval][out] */ DAODocument __RPC_FAR *__RPC_FAR *ppdoc ) PURE;
  1539. };// end interface;
  1540. // Interface: DAOIndexFields
  1541. #undef INTERFACE
  1542. #define INTERFACE DAOIndexFields
  1543. DECLARE_INTERFACE_(DAOIndexFields, _DAODynaCollection)
  1544. {
  1545. STDMETHOD( get_Item ) (
  1546. /* [optional][in] */ VARIANT Item,
  1547. /* [retval][out] */ VARIANT __RPC_FAR *pvar ) PURE;
  1548. };// end interface;
  1549. #endif // _DBDAOINT_H_