transactd 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. checksums.yaml +7 -0
  2. data/BUILD_UNIX-JA +174 -0
  3. data/BUILD_WIN-JA +256 -0
  4. data/CMakeLists.txt +96 -0
  5. data/COPYING +339 -0
  6. data/README +406 -0
  7. data/README-JA +424 -0
  8. data/bin/common/tdclc_32_1_0.dll +0 -0
  9. data/bin/common/tdclc_64_1_0.dll +0 -0
  10. data/build/common/check_for_link_iconv.cmake +73 -0
  11. data/build/common/copyifgreater.cmd +30 -0
  12. data/build/common/copyifgreater.js +290 -0
  13. data/build/common/get_boost_libs.cmake +106 -0
  14. data/build/common/get_ruby_path.cmake +115 -0
  15. data/build/common/options.cmake +127 -0
  16. data/build/common/smart_install.cmake +263 -0
  17. data/build/common/system.cmake +122 -0
  18. data/build/common/transactd.rc.in +52 -0
  19. data/build/common/transactd_cl_common.cmake +101 -0
  20. data/build/common/transactd_cl_output.cmake +93 -0
  21. data/build/common/transactd_common.cmake +237 -0
  22. data/build/common/transactd_required.cmake +28 -0
  23. data/build/swig/ruby/generate.cmake.in +35 -0
  24. data/build/swig/ruby/generate.cmd.in +19 -0
  25. data/build/swig/ruby/ruby.swg +101 -0
  26. data/build/swig/tdcl.i +188 -0
  27. data/build/tdclc/BUILDNUMBER.txt +1 -0
  28. data/build/tdclc/CMakeLists.txt +170 -0
  29. data/build/tdclc/tdclc_32.cbproj +181 -0
  30. data/build/tdclc/tdclc_64.cbproj +205 -0
  31. data/build/tdclcpp/BUILDNUMBER.txt +1 -0
  32. data/build/tdclcpp/CMakeLists.txt +142 -0
  33. data/build/tdclcpp/tdclcpp_bcb_32.cbproj +239 -0
  34. data/build/tdclcpp/tdclcpp_bcb_64.cbproj +304 -0
  35. data/build/tdclrb/BUILDNUMBER.txt +1 -0
  36. data/build/tdclrb/CMakeLists.txt +258 -0
  37. data/build/tdclrb/GEM_VERSION +3 -0
  38. data/build/tdclrb/bldgem/extconf.rb +123 -0
  39. data/build/tdclrb/gem/INSTALLLOG.win32 +9 -0
  40. data/build/tdclrb/gem/Makefile.win32-VS +65 -0
  41. data/build/tdclrb/gem/Makefile.win32-prebuilt +48 -0
  42. data/build/tdclrb/gem/detect.rb +31 -0
  43. data/build/tdclrb/gem/helper.rb +113 -0
  44. data/build/tdclrb/gem/transactd.rb +22 -0
  45. data/build/tdclrb/gem_output.cmake +44 -0
  46. data/source/bzs/db/IBlobBuffer.h +51 -0
  47. data/source/bzs/db/blobBuffer.h +177 -0
  48. data/source/bzs/db/blobStructs.h +85 -0
  49. data/source/bzs/db/engine/mysql/IReadRecords.h +52 -0
  50. data/source/bzs/db/engine/mysql/bookmark.h +195 -0
  51. data/source/bzs/db/engine/mysql/database.cpp +1882 -0
  52. data/source/bzs/db/engine/mysql/database.h +465 -0
  53. data/source/bzs/db/engine/mysql/dbManager.cpp +303 -0
  54. data/source/bzs/db/engine/mysql/dbManager.h +143 -0
  55. data/source/bzs/db/engine/mysql/errorMessage.cpp +75 -0
  56. data/source/bzs/db/engine/mysql/errorMessage.h +43 -0
  57. data/source/bzs/db/engine/mysql/fieldAccess.h +158 -0
  58. data/source/bzs/db/engine/mysql/mydebuglog.cpp +349 -0
  59. data/source/bzs/db/engine/mysql/mydebuglog.h +89 -0
  60. data/source/bzs/db/engine/mysql/mysqlInternal.h +171 -0
  61. data/source/bzs/db/engine/mysql/mysqlThd.cpp +169 -0
  62. data/source/bzs/db/engine/mysql/mysqlThd.h +35 -0
  63. data/source/bzs/db/engine/mysql/percentageKey.h +260 -0
  64. data/source/bzs/db/protocol/ICommandExecuter.h +49 -0
  65. data/source/bzs/db/protocol/hs/hsCommandExecuter.cpp +689 -0
  66. data/source/bzs/db/protocol/hs/hsCommandExecuter.h +228 -0
  67. data/source/bzs/db/protocol/tdap/btrDate.cpp +437 -0
  68. data/source/bzs/db/protocol/tdap/btrDate.h +227 -0
  69. data/source/bzs/db/protocol/tdap/client/bulkInsert.h +127 -0
  70. data/source/bzs/db/protocol/tdap/client/client.cpp +106 -0
  71. data/source/bzs/db/protocol/tdap/client/client.h +292 -0
  72. data/source/bzs/db/protocol/tdap/client/connMgr.cpp +144 -0
  73. data/source/bzs/db/protocol/tdap/client/connMgr.h +82 -0
  74. data/source/bzs/db/protocol/tdap/client/database.cpp +863 -0
  75. data/source/bzs/db/protocol/tdap/client/database.h +118 -0
  76. data/source/bzs/db/protocol/tdap/client/databaseFactory.cpp +100 -0
  77. data/source/bzs/db/protocol/tdap/client/dbDef.cpp +1640 -0
  78. data/source/bzs/db/protocol/tdap/client/dbDef.h +135 -0
  79. data/source/bzs/db/protocol/tdap/client/dllmain.cpp +434 -0
  80. data/source/bzs/db/protocol/tdap/client/errorMessage.cpp +92 -0
  81. data/source/bzs/db/protocol/tdap/client/errorMessage_ja.cpp +98 -0
  82. data/source/bzs/db/protocol/tdap/client/fieldDDF.cpp +174 -0
  83. data/source/bzs/db/protocol/tdap/client/fieldDDF.h +91 -0
  84. data/source/bzs/db/protocol/tdap/client/fileDDF.cpp +140 -0
  85. data/source/bzs/db/protocol/tdap/client/fileDDF.h +86 -0
  86. data/source/bzs/db/protocol/tdap/client/filter.cpp +527 -0
  87. data/source/bzs/db/protocol/tdap/client/filter.h +154 -0
  88. data/source/bzs/db/protocol/tdap/client/indexDDF.cpp +137 -0
  89. data/source/bzs/db/protocol/tdap/client/indexDDF.h +84 -0
  90. data/source/bzs/db/protocol/tdap/client/nsDatabase.cpp +724 -0
  91. data/source/bzs/db/protocol/tdap/client/nsDatabase.h +123 -0
  92. data/source/bzs/db/protocol/tdap/client/nsTable.cpp +899 -0
  93. data/source/bzs/db/protocol/tdap/client/nsTable.h +199 -0
  94. data/source/bzs/db/protocol/tdap/client/request.h +198 -0
  95. data/source/bzs/db/protocol/tdap/client/sharedData.cpp +58 -0
  96. data/source/bzs/db/protocol/tdap/client/sharedData.h +56 -0
  97. data/source/bzs/db/protocol/tdap/client/sqlBuilder.cpp +574 -0
  98. data/source/bzs/db/protocol/tdap/client/sqlBuilder.h +53 -0
  99. data/source/bzs/db/protocol/tdap/client/stringConverter.h +627 -0
  100. data/source/bzs/db/protocol/tdap/client/table.cpp +2613 -0
  101. data/source/bzs/db/protocol/tdap/client/table.h +221 -0
  102. data/source/bzs/db/protocol/tdap/client/trdboostapi.h +1096 -0
  103. data/source/bzs/db/protocol/tdap/client/trdboostapiInternal.h +179 -0
  104. data/source/bzs/db/protocol/tdap/client/trdclcppautolink.h +40 -0
  105. data/source/bzs/db/protocol/tdap/client/trnsctcl.def +11 -0
  106. data/source/bzs/db/protocol/tdap/myDateTime.cpp +500 -0
  107. data/source/bzs/db/protocol/tdap/mysql/characterset.cpp +184 -0
  108. data/source/bzs/db/protocol/tdap/mysql/characterset.h +60 -0
  109. data/source/bzs/db/protocol/tdap/mysql/databaseSchema.cpp +284 -0
  110. data/source/bzs/db/protocol/tdap/mysql/databaseSchema.h +53 -0
  111. data/source/bzs/db/protocol/tdap/mysql/debuglog.cpp +383 -0
  112. data/source/bzs/db/protocol/tdap/mysql/debuglog.h +106 -0
  113. data/source/bzs/db/protocol/tdap/mysql/recordsetReader.h +680 -0
  114. data/source/bzs/db/protocol/tdap/mysql/request.h +202 -0
  115. data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.cpp +1020 -0
  116. data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.h +141 -0
  117. data/source/bzs/db/protocol/tdap/tdapRequest.h +190 -0
  118. data/source/bzs/db/protocol/tdap/tdapSchema.cpp +295 -0
  119. data/source/bzs/db/protocol/tdap/tdapSchema.h +558 -0
  120. data/source/bzs/db/protocol/tdap/tdapcapi.h +423 -0
  121. data/source/bzs/db/transactd/appBuilderImple.h +55 -0
  122. data/source/bzs/db/transactd/appModule.cpp +183 -0
  123. data/source/bzs/db/transactd/appModule.h +80 -0
  124. data/source/bzs/db/transactd/connManager.cpp +201 -0
  125. data/source/bzs/db/transactd/connManager.h +60 -0
  126. data/source/bzs/db/transactd/connectionRecord.h +69 -0
  127. data/source/bzs/db/transactd/transactd.cpp +325 -0
  128. data/source/bzs/env/compiler.h +135 -0
  129. data/source/bzs/env/crosscompile.cpp +130 -0
  130. data/source/bzs/env/crosscompile.h +150 -0
  131. data/source/bzs/env/fileopen.h +36 -0
  132. data/source/bzs/env/mbcswchrLinux.cpp +40 -0
  133. data/source/bzs/env/mbcswchrLinux.h +88 -0
  134. data/source/bzs/env/tstring.h +183 -0
  135. data/source/bzs/example/changeSchema.cpp +117 -0
  136. data/source/bzs/example/changeSchema_c.cpp +78 -0
  137. data/source/bzs/example/connection_pool_c.cpp +171 -0
  138. data/source/bzs/example/createDatabase.cpp +305 -0
  139. data/source/bzs/example/createDatabase_c.cpp +202 -0
  140. data/source/bzs/example/deleteRecords.cpp +87 -0
  141. data/source/bzs/example/deleteRecords_c.cpp +57 -0
  142. data/source/bzs/example/dropDatabase.cpp +59 -0
  143. data/source/bzs/example/dropDatabase_c.cpp +34 -0
  144. data/source/bzs/example/insertRecords.cpp +212 -0
  145. data/source/bzs/example/insertRecords_c.cpp +153 -0
  146. data/source/bzs/example/readRecords.cpp +141 -0
  147. data/source/bzs/example/readRecords_c.cpp +107 -0
  148. data/source/bzs/example/updateRecords.cpp +99 -0
  149. data/source/bzs/example/updateRecords_c.cpp +71 -0
  150. data/source/bzs/example/update_with_transaction.cpp +104 -0
  151. data/source/bzs/example/update_with_transaction_c.cpp +80 -0
  152. data/source/bzs/netsvc/client/tcpClient.cpp +226 -0
  153. data/source/bzs/netsvc/client/tcpClient.h +489 -0
  154. data/source/bzs/netsvc/server/IAppModule.h +94 -0
  155. data/source/bzs/netsvc/server/iserver.h +65 -0
  156. data/source/bzs/netsvc/server/serverCpt.cpp +522 -0
  157. data/source/bzs/netsvc/server/serverCpt.h +88 -0
  158. data/source/bzs/netsvc/server/serverPipe.cpp +705 -0
  159. data/source/bzs/netsvc/server/serverPipe.h +96 -0
  160. data/source/bzs/netsvc/server/serverTpool.cpp +416 -0
  161. data/source/bzs/netsvc/server/serverTpool.h +84 -0
  162. data/source/bzs/rtl/benchmark.cpp +96 -0
  163. data/source/bzs/rtl/benchmark.h +65 -0
  164. data/source/bzs/rtl/datetime.cpp +375 -0
  165. data/source/bzs/rtl/datetime.h +53 -0
  166. data/source/bzs/rtl/debuglog.cpp +106 -0
  167. data/source/bzs/rtl/debuglog.h +97 -0
  168. data/source/bzs/rtl/exception.h +116 -0
  169. data/source/bzs/rtl/stl_uty.cpp +35 -0
  170. data/source/bzs/rtl/stl_uty.h +29 -0
  171. data/source/bzs/rtl/stringBuffers.cpp +101 -0
  172. data/source/bzs/rtl/stringBuffers.h +58 -0
  173. data/source/bzs/rtl/strtrim.cpp +135 -0
  174. data/source/bzs/rtl/strtrim.h +46 -0
  175. data/source/bzs/test/tdclatl/bench_tdclatl.js +445 -0
  176. data/source/bzs/test/tdclrb/bench_tdclcpp.rb +375 -0
  177. data/source/bzs/test/tdclrb/prepare.rb +226 -0
  178. data/source/bzs/test/tdclrb/transactd_datetime_spec.rb +172 -0
  179. data/source/bzs/test/tdclrb/transactd_kanjischema_spec.rb +208 -0
  180. data/source/bzs/test/tdclrb/transactd_spec.rb +1536 -0
  181. data/source/bzs/test/transactdBench/transactdBench.cpp +430 -0
  182. data/source/bzs/test/transactdBench/transactdBench2.cpp +342 -0
  183. data/source/bzs/test/trdclengn/test_trdclengn.cpp +2030 -0
  184. data/source/global/tdclatl/Database.cpp +503 -0
  185. data/source/global/tdclatl/Database.h +139 -0
  186. data/source/global/tdclatl/DbDef.cpp +242 -0
  187. data/source/global/tdclatl/DbDef.h +79 -0
  188. data/source/global/tdclatl/Field.cpp +92 -0
  189. data/source/global/tdclatl/Field.h +59 -0
  190. data/source/global/tdclatl/FieldDef.cpp +238 -0
  191. data/source/global/tdclatl/FieldDef.h +87 -0
  192. data/source/global/tdclatl/Flags.cpp +111 -0
  193. data/source/global/tdclatl/Flags.h +55 -0
  194. data/source/global/tdclatl/KeyDef.cpp +51 -0
  195. data/source/global/tdclatl/KeyDef.h +55 -0
  196. data/source/global/tdclatl/KeySegment.cpp +55 -0
  197. data/source/global/tdclatl/Table.cpp +600 -0
  198. data/source/global/tdclatl/Table.h +144 -0
  199. data/source/global/tdclatl/TableDef.cpp +291 -0
  200. data/source/global/tdclatl/TableDef.h +86 -0
  201. data/source/global/tdclatl/TdVersion.cpp +74 -0
  202. data/source/global/tdclatl/TdVersion.h +54 -0
  203. data/source/global/tdclatl/_IDatabaseEvents_CP.h +113 -0
  204. data/source/global/tdclatl/dllmain.cpp +30 -0
  205. data/source/global/tdclatl/dllmain.h +27 -0
  206. data/source/global/tdclatl/keySegment.h +57 -0
  207. data/source/global/tdclatl/resource.h +0 -0
  208. data/source/global/tdclatl/stdafx.cpp +2 -0
  209. data/source/global/tdclatl/stdafx.h +25 -0
  210. data/source/global/tdclatl/targetver.h +4 -0
  211. data/source/global/tdclatl/tdclatl.cpp +68 -0
  212. data/source/global/tdclatl/tdclatl.def +10 -0
  213. data/source/global/tdclatl/tdclatl.idl +1035 -0
  214. data/source/linux/charsetConvert.h +112 -0
  215. data/source/linux/linuxTypes.h +33 -0
  216. data/source/linux/tchar.h +428 -0
  217. data/transactd.gemspec +97 -0
  218. metadata +267 -0
@@ -0,0 +1,1035 @@
1
+ /*=================================================================
2
+ Copyright (C) 2013 BizStation Corp All rights reserved.
3
+
4
+ This program is free software; you can redistribute it and/or
5
+ modify it under the terms of the GNU General Public License
6
+ as published by the Free Software Foundation; either version 2
7
+ of the License, or (at your option) any later version.
8
+
9
+ This program is distributed in the hope that it will be useful,
10
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ GNU General Public License for more details.
13
+
14
+ You should have received a copy of the GNU General Public License
15
+ along with this program; if not, write to the Free Software
16
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17
+ 02111-1307, USA.
18
+ =================================================================*/
19
+ import "oaidl.idl";
20
+ import "ocidl.idl";
21
+
22
+ coclass Database;
23
+ interface IDbDef;
24
+ coclass DbDef;
25
+
26
+ interface ITableDef;
27
+ interface IFieldDef;
28
+ interface IKeyDef;
29
+ interface ITable;
30
+ interface IFlags;
31
+ interface IKeySegment;
32
+ interface IField;
33
+ interface ITdVersion;
34
+
35
+
36
+ typedef
37
+ [
38
+ helpstring("Update, Insert type Constants")
39
+ ]
40
+ enum eUpdateType
41
+ {
42
+ changeCurrentCc = 0,
43
+ changeCurrentNcc = 1,
44
+ changeInKey = 2
45
+ }eUpdateType;
46
+
47
+ typedef
48
+ [
49
+ helpstring("Field info query type Constants")
50
+ ]
51
+ enum eFieldQuery
52
+ {
53
+ minlen = 0,
54
+ mxlen = 1,
55
+ defaultlen = 2,
56
+ decimals = 3
57
+ }eFieldQuery;
58
+
59
+ typedef
60
+ [
61
+ helpstring("Find type Constants")
62
+ ]
63
+ enum eFindType
64
+ {
65
+ findForword = 0,
66
+ findBackForword = 0
67
+ }eFindType;
68
+
69
+
70
+ typedef
71
+ [
72
+ helpstring("Schema type enum")
73
+ ]
74
+ enum eSchemaType
75
+ {
76
+ schemaBdf = (short)0,
77
+ schemaDdf = (short)1
78
+ }eSchemaType;
79
+
80
+ typedef
81
+ [
82
+ helpstring("Open mode enum")
83
+ ]
84
+ enum eOpenMode
85
+ {
86
+ normal = 0,
87
+ readOnly = -2,
88
+ exclusive = -4
89
+ }eOpenMode;
90
+
91
+
92
+
93
+ typedef
94
+ [
95
+ helpstring("Status code Constants")
96
+ ]
97
+ enum eStatus
98
+ {
99
+ STATUS_TABLE_YET_OPEN = -3,
100
+ STATUS_DURING_TRANSACTION = -4,
101
+ STATUS_NO_ACR_UPDATE_DELETE = -5,
102
+ STATUS_NO_ACR_INSERT = -6,
103
+ STATUS_NO_ACR_READ = -7,
104
+ STATUS_CANT_ALLOC_MEMORY = -8,
105
+ STATUS_USE_KEYFIELD = -9,
106
+ STATUS_TOO_MANY_TABLES = -10,
107
+ STATUS_INVARID_PRM_KEY_NUM = -11,
108
+ STATUS_INVARID_PNT_KEY_NUM = -12,
109
+ STATUS_INVARID_REP_KEY_NUM = -13,
110
+ STATUS_INVARID_FIELD_IDX = -14,
111
+ STATUS_ALREADY_DELETED = -15,
112
+ STATUS_LMITS_MAX_TABLES = -16,
113
+ STATUS_DB_YET_OPEN = -17,
114
+ STATUS_TABLENAME_NOTFOUND = -18,
115
+ STATUS_DIFFERENT_DBVERSION = -19,
116
+ STATUS_DUPLICATE_FIELDNAME = -20,
117
+ STATUS_INVALID_TABLE_IDX = -21,
118
+ STATUS_AUTH_DENIED = -22,
119
+ STATUS_TOO_MANY_FIELDS = -23,
120
+ STATUS_FILTERSTRING_ERROR = -24,
121
+ STATUS_INVALID_FIELDLENGTH = -25,
122
+ STATUS_INVALID_KEYTYPE = -26,
123
+ STATUS_LVAR_NOTE_NOT_LAST = -27,
124
+ STATUS_NODEF_FOR_CONVERT = -28,
125
+ STATUS_AUTOINC_SPACE_ERROR = -31,
126
+ STATUS_TOO_LONG_OWNERNAME = -32,
127
+ STATUS_CANT_DEL_FOR_REL = -33,
128
+ STATUS_NO_AUTOINC_SPACE = -34,
129
+ STATUS_INVALID_RECLEN = -35,
130
+ STATUS_INVALID_FIELDVALUE = -36,
131
+ STATUS_INVALID_VALLEN = -37,
132
+ STATUS_FIELDTYPE_NOTSUPPORT = -42,
133
+ STATUS_SUCCESS = 0,
134
+ STATUS_PROGRAM_ERROR = 1,
135
+ STATUS_IO_ERROR = 2,
136
+ STATUS_FILE_NOT_OPENED = 3,
137
+ STATUS_NOT_FOUND_TI = 4,
138
+ STATUS_DUPPLICATE_KEYVALUE = 5,
139
+ STATUS_INVALID_KEYNUM = 6,
140
+ STATUS_NO_CURRENT = 8,
141
+ STATUS_EOF = 9,
142
+ STATUS_TABLE_NOTOPEN = 12,
143
+ STATUS_REQUESTER_DEACTIVE = 20,
144
+ STATUS_KEYBUFFERTOOSMALL = 21,
145
+ STATUS_BUFFERTOOSMALL = 22,
146
+ STATUS_CANT_CREATE = 25,
147
+ STATUS_NOSUPPORT_OP = 41,
148
+ STATUS_INVALID_BOOKMARK = 43,
149
+ STATUS_ACCESS_DENIED = 46,
150
+ STATUS_INVALID_OWNERNAME = 51,
151
+ STATUS_TABLE_EXISTS_ERROR = 59,
152
+ STATUS_LIMMIT_OF_REJECT = 60,
153
+ STATUS_REACHED_FILTER_COND = 64,
154
+ STATUS_INVALID_FIELD_OFFSET = 65,
155
+ STATUS_CHANGE_CONFLICT = 80,
156
+ STATUS_INVALID_LOCKTYPE = 83,
157
+ STATUS_LOCK_ERROR = 84,
158
+ STATUS_FILE_LOCKED = 85,
159
+ STATUS_CANNOT_LOCK_TABLE = 88,
160
+ TATUS_INVALID_KEYNAME = 6,
161
+ STATUS_INVALID_DATASIZE = 22,
162
+ STATUS_INVALID_FIELDNAME = 65,
163
+ ERROR_TD_INVALID_CLINETHOST = 171,
164
+ ERROR_NOSPECIFY_TABLE = 176,
165
+ NET_BAD_SRB_FORMAT = 3021,
166
+ ERROR_TD_HOSTNAME_NOT_FOUND = 3103,
167
+ ERROR_TD_CONNECTION_FAILURE = 3106,
168
+ ERROR_TD_NOT_CONNECTED = 3110
169
+ }eStatus;
170
+
171
+ typedef
172
+ [
173
+ helpstring("Field type Constants")
174
+ ]
175
+ enum eFieldType
176
+ {
177
+ ft_string = 0,
178
+ ft_integer = 1,
179
+ ft_float = 2,
180
+ ft_date = 3,
181
+ ft_time = 4,
182
+ ft_decimal = 5,
183
+ ft_money = 6,
184
+ ft_logical = 7,
185
+ ft_numeric = 8,
186
+ ft_bfloat = 9,
187
+ ft_lstring = 10,
188
+ ft_zstring = 11,
189
+ ft_note = 12,
190
+ ft_lvar = 13,
191
+ ft_uinteger = 14,
192
+ ft_autoinc = 15,
193
+ ft_bit = 16,
194
+ ft_numericsts = 17,
195
+ ft_numericsa = 18,
196
+ ft_currency = 19,
197
+ ft_timestamp = 20,
198
+ ft_blob = 21,
199
+ ft_reserve22 = 22,
200
+ ft_reserve23 = 23,
201
+ ft_reserve24 = 24,
202
+ ft_wstring = 25,
203
+ ft_wzstring = 26,
204
+ ft_guid = 27,
205
+ ft_datatime = 30,
206
+ ft_myvarchar = 40,
207
+ ft_myvarbinary = 41,
208
+ ft_mywvarchar = 42,
209
+ ft_mywvarbinary = 43,
210
+ ft_mychar = 44,
211
+ ft_mywchar = 45,
212
+ ft_mydate = 46,
213
+ ft_mytime = 47,
214
+ ft_mydatetime = 48,
215
+ ft_mytimestamp = 49,
216
+ ft_mytext = 50,
217
+ ft_myblob = 51,
218
+ ft_nullindicator = 255
219
+ }eFieldType;
220
+
221
+ typedef
222
+ [
223
+ helpstring("Charset type Constants")
224
+ ]
225
+ enum eCharset
226
+ {
227
+ CHARSET_LATIN1 = 1,
228
+ CHARSET_CP850 = 4,
229
+ CHARSET_ASCII = 9,
230
+ CHARSET_SJIS = 11,
231
+ CHARSET_UTF8 = 22,
232
+ CHARSET_USC2 = 23,
233
+ CHARSET_UTF8B4 = 30,
234
+ CHARSET_UTF16LE = 33,
235
+ CHARSET_CP932 = 38,
236
+ CHARSET_EUCJ = 40,
237
+ MAX_CHAR_INFO = 41
238
+
239
+ }eCharset;
240
+
241
+ typedef
242
+ [
243
+ helpstring("Lock type Constants")
244
+ ]
245
+ enum eLockType
246
+ {
247
+ LOCK_NONE = 0,
248
+ LOCK_SINGLE_WAIT = 100,
249
+ LOCK_SINGLE_NOWAIT = 200,
250
+ LOCK_MULTI_WAIT = 300,
251
+ LOCK_MULTI_NOWAIT = 400,
252
+ NOWAIT_WRITE = 500,
253
+ PARALLEL_TRN = 1000,
254
+ PARA_SINGLE_NOWAIT = 1700,
255
+ PARA_MULTI_NOWAIT = 1900
256
+ }eLockType;
257
+
258
+ typedef
259
+ [
260
+ helpstring("Continus operation types")
261
+ ]
262
+ enum eContinusOpr
263
+ {
264
+ backup_start = 0,
265
+ backup_end = 1
266
+ }eContinusOpr;
267
+
268
+ typedef
269
+ [
270
+ helpstring("Continus operation types")
271
+ ]
272
+ enum eContinusStatus
273
+ {
274
+ TD_BACKUP_MODE_OK = 0,
275
+ TD_BACKUP_MODE_NOT_SUPPORT = 1,
276
+ TD_BACKUP_MODE_BUSY = 88,
277
+ TD_BACKUP_MODE_NOT_PERMIT = 41,
278
+ TD_BACKUP_MODE_SERVER_ERROR = 91
279
+ }eContinusStatus;
280
+
281
+
282
+
283
+ [
284
+ object,
285
+ uuid(3EE9F43F-99D0-4300-B8A4-3085A2C4D00B),
286
+ dual,
287
+ nonextensible,
288
+ pointer_default(unique)
289
+ ]
290
+ interface IDatabase : IDispatch
291
+ {
292
+ [id(0x00000001)]
293
+ HRESULT _stdcall Open([in] BSTR Uri, [in, defaultvalue(schemaBdf)] eSchemaType SchemaType, [in, defaultvalue(readOnly)] eOpenMode Mode, [in, defaultvalue("")] BSTR Dir, [in, defaultvalue("")] BSTR OwnerName, [out, retval] VARIANT_BOOL* Param6);
294
+ [propget, id(0x00000008)]
295
+ HRESULT _stdcall DbDef([out, retval] IDbDef** Value);
296
+ [id(0x00000002)]
297
+ HRESULT _stdcall OpenTable([in] VARIANT TableID, [in, defaultvalue(normal)] eOpenMode Mode, [in, defaultvalue(-1)] VARIANT_BOOL AutoCreate, [in, defaultvalue("")] BSTR OwnerName, [in, defaultvalue("")] BSTR Uri, [out, retval] ITable** ret);
298
+ [id(0x00000003), hidden]
299
+ HRESULT _stdcall AtatchDatabase([in] hyper* nativeDatabase);
300
+ [propget, id(0x00000004)]
301
+ HRESULT _stdcall RootDir([out, retval] BSTR* Value);
302
+ [propput, id(0x00000004)]
303
+ HRESULT _stdcall RootDir([in] BSTR Value);
304
+ [propget, id(0x00000005)]
305
+ HRESULT _stdcall Stat([out, retval] eStatus* Value);
306
+ [id(0x00000006)]
307
+ HRESULT _stdcall BeginTrn([in, defaultvalue(PARA_SINGLE_NOWAIT)] eLockType Bias);
308
+ [id(0x00000007)]
309
+ HRESULT _stdcall EndTrn(void);
310
+ [id(0x00000009)]
311
+ HRESULT _stdcall AbortTrn(void);
312
+ [propget, id(0x0000000A)]
313
+ HRESULT _stdcall NativeDatabase([out, retval] hyper** Value);
314
+ [id(0x000000C9)]
315
+ HRESULT _stdcall BeginSnapshot(void);
316
+ [id(0x000000CA)]
317
+ HRESULT _stdcall EndSnapshot(void);
318
+ [id(0x000000CB)]
319
+ HRESULT _stdcall Drop(void);
320
+ [id(0x000000CC)]
321
+ HRESULT _stdcall DropTable([in] BSTR TableName);
322
+ [id(0x000000CD)]
323
+ HRESULT _stdcall Create([in] BSTR Uri, [in, defaultvalue(0)] int type);
324
+ [id(0x000000CE)]
325
+ HRESULT _stdcall Connect([in] BSTR Uri, [in, defaultvalue(0)] VARIANT_BOOL NewConnection, [out, retval] VARIANT_BOOL* Value);
326
+ [id(0x000000CF)]
327
+ HRESULT _stdcall Disconnect([in] BSTR Uri, [out, retval] VARIANT_BOOL* Param2);
328
+ [id(0x000000D0)]
329
+ HRESULT _stdcall Close(void);
330
+ [propget, id(0x000000D1)]
331
+ HRESULT _stdcall EnableTrn([out, retval] VARIANT_BOOL* Value);
332
+ [id(0x000000D2)]
333
+ HRESULT _stdcall GetBtrVersion([in]int Index, [out, retval] ITdVersion** Value);
334
+
335
+ [id(0x000000D4)]
336
+ HRESULT _stdcall IsTransactdUri([in] BSTR Uri, [out, retval] VARIANT_BOOL* Value);
337
+ [propget, id(0x000000D5)]
338
+ HRESULT _stdcall IsUseTransactd([out, retval] VARIANT_BOOL* Value);
339
+ [id(0x000000D6)]
340
+ HRESULT _stdcall SetUseTransactd(void);
341
+ [propget, id(0x000000D7)]
342
+ HRESULT _stdcall LocalSharing([out, retval] VARIANT_BOOL* Value);
343
+ [propput, id(0x000000D7)]
344
+ HRESULT _stdcall LocalSharing([in] VARIANT_BOOL Value);
345
+ [propget, id(0x000000D8)]
346
+ HRESULT _stdcall LockWaitCount([out, retval] VARIANT_BOOL* Value);
347
+ [propput, id(0x000000D8)]
348
+ HRESULT _stdcall LockWaitCount([in] VARIANT_BOOL Value);
349
+ [propget, id(0x000000D9)]
350
+ HRESULT _stdcall LockWaitTime([out, retval] VARIANT_BOOL* Value);
351
+ [propput, id(0x000000D9)]
352
+ HRESULT _stdcall LockWaitTime([in] VARIANT_BOOL Value);
353
+ [propget, id(0x000000DA)]
354
+ HRESULT _stdcall UseLongFilename([out, retval] VARIANT_BOOL* Value);
355
+ [propput, id(0x000000DA)]
356
+ HRESULT _stdcall UseLongFilename([in] VARIANT_BOOL Value);
357
+ [propget, id(0x000000DB)]
358
+ HRESULT _stdcall OpenTableCount([out, retval] short* Value);
359
+ [id(0x000000DC)]
360
+ HRESULT _stdcall ReadDatabaseDirectory([out, retval] BSTR* Value);
361
+ [id(0x000000DE)]
362
+ HRESULT _stdcall Rename([in] BSTR OldUri, [in] BSTR newUri);
363
+ [propget, id(0x000000DF)]
364
+ HRESULT _stdcall Uri( [out, retval] BSTR* Uri);
365
+ [id(0x000000E1)]
366
+ HRESULT _stdcall TdapErr([in]OLE_HANDLE hWnd, [out, retval] BSTR* Value);
367
+ [id(0x000000E3)]
368
+ HRESULT _stdcall Clone([out, retval] IDatabase** Value);
369
+ [id(0x000000E4)]
370
+ HRESULT _stdcall AssignSchemaData([in] IDbDef* Src, [out, retval] short* Value);
371
+ [id(0x000000E5)]
372
+ HRESULT _stdcall Continuous([in] eContinusOpr Op, [in, defaultvalue(0)] VARIANT_BOOL inclideRepfile, [out, retval] eContinusStatus* Value);
373
+ [id(0x000000E6)]
374
+ HRESULT _stdcall ConvertTable([in] short TableIndex, [in, defaultvalue(-1)] VARIANT_BOOL Turbo, [in, defaultvalue("")] BSTR OwnerName);
375
+ [id(0x000000E7)]
376
+ HRESULT _stdcall CopyTableData([in] ITable* Dest, [in] ITable* Src, [in] VARIANT_BOOL Turbo, [in, defaultvalue(0)] int Offset
377
+ , [in, defaultvalue(-1)] short KeyNum, [in, defaultvalue(-1)] int MaxSkip, [out, retval] short* Value);
378
+ [id(0x000000E8)]
379
+ HRESULT _stdcall CreateTable([in] short FileNum, [in, defaultvalue("")] BSTR Uri, [out, retval] VARIANT_BOOL* Value);
380
+ [id(0x000000E9)]
381
+ HRESULT _stdcall ExistsTableFile([in] short TableIndex, [in, defaultvalue("")] BSTR OwnerName);
382
+ [id(0x000000EA)]
383
+ HRESULT _stdcall GetTableUri([in] short FileNum, [out, retval] BSTR* Value);
384
+ [propget, id(0x000000EB)]
385
+ HRESULT _stdcall IsOpened([out, retval] VARIANT_BOOL* Value);
386
+ [propget, id(0x000000EC)]
387
+ HRESULT _stdcall TableReadOnly([out, retval] VARIANT_BOOL* Value);
388
+ [propput, id(0x000000EC)]
389
+ HRESULT _stdcall TableReadOnly([in] VARIANT_BOOL Value);
390
+ [id(0x000000ED)]
391
+ HRESULT _stdcall SwapTablename([in] BSTR Uri1, [in] BSTR Uri2);
392
+ [propget, id(0x000000EF)]
393
+ HRESULT _stdcall ClientID([out, retval] short* Value);
394
+ [propget, id(0x000000F0)]
395
+ HRESULT _stdcall RefCount([out, retval] int* Value);
396
+ [propget, id(0x000000F1)]
397
+ HRESULT _stdcall TrnsactionFlushWaitStatus([out, retval] VARIANT_BOOL* Value);
398
+ [propput, id(0x000000F2), helpstring("Effect to all Database instance.")]
399
+ HRESULT _stdcall ExecCodePage([in] unsigned int Value);
400
+ [propget, id(0x000000F2)]
401
+ HRESULT _stdcall ExecCodePage([out, retval] unsigned int* Value);
402
+ [propget, id(0x000000F3)]
403
+ HRESULT _stdcall MaxTables([out, retval] int* Value);
404
+
405
+
406
+ };
407
+
408
+
409
+
410
+
411
+ [
412
+ object,
413
+ uuid(907FD3F0-130F-4A44-BC79-AAECBDBE93AF),
414
+ dual,
415
+ nonextensible,
416
+ pointer_default(unique)
417
+ ]
418
+ interface IDbDef : IDispatch
419
+ {
420
+ [propget, id(0x00000003)]
421
+ HRESULT _stdcall TableCount([out, retval] short* Value);
422
+ [id(0x000000C9)]
423
+ HRESULT _stdcall InsertTable([in] short index, [out, retval] ITableDef** Param1);
424
+ [id(0x000000CA)]
425
+ HRESULT _stdcall UpDateTableDef([in] short TableIndex);
426
+ [id(0x000000CB)]
427
+ HRESULT _stdcall InsertField([in] short TableIndex, [in] short InsertIndex, [out, retval] IFieldDef** Param3);
428
+ [id(0x000000CC)]
429
+ HRESULT _stdcall DeleteField([in] short TableIndex, [in] short FieldIndex);
430
+ [id(0x000000CD)]
431
+ HRESULT _stdcall InsertKey([in] short TableIndex, [in] short InsertIndex, [out, retval] IKeyDef** Param3);
432
+ [id(0x000000CE)]
433
+ HRESULT _stdcall DeleteKey([in] short TableIndex, [in] short KeyIndex);
434
+ [id(0x000000CF)]
435
+ HRESULT _stdcall TableDef([in] short Index, [out, retval] ITableDef** Value);
436
+
437
+ [id(0x000000D0)]
438
+ HRESULT _stdcall CompAsBackup([in] short TableIndex, [out, retval] VARIANT_BOOL* Value);
439
+ [id(0x000000D1)]
440
+ HRESULT _stdcall DeleteTable([in] short TableIndex);
441
+ [id(0x000000D2)]
442
+ HRESULT _stdcall TableNumByName([in] BSTR Name, [out, retval] short* Value);
443
+ [id(0x000000D3)]
444
+ HRESULT _stdcall FieldNumByName([in] short TableIndex, [in] BSTR Name, [out, retval] short* Value);
445
+ [id(0x000000D4)]
446
+ HRESULT _stdcall FieldValidLength([in] eFieldQuery Query, [in] short FieldType, [out, retval] unsigned int* Value);
447
+ [id(0x000000D5)]
448
+ HRESULT _stdcall FindKeynumByFieldNum([in] short TableIndex, [in] short Index, [out, retval] unsigned short* Value);
449
+ [id(0x000000D6)]
450
+ HRESULT _stdcall GetRecordLen([in] short TableIndex, [out, retval] unsigned short* Value);
451
+ [propget, id(0x000000D7)]
452
+ HRESULT _stdcall OpenMode([out, retval] eOpenMode* Value);
453
+ [id(0x000000D8)]
454
+ HRESULT _stdcall PopBackup([in] short TableIndex);
455
+ [id(0x000000D9)]
456
+ HRESULT _stdcall PushBackup([in] short TableIndex);
457
+ [id(0x000000DA)]
458
+ HRESULT _stdcall RenumberTable([in] short OldIndex, [in] short NewIndex);
459
+ [id(0x000000DB)]
460
+ HRESULT _stdcall Reopen([in, defaultvalue(readOnly)] eOpenMode Mode);
461
+ [propget, id(0x000000DC)]
462
+ HRESULT _stdcall Version([out, retval] int* Value);
463
+ [propput, id(0x000000DC)]
464
+ HRESULT _stdcall Version([in] int Value);
465
+ [propget, id(0x000000DD)]
466
+ HRESULT _stdcall Stat([out, retval] eStatus* Value);
467
+ [id(0x000000DE)]
468
+ HRESULT _stdcall TdapErr([in]OLE_HANDLE hWnd, [out, retval] BSTR* Value);
469
+ };
470
+ [
471
+ object,
472
+ uuid(91FD8A45-1D66-4939-9AF0-7F0ACD65AA00),
473
+ dual,
474
+ nonextensible,
475
+ pointer_default(unique)
476
+ ]
477
+ interface ITable : IDispatch
478
+ {
479
+ [propget, id(0x00000001)]
480
+ HRESULT _stdcall Vlng([in] VARIANT Index, [out, retval] int* Value);
481
+ [propput, id(0x00000001)]
482
+ HRESULT _stdcall Vlng([in] VARIANT Index, [in] int Value);
483
+ [propget, id(0x00000002)]
484
+ HRESULT _stdcall Text([in] VARIANT Index, [out, retval] BSTR* Value);
485
+ [propput, id(0x00000002)]
486
+ HRESULT _stdcall Text([in] VARIANT Index, [in] BSTR Value);
487
+ [propget, id(0x00000003)]
488
+ HRESULT _stdcall TableDef([out, retval] ITableDef** Value);
489
+ [id(0x00000004)]
490
+ HRESULT _stdcall Insert([in, defaultvalue(changeCurrentNcc)] eUpdateType ncc);
491
+ [id(0x00000005)]
492
+ HRESULT _stdcall UpDate([in, defaultvalue(changeCurrentNcc)] eUpdateType ncc);
493
+ [id(0x00000006)]
494
+ HRESULT _stdcall Delete([in, defaultvalue(0)] VARIANT_BOOL inkey);
495
+ [id(0x00000007)]
496
+ HRESULT _stdcall ClearBuffer(void);
497
+ [id(0x00000019)]
498
+ HRESULT _stdcall Close(void);
499
+ [id(0x0000001A)]
500
+ HRESULT _stdcall SeekFirst([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
501
+ [id(0x0000001B)]
502
+ HRESULT _stdcall SeekLast([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
503
+ [id(0x0000001C)]
504
+ HRESULT _stdcall SeekPrev([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
505
+ [id(0x0000001D)]
506
+ HRESULT _stdcall SeekNext([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
507
+ [id(0x0000001E)]
508
+ HRESULT _stdcall Seek([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
509
+ [id(0x0000001F)]
510
+ HRESULT _stdcall SeekGreater([in] VARIANT_BOOL orEqual, [in, defaultvalue(LOCK_NONE)] eLockType lockBias);
511
+ [id(0x00000020)]
512
+ HRESULT _stdcall SeekLessThan([in] VARIANT_BOOL orEqual, [in, defaultvalue(LOCK_NONE)] eLockType lockBias);
513
+ [propget, id(0x00000030)]
514
+ HRESULT _stdcall BookMark([out, retval] long* Value);
515
+ [id(0x00000022)]
516
+ HRESULT _stdcall SeekByBookMark([in] long Value, [in, defaultvalue(LOCK_NONE)] eLockType lockBias);
517
+ [propget, id(0x00000023)]
518
+ HRESULT _stdcall Percentage([out, retval] long* Value);
519
+ [id(0x00000031)]
520
+ HRESULT _stdcall SeekByPercentage([in] long Value);
521
+ [propget, id(0x00000024)]
522
+ HRESULT _stdcall RecordCount([out, retval] long* Value);
523
+ [propget, id(0x00000025)]
524
+ HRESULT _stdcall RecordLength([out, retval] long* Value);
525
+ [propget, id(0x00000026)]
526
+ HRESULT _stdcall Stat([out, retval] eStatus* Value);
527
+ [propput, id(0x00000026)]
528
+ HRESULT _stdcall Stat([in] eStatus Value);
529
+ [propget, id(0x00000027)]
530
+ HRESULT _stdcall KeyNum([out, retval] short* Value);
531
+ [propput, id(0x00000027)]
532
+ HRESULT _stdcall KeyNum([in] short Value);
533
+ [propget, id(0x00000021)]
534
+ HRESULT _stdcall Vdbl([in] VARIANT Index, [out, retval] double* Value);
535
+ [propput, id(0x00000021)]
536
+ HRESULT _stdcall Vdbl([in] VARIANT Index, [in] double Value);
537
+ [propget, id(0x00000028)]
538
+ HRESULT _stdcall Vbin([in] VARIANT Index, [out, retval] BSTR* Value);
539
+ [propput, id(0x00000028)]
540
+ HRESULT _stdcall Vbin([in] VARIANT Index, [in] BSTR Value);
541
+ [propget, id(0x00000029)]
542
+ HRESULT _stdcall Filter([out, retval] BSTR* Value);
543
+ [propput, id(0x00000029)]
544
+ HRESULT _stdcall Filter([in] BSTR Value);
545
+ [id(0x0000002A)]
546
+ HRESULT _stdcall FindNext([in, defaultvalue(-1)] VARIANT_BOOL notIncCurrent);
547
+ [id(0x0000002B)]
548
+ HRESULT _stdcall FindPrev([in, defaultvalue(-1)] VARIANT_BOOL notIncCurrent);
549
+ [id(0x0000002C)]
550
+ HRESULT _stdcall FindFirst(void);
551
+ [id(0x0000002D)]
552
+ HRESULT _stdcall FindLast(void);
553
+ [propget, id(0x0000000F)]
554
+ HRESULT _stdcall V64([in] VARIANT Index, [out, retval] hyper* Value);
555
+ [propput, id(0x0000000F)]
556
+ HRESULT _stdcall V64([in] VARIANT Index, [in] hyper Value);
557
+ [id(0x0000002E)]
558
+ HRESULT _stdcall StepFirst([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
559
+ [id(0x0000002F)]
560
+ HRESULT _stdcall StepLast([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
561
+ [id(0x00000032)]
562
+ HRESULT _stdcall StepPrev([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
563
+ [id(0x00000033)]
564
+ HRESULT _stdcall StepNext([in, defaultvalue(LOCK_NONE)] eLockType lockBias);
565
+ [id(0x000000C9)]
566
+ HRESULT _stdcall BeginBulkInsert([in, defaultvalue(55535)] long Value);
567
+ [id(0x000000CA)]
568
+ HRESULT _stdcall CommitBulkInsert(void);
569
+ [id(0x000000CB)]
570
+ HRESULT _stdcall AbortBulkInsert(void);
571
+ [propget, id(0x000000CC)]
572
+ HRESULT _stdcall FilterRejectCount([out, retval] long* Value);
573
+ [propput, id(0x000000CC)]
574
+ HRESULT _stdcall FilterRejectCount([in] long Value);
575
+ [propget, id(0x000000CD)]
576
+ HRESULT _stdcall FilterGetCount([out, retval] long* Value);
577
+ [propput, id(0x000000CD)]
578
+ HRESULT _stdcall FilterGetCount([in] long Value);
579
+ [id(0x000000CE)]
580
+ HRESULT _stdcall Field([in] VARIANT Index, [out, retval] IField** Value);
581
+ [propget, id(0x000000CF)]
582
+ HRESULT _stdcall CanDelete([out, retval] VARIANT_BOOL* Value);
583
+ [propget, id(0x000000D0)]
584
+ HRESULT _stdcall CanInsert([out, retval] VARIANT_BOOL* Value);
585
+ [propget, id(0x000000D1)]
586
+ HRESULT _stdcall CanRead([out, retval] VARIANT_BOOL* Value);
587
+ [propget, id(0x000000D2)]
588
+ HRESULT _stdcall CanWrite([out, retval] VARIANT_BOOL* Value);
589
+ [id(0x000000D3)]
590
+ HRESULT _stdcall ClearOwnerName(void);
591
+ [id(0x000000D4)]
592
+ HRESULT _stdcall CreateIndex([in, defaultvalue(0)] VARIANT_BOOL specifyKeyNum);
593
+ [id(0x000000D5)]
594
+ HRESULT _stdcall DropIndex([in, defaultvalue(0)] VARIANT_BOOL norenumber);
595
+ [propget, id(0x000000D6)]
596
+ HRESULT _stdcall Datalen([out, retval] unsigned int* Value);
597
+ [propget, id(0x000000D7)]
598
+ HRESULT _stdcall WriteImageLen([out, retval] unsigned int* Value);
599
+ [propget, id(0x000000D8)]
600
+ HRESULT _stdcall IsOpen([out, retval] VARIANT_BOOL* Value);
601
+ [id(0x000000D9)]
602
+ HRESULT _stdcall SetAccessRights([in] unsigned char curd);
603
+ [id(0x000000DA)]
604
+ HRESULT _stdcall SetOwnerName([in] BSTR* name, [in, defaultvalue(0)] short enctype);
605
+ [id(0x000000DB)]
606
+ HRESULT _stdcall TdapErr([in]OLE_HANDLE hWnd, [out, retval] BSTR* Value);
607
+ [id(0x000000DC)]
608
+ HRESULT _stdcall Unlock_([in, defaultvalue(0)] unsigned int bm);
609
+ [propget, id(0x000000DD)]
610
+ HRESULT _stdcall BlobFieldUsed([out, retval] VARIANT_BOOL* Value);
611
+ [propget, id(0x000000DF)]
612
+ HRESULT _stdcall BookmarkFindCurrent([out, retval] unsigned int* Value);
613
+ [propget, id(0x000000F0)]
614
+ HRESULT _stdcall BookMarksCount([out, retval] int* Value);
615
+ [id(0x000000F1)]
616
+ HRESULT _stdcall Find([in] eFindType FindType);
617
+ [propget, id(0x000000F2)]
618
+ HRESULT _stdcall RecordHash([out, retval] unsigned int* Value);
619
+ [propget, id(0x000000F3)]
620
+ HRESULT _stdcall LogicalToString([out, retval] VARIANT_BOOL* Value);
621
+ [propput, id(0x000000F3)]
622
+ HRESULT _stdcall LogicalToString([in] VARIANT_BOOL Value);
623
+ [propget, id(0x000000F4)]
624
+ HRESULT _stdcall TrimPadChar([out, retval] VARIANT_BOOL* Value);
625
+ [propput, id(0x000000F4)]
626
+ HRESULT _stdcall TrimPadChar([in] VARIANT_BOOL Value);
627
+ [propget, id(0x000000F5)]
628
+ HRESULT _stdcall UsePadChar([out, retval] VARIANT_BOOL* Value);
629
+ [propput, id(0x000000F5)]
630
+ HRESULT _stdcall UsePadChar([in] VARIANT_BOOL Value);
631
+ [id(0x000000F6)]
632
+ HRESULT _stdcall MoveBookmarksId([in] long Value);
633
+ [propget, id(0x000000F7)]
634
+ HRESULT _stdcall MyDateTimeValueByBtrv([out, retval] VARIANT_BOOL* Value);
635
+ [propget, id(0x000000F8)]
636
+ HRESULT _stdcall ValiableFormatType([out, retval] VARIANT_BOOL* Value);
637
+ [id(0x000000F9)]
638
+ HRESULT _stdcall SmartUpdate(void);
639
+
640
+
641
+ };
642
+ [
643
+ object,
644
+ uuid(C459B95E-1EB4-4670-B251-F074168153ED),
645
+ dual,
646
+ nonextensible,
647
+ pointer_default(unique)
648
+ ]
649
+ interface ITableDef : IDispatch
650
+ {
651
+ [propget, id(0x00000003)]
652
+ HRESULT _stdcall FieldCount([out, retval] short* Value);
653
+ [propget, id(0x00000004)]
654
+ HRESULT _stdcall KeyCount([out, retval] short* Value);
655
+ [propget, id(0x00000005)]
656
+ HRESULT _stdcall PageSize([out, retval] short* Value);
657
+ [propput, id(0x00000005)]
658
+ HRESULT _stdcall PageSize([in] short Value);
659
+ [propget, id(0x00000006)]
660
+ HRESULT _stdcall PreAlloc([out, retval] short* Value);
661
+ [propput, id(0x00000006)]
662
+ HRESULT _stdcall PreAlloc([in] short Value);
663
+ [propget, id(0x00000007)]
664
+ HRESULT _stdcall FileName([out, retval] BSTR* Value);
665
+ [propput, id(0x00000007)]
666
+ HRESULT _stdcall FileName([in] BSTR Value);
667
+ [propget, id(0x00000008)]
668
+ HRESULT _stdcall TableName([out, retval] BSTR* Value);
669
+ [propput, id(0x00000008)]
670
+ HRESULT _stdcall TableName([in] BSTR Value);
671
+ [propget, id(0x00000009)]
672
+ HRESULT _stdcall Flags([out, retval] IFlags** Value);
673
+ [propput, id(0x00000009)]
674
+ HRESULT _stdcall Flags([in] IFlags* Value);
675
+ [propget, id(0x0000000A)]
676
+ HRESULT _stdcall PrimaryKeyNum([out, retval] unsigned char* Value);
677
+ [propput, id(0x0000000A)]
678
+ HRESULT _stdcall PrimaryKeyNum([in] unsigned char Value);
679
+ [propget, id(0x0000000B), hidden]
680
+ HRESULT _stdcall ParentKeyNum([out, retval] unsigned char* Value);
681
+ [propput, id(0x0000000B), hidden]
682
+ HRESULT _stdcall ParentKeyNum([in] unsigned char Value);
683
+ [propget, id(0x0000000C), hidden]
684
+ HRESULT _stdcall ReplicaKeyNum([out, retval] unsigned char* Value);
685
+ [propput, id(0x0000000C), hidden]
686
+ HRESULT _stdcall ReplicaKeyNum([in] unsigned char Value);
687
+ [propget, id(0x0000000D)]
688
+ HRESULT _stdcall OptionFlags([out, retval] IFlags** Value);
689
+ [propput, id(0x0000000D)]
690
+ HRESULT _stdcall OptionFlags([in] IFlags* Value);
691
+ [propget, id(0x0000000E), hidden]
692
+ HRESULT _stdcall IconIndex([out, retval] unsigned char* Value);
693
+ [propput, id(0x0000000E), hidden]
694
+ HRESULT _stdcall IconIndex([in] unsigned char Value);
695
+ [propget, id(0x0000000F)]
696
+ HRESULT _stdcall Id([out, retval] short* Value);
697
+ [propput, id(0x0000000F)]
698
+ HRESULT _stdcall Id([in] short Value);
699
+ [propget, id(0x000000C9)]
700
+ HRESULT _stdcall Charsetindex([out, retval] eCharset* Value);
701
+ [propput, id(0x000000C9)]
702
+ HRESULT _stdcall Charsetindex([in] eCharset Value);
703
+ [propget, id(0x000000CC)]
704
+ HRESULT _stdcall FixedRecordLen([out, retval] unsigned short* Value);
705
+ [propput, id(0x000000CC)]
706
+ HRESULT _stdcall FixedRecordLen([in] unsigned short Value);
707
+ [propget, id(0x000000CD)]
708
+ HRESULT _stdcall MaxRecordLen([out, retval] unsigned short* Value);
709
+ [propput, id(0x000000CD)]
710
+ HRESULT _stdcall MaxRecordLen([in] unsigned short Value);
711
+ [propget, id(0x000000CF)]
712
+ HRESULT _stdcall SchemaCodePage([out, retval] unsigned int* Value);
713
+ [propput, id(0x000000CF)]
714
+ HRESULT _stdcall SchemaCodePage([in] unsigned int Value);
715
+ [propget, id(0x000000D0)]
716
+ HRESULT _stdcall Version([out, retval] unsigned short* Value);
717
+ [propget, id(0x000000CA)]
718
+ HRESULT _stdcall FieldDef([in] short Index, [out, retval] IFieldDef** Value);
719
+ [propget, id(0x000000CB)]
720
+ HRESULT _stdcall KeyDef([in] short Index, [out, retval] IKeyDef** Value);
721
+ };
722
+ [
723
+ object,
724
+ uuid(B97808AB-5353-41EF-A41D-EF94967BCBE2),
725
+ dual,
726
+ nonextensible,
727
+ pointer_default(unique)
728
+ ]
729
+ interface IFieldDef : IDispatch
730
+ {
731
+ [propget, id(0x00000001)]
732
+ HRESULT _stdcall Name([out, retval] BSTR* Value);
733
+ [propput, id(0x00000001)]
734
+ HRESULT _stdcall Name([in] BSTR Value);
735
+ [propget, id(0x00000002)]
736
+ HRESULT _stdcall Type([out, retval] eFieldType* Value);
737
+ [propput, id(0x00000002)]
738
+ HRESULT _stdcall Type([in] eFieldType Value);
739
+ [propget, id(0x00000003)]
740
+ HRESULT _stdcall Len([out, retval] short* Value);
741
+ [propput, id(0x00000003)]
742
+ HRESULT _stdcall Len([in] short Value);
743
+ [propget, id(0x00000004)]
744
+ HRESULT _stdcall Decimals([out, retval] unsigned char* Value);
745
+ [propput, id(0x00000004)]
746
+ HRESULT _stdcall Decimals([in] unsigned char Value);
747
+ [propget, id(0x00000005)]
748
+ HRESULT _stdcall Max([out, retval] double* Value);
749
+ [propput, id(0x00000005)]
750
+ HRESULT _stdcall Max([in] double Value);
751
+ [propget, id(0x00000006)]
752
+ HRESULT _stdcall Min([out, retval] double* Value);
753
+ [propput, id(0x00000006)]
754
+ HRESULT _stdcall Min([in] double Value);
755
+ [propget, id(0x00000007)]
756
+ HRESULT _stdcall DefValue([out, retval] double* Value);
757
+ [propput, id(0x00000007)]
758
+ HRESULT _stdcall DefValue([in] double Value);
759
+ [propget, id(0x00000008), hidden]
760
+ HRESULT _stdcall LookTable([out, retval] unsigned char* Value);
761
+ [propput, id(0x00000008), hidden]
762
+ HRESULT _stdcall LookTable([in] unsigned char Value);
763
+ [propget, id(0x00000009), hidden]
764
+ HRESULT _stdcall LookField([out, retval] unsigned char* Value);
765
+ [propput, id(0x00000009), hidden]
766
+ HRESULT _stdcall LookField([in] unsigned char Value);
767
+ [propget, id(0x0000000A), hidden]
768
+ HRESULT _stdcall LookViewField([in] short Index, [out, retval] unsigned char* Value);
769
+ [propput, id(0x0000000A), hidden]
770
+ HRESULT _stdcall LookViewField([in] short Index, [in] unsigned char Value);
771
+ [propget, id(0x0000000B), hidden]
772
+ HRESULT _stdcall EnableFlags([out, retval] IFlags** Value);
773
+ [propput, id(0x0000000B), hidden]
774
+ HRESULT _stdcall EnableFlags([in] IFlags* Value);
775
+ [propget, id(0x0000000C)]
776
+ HRESULT _stdcall Keylen([out, retval] unsigned short* Value);
777
+ [propput, id(0x0000000C)]
778
+ HRESULT _stdcall Keylen([in] unsigned short Value);
779
+ [propget, id(0x0000000D)]
780
+ HRESULT _stdcall NullValue([out, retval] unsigned short* Value);
781
+ [propput, id(0x0000000D)]
782
+ HRESULT _stdcall NullValue([in] unsigned short Value);
783
+ [propget, id(0x0000000E)]
784
+ HRESULT _stdcall Align([out, retval] unsigned int* Value);
785
+ [propget, id(0x0000000F)]
786
+ HRESULT _stdcall TypeName([out, retval] BSTR* Value);
787
+ [propget, id(0x00000010)]
788
+ HRESULT _stdcall IsStringType([out, retval] VARIANT_BOOL* Value);
789
+ [propget, id(0x00000011)]
790
+ HRESULT _stdcall CharsetIndex([out, retval] eCharset* Value);
791
+ [propput, id(0x00000011)]
792
+ HRESULT _stdcall CharsetIndex([in] eCharset Value);
793
+ [propget, id(0x00000012)]
794
+ HRESULT _stdcall CodePage([out, retval] unsigned int* Value);
795
+ [propget, id(0x00000013)]
796
+ HRESULT _stdcall CharNum([out, retval] unsigned int* Value);
797
+ [id(0x00000014)]
798
+ HRESULT _stdcall SetLenByCharnum([in] unsigned short Value);
799
+
800
+
801
+
802
+ };
803
+ [
804
+ object,
805
+ uuid(AE15153A-87D9-4A6F-B17D-31695BA24B35),
806
+ dual,
807
+ nonextensible,
808
+ pointer_default(unique)
809
+ ]
810
+ interface IKeyDef : IDispatch
811
+ {
812
+ [propget, id(0x00000001)]
813
+ HRESULT _stdcall SegmentCount([out, retval] unsigned char* Value);
814
+ [propput, id(0x00000001)]
815
+ HRESULT _stdcall SegmentCount([in] unsigned char Value);
816
+ [id(0x000000C9)]
817
+ HRESULT _stdcall Segments([in] short Index, [out, retval] IKeySegment** Value);
818
+
819
+ };
820
+ [
821
+ object,
822
+ uuid(1777FC4B-FE81-4FF8-9FF0-92D160CA6C9E),
823
+ dual,
824
+ nonextensible,
825
+ pointer_default(unique)
826
+ ]
827
+ interface IFlags : IDispatch
828
+ {
829
+ [propget, id(0x00000001)]
830
+ HRESULT _stdcall Bits([in] short Index, [out, retval] VARIANT_BOOL* Value);
831
+ [propput, id(0x00000001)]
832
+ HRESULT _stdcall Bits([in] short Index, [in] VARIANT_BOOL Value);
833
+ [id(0x000000C9)]
834
+ HRESULT _stdcall All([out] unsigned short* Value);
835
+ [id(0x000000CA)]
836
+ HRESULT _stdcall GetBit([in] short Index, [out, retval] VARIANT_BOOL* Value);
837
+ [id(0x000000CB)]
838
+ HRESULT _stdcall SetBit([in] short Index, [in] VARIANT_BOOL Value);
839
+ };
840
+
841
+
842
+
843
+ [
844
+ object,
845
+ uuid(8DCAB5C6-AFCC-4BED-8D06-7044F0CCB3A3),
846
+ dual,
847
+ nonextensible,
848
+ pointer_default(unique)
849
+ ]
850
+ interface IKeySegment : IDispatch
851
+ {
852
+ [propget, id(0x00000001)]
853
+ HRESULT _stdcall FieldNum([out, retval] unsigned char* Value);
854
+ [propput, id(0x00000001)]
855
+ HRESULT _stdcall FieldNum([in] unsigned char Value);
856
+ [propget, id(0x00000002)]
857
+ HRESULT _stdcall Flags([out, retval] IFlags** Value);
858
+ [propput, id(0x00000002)]
859
+ HRESULT _stdcall Flags([in] IFlags* Value);
860
+
861
+
862
+ };
863
+ [
864
+ object,
865
+ uuid(775F02E3-CCD0-49A0-986F-F4A517ABD7ED),
866
+ dual,
867
+ nonextensible,
868
+ pointer_default(unique)
869
+ ]
870
+ interface IField : IDispatch
871
+ {
872
+ [propget, id(0x000000C9)]
873
+ HRESULT _stdcall Text([out, retval] BSTR* Value);
874
+ [propput, id(0x000000C9)]
875
+ HRESULT _stdcall Text([in] BSTR Value);
876
+ [propget, id(0x000000CA)]
877
+ HRESULT _stdcall Vlng([out, retval] int* Value);
878
+ [propput, id(0x000000CA)]
879
+ HRESULT _stdcall Vlng([in] int Value);
880
+ [propget, id(0x000000CB)]
881
+ HRESULT _stdcall V64([out, retval] hyper* Value);
882
+ [propput, id(0x000000CB)]
883
+ HRESULT _stdcall V64([in] hyper Value);
884
+ [propget, id(0x000000CC)]
885
+ HRESULT _stdcall Vdbl([out, retval] double* Value);
886
+ [propput, id(0x000000CC)]
887
+ HRESULT _stdcall Vdbl([in] double Value);
888
+ [propget, id(0x000000CD)]
889
+ HRESULT _stdcall Vbin([out, retval] BSTR* Value);
890
+ [propput, id(0x000000CD)]
891
+ HRESULT _stdcall Vbin([in] BSTR Value);
892
+ };
893
+
894
+ [
895
+ object,
896
+ uuid(775F02E3-CCD0-49A0-986F-F4A517ABD7EF),
897
+ dual,
898
+ nonextensible,
899
+ pointer_default(unique)
900
+ ]
901
+ interface ITdVersion : IDispatch
902
+ {
903
+ [propget, id(1)]
904
+ HRESULT _stdcall MajorVersion([out, retval] short* Value);
905
+ [propput, id(1)]
906
+ HRESULT _stdcall MajorVersion([in] short Value);
907
+ [propget, id(2)]
908
+ HRESULT _stdcall MinorVersion([out, retval] short* Value);
909
+ [propput, id(2)]
910
+ HRESULT _stdcall MinorVersion([in] short Value);
911
+ [propget, id(3)]
912
+ HRESULT _stdcall Type([out, retval] short* Value);
913
+ [propput, id(3)]
914
+ HRESULT _stdcall Type([in] short Value);
915
+ [id(4)]
916
+ HRESULT _stdcall ModuleTypeString([out, retval] BSTR* Value);
917
+ [id(5)]
918
+ HRESULT _stdcall ModuleVersionShortString([out, retval] BSTR* Value);
919
+
920
+ };
921
+
922
+ [
923
+ uuid(3B712514-E2EF-4040-8A3C-BCACB839EB3E),
924
+ version(1.0),
925
+ ]
926
+
927
+ library transactd
928
+ {
929
+ importlib("stdole2.tlb");
930
+ [
931
+ uuid(530AC521-AB85-4139-8F78-CA56F8B7722F)
932
+ ]
933
+ dispinterface _IDatabaseEvents
934
+ {
935
+ properties:
936
+ methods:
937
+ [id(1)]
938
+ HRESULT OnCopyData(IDatabase* db, int recordCount, int count, VARIANT_BOOL* cancel);
939
+ [id(2)]
940
+ HRESULT OnDeleteRecord(IDatabase* db, ITable* tb, VARIANT_BOOL* Value);
941
+ [id(3)]
942
+ HRESULT OnSchemaMgrFn(IDatabase* db, short* Value);
943
+ };
944
+ [
945
+ uuid(1DF73F19-D216-47A4-847D-8CD1279E1077)
946
+ ]
947
+ coclass Database
948
+ {
949
+ [default] interface IDatabase;
950
+ [default, source] dispinterface _IDatabaseEvents;
951
+
952
+ };
953
+
954
+ [
955
+ uuid(9B3CAC13-FCB8-42E1-993C-D81645B40FEF)
956
+ ,noncreatable
957
+ ]
958
+ coclass DbDef
959
+ {
960
+ [default] interface IDbDef;
961
+ };
962
+ [
963
+ uuid(4B8E64CA-F963-408C-AC4E-C1F9556738D4)
964
+ ,noncreatable
965
+ ]
966
+ coclass Table
967
+ {
968
+ [default] interface ITable;
969
+ };
970
+ [
971
+ uuid(D2115BB4-48CE-461C-A1C1-324DD12C37EE)
972
+ ,noncreatable
973
+ ]
974
+ coclass TableDef
975
+ {
976
+ [default] interface ITableDef;
977
+ };
978
+ [
979
+ uuid(42AE202D-A721-45A6-BB5C-2074101A8751)
980
+ ,noncreatable
981
+ ]
982
+ coclass FieldDef
983
+ {
984
+ [default] interface IFieldDef;
985
+
986
+ };
987
+ [
988
+ uuid(38DDBD32-27D5-41C5-AAE6-B6D2D4CF0F0D)
989
+ ,noncreatable
990
+ ]
991
+ coclass KeyDef
992
+ {
993
+ [default] interface IKeyDef;
994
+ };
995
+ [
996
+ uuid(27968808-D981-4DEC-9937-A8E6A71714A8)
997
+ ,noncreatable
998
+ ]
999
+ coclass Flags
1000
+ {
1001
+ [default] interface IFlags;
1002
+ };
1003
+
1004
+
1005
+ [
1006
+ uuid(DEC4DD3C-C661-4C41-8F6C-F579187CF2C9)
1007
+ ,noncreatable
1008
+ ]
1009
+ coclass KeySegment
1010
+ {
1011
+ [default] interface IKeySegment;
1012
+ };
1013
+ [
1014
+ uuid(692ADBB5-B156-48A6-8A32-3A6C31586698)
1015
+ ,noncreatable
1016
+ ]
1017
+ coclass Field
1018
+ {
1019
+ [default] interface IField;
1020
+ };
1021
+
1022
+ [
1023
+ uuid(692ADBB5-B156-48A6-8A32-3A6C31586699)
1024
+ ,noncreatable
1025
+ ]
1026
+ coclass TdVersion
1027
+ {
1028
+ [default] interface ITdVersion;
1029
+ };
1030
+
1031
+
1032
+
1033
+ };
1034
+
1035
+ import "shobjidl.idl";