home *** CD-ROM | disk | FTP | other *** search
/ Datatid 1999 #6 / Datatid_1999-06.iso / internet / Tango352Promo / P.SQL / PTKPKG.1 / BTRCONST.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1997-11-07  |  19.3 KB  |  473 lines

  1. {*************************************************************************
  2. **
  3. **  Copyright 1982-1997 Pervasive Software Inc. All Rights Reserved
  4. **
  5. *************************************************************************}
  6. {***********************************************************************
  7.    BTRCONST.PAS
  8.       This is the Pascal constants unit for Btrieve 6.x under MS Windows
  9.       and DOS.  Include this file in the USES clause of your application.
  10.       For examples, see:
  11.          MS Windows: btrsampw.pas
  12.          DOS:        btrsampd.pas
  13.          Delphi:     btrsam16.pas, btrsam32.pas
  14. ************************************************************************}
  15. UNIT btrconst;
  16.  
  17. INTERFACE
  18. CONST
  19. {***************************************************************************
  20.                                Size Constants
  21. ***************************************************************************}
  22. ACS_SIZE              = 265;         { alternate collating sequence size }
  23. ACS_FILLER_SIZE       = 260;
  24. ACS_BYTE_MAP_SIZE     = 256;
  25. ACS_NAME_SIZE         = 8;
  26. ISR_TABLE_NAME_SIZE   = 16;
  27. ISR_FILLER_SIZE       = 248;
  28.  
  29. BLOB_HEADER_LEN       = $0014;       { record chunk offset }
  30.  
  31. MAX_DATABUF_SIZE      = 57000;
  32.  
  33. MIN_PAGE              = 512;
  34. MAX_PAGE              = 4096;
  35. MAX_KEY_SIZE          = 255;
  36. MAX_KEY_SEG           = 119;
  37. OWNER_NAME_SIZE       = 8+1;        { 8 characters + binary 0 }
  38. POS_BLOCK_SIZE        = 128;
  39. PHYSICAL_POS_BUF_LEN  = 4;          { data buf size for Get Position  }
  40. MAX_FIXED_RECORD_LEN  = 4088;       { maximum fixed record length     }
  41. MAX_STATBUF_SIZE      = 33455;      { B_STAT maximum data buffer size }
  42.  
  43. {***************************************************************************
  44.                           'Chunk' API Constatnts
  45. ***************************************************************************}
  46. GET_SIGNATURE_INDEX          = $00000004;
  47. GET_NUM_CHUNKS_INDEX         = $00000008;
  48. GET_CHUNK_OFFSET_INDEX       = 12;
  49. GET_CHUNK_LEN_INDEX          = 16;
  50. GET_USER_DATA_PTR_INDEX      = 20;
  51.  
  52. UPDATE_SIGNATURE_INDEX       = $00000000;
  53. UPDATE_NUM_CHUNKS_INDEX      = $00000004;
  54. UPDATE_CHUNK_OFFSET_INDEX    = $00000008;
  55. UPDATE_CHUNK_LEN_INDEX       = $00000012;
  56. UPDATE_USER_DATA_PTR_INDEX   = $00000016;
  57.  
  58. RECTANGLE_DIRECT_SIGN        = $80000002;
  59. RECTANGLE_INDIRECT_SIGN      = $80000003;
  60. APPEND_TO_BLOB               = $20000000;
  61. GET_DRTC_XTRACTOR_KEY        = $FFFFFFFE;
  62. NEXT_IN_BLOB                 = $40000000;
  63. XTRACTR_INDIRECT_SIGN        = $80000001;
  64. XTRACTR_DIRECT_SIGN          = $80000000;
  65. TRUNC_SIGN                   = $80000004;
  66. PARTS_OF_KEY                 = $00800000;
  67. TRUNC_AFTER_UPDATE           = $00400000;
  68. CHUNK_NOBIAS_MASK = (NEXT_IN_BLOB OR APPEND_TO_BLOB OR PARTS_OF_KEY OR TRUNC_AFTER_UPDATE) XOR ( $FFFFFFFF );
  69.  
  70. CHUNK_NO_INTERNAL_CURRENCY   = $0001;
  71. MUST_READ_DATA_PAGE          = $0002;
  72. NO_INTERNAL_CURRENCY         = 0;
  73.  
  74. {***************************************************************************
  75.                                Operation Codes
  76. ***************************************************************************}
  77. B_OPEN              = 0;
  78. B_CLOSE             = 1;
  79. B_INSERT            = 2;
  80. B_UPDATE            = 3;
  81. B_DELETE            = 4;
  82. B_GET_EQUAL         = 5;
  83. B_GET_NEXT          = 6;
  84. B_GET_PREVIOUS      = 7;
  85. B_GET_GT            = 8;
  86. B_GET_GE            = 9;
  87. B_GET_LT            = 10;
  88. B_GET_LE            = 11;
  89. B_GET_FIRST         = 12;
  90. B_GET_LAST          = 13;
  91. B_CREATE            = 14;
  92. B_STAT              = 15;
  93. B_EXTEND            = 16;
  94. B_SET_DIR           = 17;
  95. B_GET_DIR           = 18;
  96. B_BEGIN_TRAN        = 19;
  97. B_END_TRAN          = 20;
  98. B_ABORT_TRAN        = 21;
  99. B_GET_POSITION      = 22;
  100. B_GET_DIRECT        = 23;
  101. B_STEP_NEXT         = 24;
  102. B_STOP              = 25;
  103. B_VERSION           = 26;
  104. B_UNLOCK            = 27;
  105. B_RESET             = 28;
  106. B_SET_OWNER         = 29;
  107. B_CLEAR_OWNER       = 30;
  108. B_BUILD_INDEX       = 31;
  109. B_DROP_INDEX        = 32;
  110. B_STEP_FIRST        = 33;
  111. B_STEP_LAST         = 34;
  112. B_STEP_PREVIOUS     = 35;
  113. B_GET_NEXT_EXTENDED = 36;
  114. B_GET_PREV_EXTENDED = 37;
  115. B_STEP_NEXT_EXT     = 38;
  116. B_STEP_PREVIOUS_EXT = 39;
  117. B_EXT_INSERT        = 40;
  118. B_MISC_DATA         = 41;
  119. B_CONTINUOUS        = 42;
  120. B_SEEK_PERCENT      = 44;
  121. B_GET_PERCENT       = 45;
  122. B_CHUNK_UPDATE      = 53;
  123. B_EXTENDED_STAT     = 65;
  124.  
  125. {***************************************************************************
  126.                            Operation Bias Codes
  127. ***************************************************************************}
  128. S_WAIT_LOCK    = 100;
  129. S_NOWAIT_LOCK  = 200;    { function code bias for lock                }
  130. M_WAIT_LOCK    = 300;    { function code bias for multiple loop lock  }
  131. M_NOWAIT_LOCK  = 400;    { function code bias for multiple lock       }
  132.  
  133. WAIT_T         = 119;    { begin transaction with wait (same as 19)   }
  134. NOWAIT_T       = 219;    { begin transaction with nowait              }
  135. WAIT3_T        = 319;    { begin transaction with wait (same as 19)   }
  136. NOWAIT4_T      = 419;    { begin transaction with nowait              }
  137. CCURR_T_BIAS   = 1000;   { function code bias for consurrent trans    }
  138. NOWRITE_WAIT   = 500;    { function code bias when ins/del/upd should }
  139.  
  140. {***************************************************************************
  141.                    Key Number Bias Codes & Special Key Codes
  142.                The hexadecimal values below are unsigned values
  143. ***************************************************************************}
  144. KEY_BIAS                            = 50;
  145. DROP_BUT_NO_RENUMBER                = $80;  { key num bias for Drop  }
  146.                                              { Preserves key #s       }
  147. CREATE_SUPPLEMENTAL_AS_THIS_KEY_NUM = $80;  { key bias for Create SI }
  148. CREATE_NEW_FILE                     = $FF;
  149. DONT_CREATE_WITH_TTS                = $FE;
  150. CREATE_NEW_FILE_NO_TTS              = $FD;
  151. IGNORE_KEY                          = $FFFF;   { ignore the key number }
  152.  
  153. {***************************************************************************
  154.                            Btrieve File Open Modes
  155.              The hexadecimal values below are unsigned values
  156. ***************************************************************************}
  157. NORMAL       = $00;   { normal mode        }
  158. ACCELERATED  = $FF;   { accelerated mode   }
  159. EXCLUSIVE    = $FC;   { exclusive mode     }
  160. MINUSONE     = $FF;   { byte value for -1  }
  161. READONLY     = $FE;   { read only mode     }
  162.  
  163. {***************************************************************************
  164.                             Btrieve Return Codes
  165. ***************************************************************************}
  166. B_NO_ERROR                          = 0;
  167. B_INVALID_FUNCTION                  = 1;
  168. B_IO_ERROR                          = 2;
  169. B_FILE_NOT_OPEN                     = 3;
  170. B_KEY_VALUE_NOT_FOUND               = 4;
  171. B_DUPLICATE_KEY_VALUE               = 5;
  172. B_INVALID_KEYNUMBER                 = 6;
  173. B_DIFFERENT_KEYNUMBER               = 7;
  174. B_POSITION_NOT_SET                  = 8;
  175. B_END_OF_FILE                       = 9;
  176. B_MODIFIABLE_KEYVALUE_ERROR         = 10;
  177. B_FILENAME_BAD                      = 11;
  178. B_FILE_NOT_FOUND                    = 12;
  179. B_EXTENDED_FILE_ERROR               = 13;
  180. B_PREIMAGE_OPEN_ERROR               = 14;
  181. B_PREIMAGE_IO_ERROR                 = 15;
  182. B_EXPANSION_ERROR                   = 16;
  183. B_CLOSE_ERROR                       = 17;
  184. B_DISKFULL                          = 18;
  185. B_UNRECOVERABLE_ERROR               = 19;
  186. B_RECORD_MANAGER_INACTIVE           = 20;
  187. B_KEYBUFFER_TOO_SHORT               = 21;
  188. B_DATALENGTH_ERROR                  = 22;
  189. B_POSITIONBLOCK_LENGTH              = 23;
  190. B_PAGE_SIZE_ERROR                   = 24;
  191. B_CREATE_IO_ERROR                   = 25;
  192. B_NUMBER_OF_KEYS                    = 26;
  193. B_INVALID_KEY_POSITION              = 27;
  194. B_INVALID_RECORD_LENGTH             = 28;
  195. B_INVALID_KEYLENGTH                 = 29;
  196. B_NOT_A_BTRIEVE_FILE                = 30;
  197. B_FILE_ALREADY_EXTENDED             = 31;
  198. B_EXTEND_IO_ERROR                   = 32;
  199. B_BTR_CANNOT_UNLOAD                 = 33;
  200. B_INVALID_EXTENSION_NAME            = 34;
  201. B_DIRECTORY_ERROR                   = 35;
  202. B_TRANSACTION_ERROR                 = 36;
  203. B_TRANSACTION_IS_ACTIVE             = 37;
  204. B_TRANSACTION_FILE_IO_ERROR         = 38;
  205. B_END_TRANSACTION_ERROR             = 39;
  206. B_TRANSACTION_MAX_FILES             = 40;
  207. B_OPERATION_NOT_ALLOWED             = 41;
  208. B_INCOMPLETE_ACCEL_ACCESS           = 42;
  209. B_INVALID_RECORD_ADDRESS            = 43;
  210. B_NULL_KEYPATH                      = 44;
  211. B_INCONSISTENT_KEY_FLAGS            = 45;
  212. B_ACCESS_TO_FILE_DENIED             = 46;
  213. B_MAXIMUM_OPEN_FILES                = 47;
  214. B_INVALID_ALT_SEQUENCE_DEF          = 48;
  215. B_KEY_TYPE_ERROR                    = 49;
  216. B_OWNER_ALREADY_SET                 = 50;
  217. B_INVALID_OWNER                     = 51;
  218. B_ERROR_WRITING_CACHE               = 52;
  219. B_INVALID_INTERFACE                 = 53;
  220. B_VARIABLE_PAGE_ERROR               = 54;
  221. B_AUTOINCREMENT_ERROR               = 55;
  222. B_INCOMPLETE_INDEX                  = 56;
  223. B_EXPANED_MEM_ERROR                 = 57;
  224. B_COMPRESS_BUFFER_TOO_SHORT         = 58;
  225. B_FILE_ALREADY_EXISTS               = 59;
  226. B_REJECT_COUNT_REACHED              = 60;
  227. B_SMALL_EX_GET_BUFFER_ERROR         = 61;
  228. B_INVALID_GET_EXPRESSION            = 62;
  229. B_INVALID_EXT_INSERT_BUFF           = 63;
  230. B_OPTIMIZE_LIMIT_REACHED            = 64;
  231. B_INVALID_EXTRACTOR                 = 65;
  232. B_RI_TOO_MANY_DATABASES             = 66;
  233. B_RIDDF_CANNOT_OPEN                 = 67;
  234. B_RI_CASCADE_TOO_DEEP               = 68;
  235. B_RI_CASCADE_ERROR                  = 69;
  236. B_RI_VIOLATION                      = 71;
  237. B_RI_REFERENCED_FILE_CANNOT_OPEN    = 72;
  238. B_RI_OUT_OF_SYNC                    = 73;
  239. B_END_CHANGED_TO_ABORT              = 74;
  240. B_RI_CONFLICT                       = 76;
  241. B_CANT_LOOP_IN_SERVER               = 77;
  242. B_DEAD_LOCK                         = 78;
  243. B_PROGRAMMING_ERROR                 = 79;
  244. B_CONFLICT                          = 80;
  245. B_LOCKERROR                         = 81;
  246. B_LOST_POSITION                     = 82;
  247. B_READ_OUTSIDE_TRANSACTION          = 83;
  248. B_RECORD_INUSE                      = 84;
  249. B_FILE_INUSE                        = 85;
  250. B_FILE_TABLE_FULL                   = 86;
  251. B_NOHANDLES_AVAILABLE               = 87;
  252. B_INCOMPATIBLE_MODE_ERROR           = 88;
  253.  
  254. B_DEVICE_TABLE_FULL                 = 90;
  255. B_SERVER_ERROR                      = 91;
  256. B_TRANSACTION_TABLE_FULL            = 92;
  257. B_INCOMPATIBLE_LOCK_TYPE            = 93;
  258. B_PERMISSION_ERROR                  = 94;
  259. B_SESSION_NO_LONGER_VALID           = 95;
  260. B_COMMUNICATIONS_ERROR              = 96;
  261. B_DATA_MESSAGE_TOO_SMALL            = 97;
  262. B_INTERNAL_TRANSACTION_ERROR        = 98;
  263. B_REQUESTER_CANT_ACCESS_RUNTIME     = 99;
  264. B_NO_CACHE_BUFFERS_AVAIL            = 100;
  265. B_NO_OS_MEMORY_AVAIL                = 101;
  266. B_NO_STACK_AVAIL                    = 102;
  267. B_CHUNK_OFFSET_TOO_LONG             = 103;
  268. B_LOCALE_ERROR                      = 104;
  269. B_CANNOT_CREATE_WITH_BAT            = 105;
  270. B_CHUNK_CANNOT_GET_NEXT             = 106;
  271. B_CHUNK_INCOMPATIBLE_FILE           = 107;
  272.  
  273. B_TRANSACTION_TOO_COMPLEX           = 109;
  274.  
  275. B_ARCH_BLOG_OPEN_ERROR              = 110;
  276. B_ARCH_FILE_NOT_LOGGED              = 111;
  277. B_ARCH_FILE_IN_USE                  = 112;
  278. B_ARCH_LOGFILE_NOT_FOUND            = 113;
  279. B_ARCH_LOGFILE_INVALID              = 114;
  280. B_ARCH_DUMPFILE_ACCESS_ERROR        = 115;
  281.  
  282. B_NO_SYSTEM_LOCKS_AVAILABLE         = 130;
  283. B_FILE_FULL                         = 132;
  284. B_MORE_THAN_5_CONCURRENT_USERS      = 133;
  285.  
  286. B_ISR_READ_ERROR                    = 134;  {* Old definition     *}
  287. B_ISR_NOT_FOUND                     = 134;  {* New definition     *}
  288.  
  289. B_ISR_FORMAT_INVALID                = 135;  {* No Longer returned *}
  290. B_ACS_NOT_FOUND                     = 136;
  291. B_CANNOT_CONVERT_RP                 = 137;
  292. B_INVALID_NULL_INDICATOR            = 138;
  293. B_INVALID_KEY_OPTION                = 139;
  294. B_INCOMPATIBLE_CLOSE                = 140;
  295. B_INVALID_USERNAME                  = 141;
  296. B_INVALID_DATABASE                  = 142;
  297. B_NO_SSQL_RIGHTS                    = 143;
  298. B_ALREADY_LOGGED_IN                 = 144;
  299. B_NO_DATABASE_SERVICES              = 145;
  300. B_DUPLICATE_SYSTEM_KEY              = 146;
  301. B_LOG_SEGMENT_MISSING               = 147;
  302. B_ROLL_FORWARD_ERROR                = 148;
  303. B_SYSTEM_KEY_INTERNAL               = 149;
  304. B_DBS_INTERNAL_ERROR                = 150;
  305. B_NESTING_DEPTH_ERROR               = 151;
  306.  
  307.  
  308. B_INVALID_PARAMETER_TO_MKDE         = 160;
  309.  
  310. B_USER_COUNT_LIMIT_EXCEEDED         = 161;
  311.  
  312. { Windows Client Return codes }
  313. B_LOCK_PARM_OUTOFRANGE              = 1001;
  314. B_MEM_ALLOCATION_ERR                = 1002;
  315. B_MEM_PARM_TOO_SMALL                = 1003;
  316. B_PAGE_SIZE_PARM_OUTOFRANGE         = 1004;
  317. B_INVALID_PREIMAGE_PARM             = 1005;
  318. B_PREIMAGE_BUF_PARM_OUTOFRANGE      = 1006;
  319. B_FILES_PARM_OUTOFRANGE             = 1007;
  320. B_INVALID_INIT_PARM                 = 1008;
  321. B_INVALID_TRANS_PARM                = 1009;
  322. B_ERROR_ACC_TRANS_CONTROL_FILE      = 1010;
  323. B_COMPRESSION_BUF_PARM_OUTOFRANGE   = 1011;
  324. B_INV_N_OPTION                      = 1012;
  325. B_TASK_LIST_FULL                    = 1013;
  326. B_STOP_WARNING                      = 1014;
  327. B_POINTER_PARM_INVALID              = 1015;
  328. B_ALREADY_INITIALIZED               = 1016;
  329. B_REQ_CANT_FIND_RES_DLL             = 1017;
  330. B_ALREADY_INSIDE_BTR_FUNCTION       = 1018;
  331. B_CALLBACK_ABORT                    = 1019;
  332. B_INTF_COMM_ERROR                   = 1020;
  333. B_FAILED_TO_INITIALIZE              = 1021;
  334.  
  335. { Btrieve requester status codes }
  336. B_INSUFFICIENT_MEM_ALLOC            = 2001;
  337. B_INVALID_OPTION                    = 2002;
  338. B_NO_LOCAL_ACCESS_ALLOWED           = 2003;
  339. B_SPX_NOT_INSTALLED                 = 2004;
  340. B_INCORRECT_SPX_VERSION             = 2005;
  341. B_NO_AVAIL_SPX_CONNECTION           = 2006;
  342. B_INVALID_PTR_PARM                  = 2007;
  343. B_CANT_CONNECT_TO_615               = 2008;
  344. B_CANT_LOAD_MKDE_ROUTER             = 2009;
  345. B_UT_THUNK_NOT_LOADED               = 2010;
  346. B_NO_RESOURCE_DLL                   = 2011;
  347. B_OS_ERROR                          = 2012;
  348.  
  349. {  MKDE Router status codes }
  350. B_MK_ROUTER_MEM_ERROR               = 3000;
  351. B_MK_NO_LOCAL_ACCESS_ALLOWED        = 3001;
  352. B_MK_NO_RESOURCE_DLL                = 3002;
  353. B_MK_INCOMPAT_COMPONENT             = 3003;
  354. B_MK_TIMEOUT_ERROR                  = 3004;
  355. B_MK_OS_ERROR                       = 3005;
  356. B_MK_INVALID_SESSION                = 3006;
  357. B_MK_SERVER_NOT_FOUND               = 3007;
  358. B_MK_INVALID_CONFIG                 = 3008;
  359. B_MK_NETAPI_NOT_LOADED              = 3009;
  360. B_MK_NWAPI_NOT_LOADED               = 3010;
  361. B_MK_THUNK_NOT_LOADED               = 3011;
  362. B_MK_LOCAL_NOT_LOADED               = 3012;
  363. B_MK_PNSL_NOT_LOADED                = 3013;
  364. B_MK_CANT_FIND_ENGINE               = 3014;
  365. B_MK_INIT_ERROR                     = 3015;
  366. B_MK_INTERNAL_ERROR                 = 3016;
  367. B_MK_LOCAL_MKDE_DATABUF_TOO_SMALL   = 3017;
  368. B_MK_CLOSED_ERROR                   = 3018;
  369. B_MK_SEMAPHORE_ERROR                = 3019;
  370. B_MK_LOADING_ERROR                  = 3020;
  371. B_MK_BAD_SRB_FORMAT                 = 3021;
  372. B_MK_DATABUF_LEN_TOO_LARGE          = 3022;
  373. B_MK_TASK_TABLE_FULL                = 3023;
  374. B_MK_INVALID_OP_ON_REMOTE           = 3034;
  375.  
  376. { PNSL status codes }
  377. B_NL_FAILURE                        = 3101;
  378. B_NL_NOT_INITIALIZED                = 3102;
  379. B_NL_NAME_NOT_FOUND                 = 3103;
  380. B_NL_PERMISSION_ERROR               = 3104;
  381. B_NL_NO_AVAILABLE_TRANSPORT         = 3105;
  382. B_NL_CONNECTION_FAILURE             = 3106;
  383. B_NL_OUT_OF_MEMORY                  = 3107;
  384. B_NL_INVALID_SESSION                = 3108;
  385. B_NL_MORE_DATA                      = 3109;
  386. B_NL_NOT_CONNECTED                  = 3110;
  387. B_NL_SEND_FAILURE                   = 3111;
  388. B_NL_RECEIVE_FAILURE                = 3112;
  389. B_NL_INVALID_SERVER_TYPE            = 3113;
  390. B_NL_SRT_FULL                       = 3114;
  391. B_NL_TRANSPORT_FAILURE              = 3115;
  392. B_NL_RCV_DATA_OVERFLOW              = 3116;
  393. B_NL_CST_FULL                       = 3117;
  394. B_NL_INVALID_ADDRESS_FAMILY         = 3118;
  395. B_NL_NO_AUTH_CONTEXT_AVAILABLE      = 3119;
  396. B_NL_INVALID_AUTH_TYPE              = 3120;
  397. B_NL_INVALID_AUTH_OBJECT            = 3121;
  398. B_NL_AUTH_LEN_TOO_SMALL             = 3122;
  399.  
  400. {***************************************************************************
  401.                       File flag definitions
  402.       The hexadecimal values below are unsigned values.
  403. ***************************************************************************}
  404. VAR_RECS                = $0001;
  405. BLANK_TRUNC             = $0002;
  406. PRE_ALLOC               = $0004;
  407. DATA_COMP               = $0008;
  408. KEY_ONLY                = $0010;
  409. BALANCED_KEYS           = $0020;
  410. FREE_10                 = $0040;
  411. FREE_20                 = $0080;
  412. FREE_30                 = FREE_10 OR FREE_20;
  413. DUP_PTRS                = $0100;
  414. INCLUDE_SYSTEM_DATA     = $0200;
  415. SPECIFY_KEY_NUMS        = $0400;
  416. VATS_SUPPORT            = $0800;
  417. NO_INCLUDE_SYSTEM_DATA  = $1200;
  418.  
  419. {***************************************************************************
  420.                       Key Flag Definitions
  421.      The hexadecimal values below are unsigned values
  422. ***************************************************************************}
  423. KFLG_DUP             = $0001;                   { Duplicates allowed mask }
  424. KFLG_MODX            = $0002;                       { Modifiable key mask }
  425. KFLG_BIN             = $0004;          { Binary or extended key type mask }
  426. KFLG_NUL             = $0008;                             { Null key mask }
  427. KFLG_SEG             = $0010;                        { Segmented key mask }
  428. KFLG_ALT             = $0020;         { Alternate collating sequence mask }
  429. KFLG_NUMBERED_ACS    = $0420;                  { Use numbered ACS in File }
  430. KFLG_NAMED_ACS       = $0C20;                     { Use named ACS in File }
  431. KFLG_DESC_KEY        = $0040;                { Key stored descending mask }
  432. KFLG_REPEAT_DUPS_KEY = $0080;            { Dupes handled w/ unique suffix }
  433. KFLG_EXTTYPE_KEY     = $0100;          { Extended key types are specified }
  434. KFLG_MANUAL_KEY      = $0200;   { Manual key which can be optionally null }
  435.                                 { (then key is not inc. in B-tree) }
  436. KFLG_NOCASE_KEY      = $0400;                      { Case insensitive key }
  437. KFLG_KEYONLY_FILE    = $4000;                        { key only type file }
  438. KFLG_PENDING_KEY     = $8000;         { Set during a create or drop index }
  439. KFLG_ALLOWABLE_KFLAG_PRE6 = $037F;          {  before ver 6.0, no nocase. }
  440.  
  441.  
  442. {***************************************************************************
  443.                       Extended Key Types
  444. ***************************************************************************}
  445. STRING_TYPE          = 0;
  446. INTEGER_TYPE         = 1;
  447. IEEE_TYPE            = 2;
  448. DATE_TYPE            = 3;
  449. TIME_TYPE            = 4;
  450. DECIMAL_TYPE         = 5;
  451. MONEY_TYPE           = 6;
  452. LOGICAL_TYPE         = 7;
  453. NUMERIC_TYPE         = 8;
  454. BFLOAT_TYPE          = 9;
  455. LSTRING_TYPE         = 10;
  456. ZSTRING_TYPE         = 11;
  457. UNSIGNED_BINARY_TYPE = 14;
  458. AUTOINCREMENT_TYPE   = 15;
  459. STS                  = 17;
  460. NUMERIC_SA           = 18;
  461. CURRENCY_TYPE        = 19;
  462. TIMESTAMP_TYPE       = 20;
  463.  
  464. {***************************************************************************
  465.                       ACS Signature Types
  466. ***************************************************************************}
  467. ALT_ID               = $AC;
  468. COUNTRY_CODE_PAGE_ID = $AD;
  469. ISR_ID               = $AE;
  470.  
  471. IMPLEMENTATION
  472. END.
  473.