database.h
Go to the documentation of this file.
1 /*--------------------------------------------------------------------------------------+
2 |
3 | Supplied under applicable software license agreement.
4 |
5 | Copyright (c) 2018 Bentley Systems, Incorporated. All rights reserved.
6 |
7 +---------------------------------------------------------------------------------------*/
8 #pragma once
9 #ifndef __databaseH__
10 #define __databaseH__
11 
12 #include <Mstn\MstnDefs.h>
13 #include "dbdefs.h"
14 
15 /*----------------------------------------------------------------------+
16 | |
17 | Defines |
18 | |
19 +----------------------------------------------------------------------*/
20 #define DB_PACKET_SIZE 2048 /* the packet size for the DB IPC */
21 #define DB_MORE_PACKETS 1
22 #define DB_LAST_PACKET 2
23 #define DB_DATABASE_NAME_SIZE 64 /* size of a database name */
24 #define DB_TABLE_NAME_SIZE MAX_TABLE_LENGTH
25  /* size of a database table name */
26 #define DB_COLUMN_NAME_SIZE MAX_COLUMN_LENGTH
27  /* size of a database column name */
28 #define DB_FORM_EXT 10
29 #define VAR_STRING 0
30 #define VAR_NAME_STRING 1
31 #define CHARACTER_DATA 0 /* DEFAULT, return data in character form */
32 #define RAW_DATA 1 /* do not coerce to character, return raw data */
33 #define MAX_OPEN_CURSORS 10
34 #define MAX_ERROR_LENGTH 512 /* max length for error return strings */
35 #define SQL_LOOKUP -100 /* SQL error; look in errorInformation */
36 #define MAX_ENV_VAR_LENGTH 512 /* max length for value in an EnvVarRequest */
37 #define DB_COPY_TABLE_LENGTH 2048 /* length of the sql statement in a copy table */
38 #define DB_MAX_TYPE_LENGTH 128 /* max size for sql stmt in extract stmt type */
39 #define MAX_DATE_SEPARATOR_LEN 15
40 
41 /* To insure that space is not always dynamically allocated (calloc) buffers in */
42 /* the IPC and SQL modules are allocated of the stack with the size below */
43 #define DB_DEFAULT_BUFFER_SIZE 2048
44 
45 /* if default was not enough and total additional space is not known, the below */
46 /* amount of additonal space will be realloced */
47 #define DB_BUFFER_REALLOC_SIZE 2048
48 
49 /* sql buffer realloc size, only for the dynamic sql buffer reallocation */
50 #define DB_SQLBUF_REALLOC_SIZE 256
51 
52 
53 /*----------------------------------------------------------------------+
54 | |
55 | Miscellaneous |
56 | |
57 +----------------------------------------------------------------------*/
58 /* database server types */
59 #define XBASE_SERVER 1
60 #define ORACLE_SERVER 2
61 #define ORACLE_STD_SERVER ORACLE_SERVER
62 #define ORACLE_DOS_SERVER 3
63 #define ORACLE_WIN_SERVER 4
64 #define INFORMIX_SERVER 5
65 #define RIS_SERVER 6
66 #define ODBC_SERVER 7
67 #define WINCON_SERVER ORACLE_WIN_SERVER
68 #define UNKNOWN_SERVER 8
69 #define SYBASE_SERVER 9
70 #define CTMORCL_SERVER 10
71 #define OLEDB_SERVER 11
72 #define BUDBC_SERVER 12
73 
74 /* ODBC database type defines */
75 #define ODBC_UNKNOWN 1
76 #define ODBC_FLATFILE 2
77 #define ODBC_ORACLE 3
78 #define ODBC_INFORMIX 4
79 #define ODBC_ACCESS 5
80 #define ODBC_SQLSERVER 6
81 #define ODBC_SYBASE 7
82 
83 /* flat file database definitions */
84 #define ODBC_BF_DBASE (0x00000001 << 0)
85 #define ODBC_BF_BTRIEVE (0x00000001 << 1)
86 #define ODBC_BF_PARADOX (0x00000001 << 2)
87 #define ODBC_BF_EXCEL (0x00000001 << 3)
88 #define ODBC_BF_TEXT (0x00000001 << 4)
89 
90 /* return values for preprocess step */
91 #define NOT_HANDLED 1
92 
93 #define NOT_ORACLE_MSDOS (!(serverType == ORACLE_DOS_SERVER))
94 #define ORACLE_DOS (serverType == ORACLE_DOS_SERVER)
95 #define DB_USES_WINCON (serverType == WINCON_SERVER)
96 
97 /*----------------------------------------------------------------------+
98 | |
99 | External server debug defines |
100 | |
101 +----------------------------------------------------------------------*/
102 #define DEBUG_ON (0x0001 << 0)
103 #define EXT_DEBUG_ON (0x0001 << 1)
104 #define IPC_DEBUG_ON (0x0001 << 2)
105 
106 /*----------------------------------------------------------------------+
107 | |
108 | IPC service requests. |
109 | |
110 +----------------------------------------------------------------------*/
111 #define IPC_RegisterHandler 1
112 
113 /*----------------------------------------------------------------------+
114 | |
115 | Message fields. |
116 | |
117 +----------------------------------------------------------------------*/
118 #define DBFORM_DAS 1
119 #define DBFORM_EDITAE 2
120 #define DBFORM_REVIEW 3
121 #define DBFORM_FORMCMD 4
122 
123 /*----------------------------------------------------------------------+
124 | |
125 | Message fields. |
126 | |
127 +----------------------------------------------------------------------*/
128 #define FIELD_Status 1
129 #define FIELD_Error 2
130 #define FIELD_Message 3
131 #define FIELD_DebugWindow 4
132 
133 /*----------------------------------------------------------------------+
134 | |
135 | SQL statement types. |
136 | |
137 +----------------------------------------------------------------------*/
138 #define DB_MALFORMED_STMT 1
139 #define DB_UNKNOWN_STMT 2
140 #define DB_SELECT_STMT 3
141 #define DB_UPDATE_STMT 4
142 #define DB_CONNECT_STMT 5
143 #define DB_DISCONNECT_STMT 6
144 #define DB_SQLFORMS_STMT 7
145 #define DB_RELOAD_STMT 8
146 #define DB_INSERT_STMT 9
147 #define DB_COMMIT_STMT 10
148 #define DB_ROLLBACK_STMT 11
149 #define DB_HANDLES_STMT 12
150 #define DB_DELETE_STMT 13
151 
152 /*----------------------------------------------------------------------+
153 | |
154 | Cursor IDs |
155 | |
156 +----------------------------------------------------------------------*/
157 #define DB_CURSOR_ID_0 0
158 #define DB_CURSOR_ID_1 1
159 #define DB_CURSOR_ID_2 2
160 #define DB_CURSOR_ID_3 3
161 #define DB_CURSOR_ID_4 4
162 #define DB_CURSOR_ID_5 5
163 #define DB_CURSOR_ID_6 6
164 #define DB_CURSOR_ID_7 7
165 #define DB_CURSOR_ID_8 8
166 #define DB_CURSOR_ID_9 9
167 #define DB_DESRIBE_SQLDA 10 /* the sqlda used in a describe */
168 
169 /*----------------------------------------------------------------------+
170 | |
171 | Message types. |
172 | |
173 +----------------------------------------------------------------------*/
174 #define MTYPE_ServiceRequest 1
175 #define MTYPE_ServiceRequestMore 2 /* one of many service requests */
176 #define MTYPE_ServiceRequestLast 3 /* last service request */
177 #define MTYPE_ServiceAcknowledge 4
178 #define MTYPE_ServiceAcknowledgeMore 5 /* one of many service acks with data */
179 #define MTYPE_ServiceAcknowledgeLast 6 /* last service ack with data */
180 #define MTYPE_ServiceAcknowledgeNoData 7 /* a service ack without data */
181 #define MTYPE_CallBackRequest 8
182 #define MTYPE_CallBackAcknowledge 9
183 
184 /*----------------------------------------------------------------------+
185 | |
186 | Database service requests. |
187 | |
188 +----------------------------------------------------------------------*/
189 #define DS_DatabaseProfile 1
190 #define DS_OpenDatabase 2
191 #define DS_CloseDatabase 3
192 #define DS_Terminate 4
193 #define DS_DescribeDatabase 5
194 #define DS_DescribeTable 6
195 #define DS_DescribeColumn 7
196 #define DS_CommitTransaction 8
197 #define DS_RollbackTransaction 9
198 #define DS_ProcessStatement 10
199 #define DS_OpenCursor 11
200 #define DS_FetchRow 12
201 #define DS_CloseCursor 13
202 #define DS_ProcessForm 14
203 #define DS_GetErrorInformation 15
204 #define DS_AdditionalRequest 16
205 #define DS_DebugMode 17
206 #define DS_CopyTable 18
207 #define DS_LockTable 19
208 #define DS_SetAE 20 /* server to loader only */
209 #define DS_CreateDABuffer 21 /* Note: NEW Msg, not in Betas */
210 #define DS_SetMsforms 22 /* server to loader only */
211 
212 /*----------------------------------------------------------------------+
213 | |
214 | CallBack requests. |
215 | |
216 +----------------------------------------------------------------------*/
217 #define CALLBACK_DebugMessage 1
218 #define CALLBACK_EnvVarRequest 2
219 #define CALLBACK_GetXbaseName 3
220 #define CALLBACK_SendPID 4
221 #define CALLBACK_MSWindowPriority 5
222 #define CALLBACK_FindDBFile 6
223 
224 /*----------------------------------------------------------------------+
225 | |
226 | Additional request (AR) defines. Used with DS_AdditionalRequest. |
227 | |
228 +----------------------------------------------------------------------*/
229 #define AR_MaxMSLink 1
230 #define AR_CopyRowToAE 2
231 #define AR_CopyRowToReport 3
232 #define AR_SimpleSelect 4
233 #define AR_OpenCursorXbase 5
234 #define AR_FetchRowXbase 6
235 #define AR_CloseCursorXbase 7
236 #define AR_SetRawData 8
237 #define AR_GetRawData 9
238 #define AR_DelPendingVersion 10
239 #define AR_ExecPendingQuery 11
240 /*----------------------------------------------------------------------+
241 | |
242 | Additional request (AR) structure typedefs. |
243 | |
244 +----------------------------------------------------------------------*/
245 struct AllocdStmt
246  {
247  WString *stmt;
248  };
249 
250 struct MaxMSLink
251  {
252  long requestType; /* The AR request type */
253  UInt32 maxMSLink; /* the max mslink in the table */
254  WChar tableName[DB_TABLE_NAME_SIZE]; /* table name to get max mslink from */
255  };
256 
257 /* for Xbase performance improvements */
259  {
268  };
269 
270 /* for Xbase performance improvements */
272  {
274  long mslink;
277  };
278 
279 /* for Xbase performance improvements */
281  {
284  long numValues;
291  };
292 
293 /* for Xbase performance improvements */
295  {
300  };
301 
302 /* for Xbase performance improvements */
304  {
307  };
308 
309 /* for Xbase performance improvements */
311  {
313  };
314 
315 struct VarRawAR
316  {
319  short length;
325  };
326 
327 /* For ProjectWise Managed Tables. */
328 /* Get Pending rows */
330  {
332  long cursorId;
335  };
336 
337 /* Delete Pending Rows */
339  {
341  long versionId;
342  long delCount;
344  };
345 
346 
347 
348 /*----------------------------------------------------------------------+
349 | |
350 | IPC typedefs. |
351 | |
352 +----------------------------------------------------------------------*/
354  {
355  WChar taskID[TASK_ID_SIZE]; /* name of task */
356  MdlDesc *mdlFileDescr; /* mdl application handing requests */
357  void *pFunction; /* entry point in this application */
358  };
359 
361  {
362  UInt32 type; /* type of request */
363  DatabaseServiceHandler handler; /* service handler */
364  };
365 
367  {
368  WChar *name; /* name of database service */
369  UInt32 type; /* service code */
370  };
371 
372 /*----------------------------------------------------------------------+
373 | |
374 | Service name table. |
375 | |
376 +----------------------------------------------------------------------*/
377 #if defined (GLOBAL_DEFINITIONS)
378 ServiceName serviceNameTable[]=
379  {
380  {L"DS_DatabaseProfile", DS_DatabaseProfile},
381  {L"DS_OpenDatabase", DS_OpenDatabase},
382  {L"DS_CloseDatabase", DS_CloseDatabase},
383  {L"DS_Terminate", DS_Terminate},
384  {L"DS_DescribeDatabase", DS_DescribeDatabase},
385  {L"DS_DescribeTable", DS_DescribeTable},
386  {L"DS_DescribeColumn", DS_DescribeColumn},
387  {L"DS_CommitTransaction", DS_CommitTransaction},
388  {L"DS_RollbackTransaction", DS_RollbackTransaction},
389  {L"DS_ProcessStatement", DS_ProcessStatement},
390  {L"DS_OpenCursor", DS_OpenCursor},
391  {L"DS_FetchRow", DS_FetchRow},
392  {L"DS_CloseCursor", DS_CloseCursor},
393  {L"DS_ProcessForm", DS_ProcessForm},
394  {L"DS_GetErrorInformation", DS_GetErrorInformation},
395  {L"DS_AdditionalRequest", DS_AdditionalRequest},
396  {L"DS_DebugMode", DS_DebugMode},
397  {L"DS_CopyTable", DS_CopyTable},
398  {L"DS_LockTable", DS_LockTable},
399  {L"DS_SetAE", DS_SetAE},
400  {L"DS_CreateDABuffer", DS_CreateDABuffer},
401  {L"DS_SetMsforms", DS_SetMsforms}
402  };
403 #endif
404 
405 /*----------------------------------------------------------------------+
406 | |
407 | Service requests. |
408 | |
409 +----------------------------------------------------------------------*/
410 struct BrandProfile // May need to remain as char fields
411  {
412  WChar brandName[32]; /* name of brand (Oracle, dBASE, ...) */
413  WChar serverName[32]; /* name of the database server executable */
414  WChar version[32]; /* version of database */
415  long odbcDBType; /* ODBC underlying database type */
416  };
417 
419  {
420  long hostnameRequired; /* host name required for login */
421  long usernameRequired; /* user name required for login */
422  long passwordRequired; /* password required for login */
423  long optionString; /* option string supported */
424  };
425 
426 struct DataType
427  {
428  long supported; /* data type supported */
429  char name[32]; /* vendor name */ // CHAR_OK
430  };
431 
432 #ifdef charType
433  #error The dloadbsi.h #defines of charType, floatType, et cetera, will corrupt the definition of DataTypeProfile which has members with those same names. Figure out how to get rid of the xxxxType #defines or make sure that they only occur after including database.h.
434 #endif
435 
437  {
438  DataType m_charType; /* CHAR (n); fixed length */
439  DataType m_varcharType; /* VARCHAR (n); variable length */
440  DataType m_floatType; /* REAL; single precision*/
441  DataType m_doubleType; /* DOUBLE; double precision */
442  DataType m_intType; /* INTEGER; 32 bit integer */
443  DataType m_shortType; /* SMALLINT; 16 bit integer */
444  DataType m_numericType; /* NUMERIC (p, s); fixed point */
445  DataType m_decimalType; /* DECIMAL (p, s); fixed point */
446  DataType m_dateType; /* DATE */
447  DataType m_timeType; /* TIME */
448  DataType m_datetimeType; /* DATETIME; absolute (date + time) */
449  DataType m_intervalType; /* INTERVAL; delta (date + time) */
450  DataType m_rawType; /* RAW (n); binary data; */
451  DataType m_booleanType; /* BOOLEAN; logical */
452  DataType m_nationalType; /* NCHAR; national character string */
453  DataType m_rowid; /* ROWID; pseudo column primary key */
454  };
455 
457  {
458  long max; /* min () function supported */
459  long min; /* max () function supported */
460  long count; /* count () function supported */
461  long sum; /* sum () function supported */
462  long avg; /* avg () function supported */
463  };
464 
466  {
467  long supported; /* transactions supported */
468  };
469 
471  {
472  long supported; /* screen forms supported */
473  long fileOutput; /* can generate text file output */
474  WChar fileExt[DB_FORM_EXT]; /* file extension for forms, .frm .fmt */
475  };
476 
478  {
479  UShort primarySignature; /* priamry user data signature */
480  UShort secondarySignature; /* secondary user data signature */
481  long saveAccessString; /* saved in design file */
482  long applicationLevel; /* level for access string */
483  };
484 
486  {
492  };
493 
495  {
496  BrandProfile brand; /* brand of RDBMS */
497  AccessProfile accessProfile; /* access method */
498  DataTypeProfile types; /* supported data types */
499  SQLProfile sql; /* SQL support and extensions */
500  FunctionProfile functions; /* aggregate function support */
501  TransactionProfile transactions; /* transaction support */
502  FormsProfile forms; /* screen forms support */
503  GraphicsProfile graphics; /* design file parameters */
504  bool passSqlda;
505  };
506 
508  {
509  WChar text[512]; /* the text of the open request */
510  };
511 
513  {
514 #if defined (_M_X64)
516 #else
518 #endif
520  };
521 
523  {
527  };
528 
530  {
533  };
534 
536  {
537 #if defined (_M_X64)
539 #else
541 #endif
543  };
544 
546  {
547 #if defined (_M_X64)
549 #else
551 #endif
553  long cursorID;
554  };
555 
556 struct FetchRow
557  {
558  long rowLength; /* <= length of data */
559  WChar *row; /* <= the row that was fetched */
560  long cursorID; /* => the ID of the cursor to fetch from */
561  short returnDataType; /* => type of data to return, char or raw */
562  };
563 
565  {
566  long cursorID; /* => the ID of the cursor to close */
567  };
568 
570  {
575  long textMode;
576  long noStdOut;
577 
578  };
579 
581  {
582  long code; /* <=> SQL error code */
583  WChar message[MAX_ERROR_LENGTH]; /* <= text of error message */
584  };
585 
587  {
588  long requestLength; /* <=> Length of text */
589  WChar *request; /* <=> The text of developer supplied request */
590  };
591 
592 struct DebugMode
593  {
594  long mode; /* => The new debug mode */
595  };
596 
597 struct CopyTable
598  {
599  WChar fromTableName[DB_TABLE_NAME_SIZE]; /* The table name to copy from */
600  WChar toTableName[DB_TABLE_NAME_SIZE]; /* The table name to copy to */
601  };
602 
603 struct LockTable
604  {
605  WChar tableName[DB_TABLE_NAME_SIZE]; /* The table name to lock */
606  };
607 
608 /* The following request is only used for communication between
609  server.ma and dbload.ma - it never reachs the external server
610 */
611 struct SetAE
612  {
614  };
615 
616 /* The following request is new for the Version 5 release of the toolkit
617  (3/94). It was not present in the Beta versions of the toolkit.
618  Database developers must handle this message if the server needs to work
619  with Displayable Attributes in Forms mode
620 */
622  {
623  long numLines; /* <= # lines to read from frm file */
624  WChar dasFormFile[MAXFILELENGTH]; /* => the form name */
625  /* <= the qualified path name to */
626  /* the DAS form output file */
627  };
628 
629 /* The following request is only used for communication between
630  server.ma and dbload.ma - it never reachs the external server
631 */
633  {
635  };
636 
637 /*----------------------------------------------------------------------+
638 | |
639 | Service message. |
640 | |
641 +----------------------------------------------------------------------*/
643  {
644  long status; /* <= return status */
645  UInt32 type; /* => type of request */
646  size_t length; /* <=> length of message */
647  bool isCallocd; /* <= whether memory in structure was calloc'd */
648  size_t callocdLength; /* <= if isCallocd, this is the new size */
649  long databaseID; /* => id of target database (FUTURE EXPANSION) */
650  };
651 
653  {
654  ServiceHeader header; /* <=> message header */
655  union
656  {
675  } u;
676  };
677 
679  {
681  size_t length;
683  long cursorID;
684  };
685 
687  {
690  long length;
692  };
693 
695  {
698  long length;
699  long cursorID;
701  };
702 
704  {
707  };
708 
709 /*----------------------------------------------------------------------+
710 | |
711 | CallBack requests. |
712 | |
713 +----------------------------------------------------------------------*/
715  {
716  long field; /* <= field for message output */
717  WChar string[512]; /* <= user message */
718  };
719 
721  {
722  WChar variable[64]; /* <= environment variable */
723  WChar value[MAX_ENV_VAR_LENGTH]; /* => value of environment variable */
724  };
725 
727  {
728  WChar name[MAXFILELENGTH]; /* <=> databaseName */
729  };
730 
732  {
733  ProcessID pid; /* <= process ID of external Server */
734  };
735 
737  {
738  bool activePriority; /* <= MS window priority High T/F */
739  };
740 
742  {
743  WChar fileName[MAXFILELENGTH]; /* <= file to find */
744  /* => path to file */
745  WChar fileExt[MAXEXTENSIONLENGTH]; /* => file Extension */
746  };
747 
748 /*----------------------------------------------------------------------+
749 | |
750 | CallBack message. |
751 | |
752 +----------------------------------------------------------------------*/
754  {
755  long status; /* <=> return status */
756  UInt32 type; /* <=> type of request */
757  UInt32 length; /* <=> length of message */
758  };
759 
761  {
762  CallBackHeader header; /* <=> message header */
763  union
764  {
768  ExternalPID externalPID; /* <= no ack */
771  } u;
772  };
773 
774 /*----------------------------------------------------------------------+
775 | |
776 | Descriptor message (mdl -> Server) |
777 | |
778 +----------------------------------------------------------------------*/
780  {
781  short columns;
782  short rows;
783  short items;
784  };
785 
787  {
789 #ifndef DLM_DBSERVER
791 #else
792  MS_sqlda *dlmSqlda;
793 #endif
794  };
795 
797  {
800  };
801 #endif
DescribeTable describeTable
Definition: database.h:660
#define DS_CopyTable
Definition: database.h:206
WChar * stmt
Definition: database.h:297
Definition: database.h:465
Definition: database.h:294
union DatabaseService::@175 u
long optionString
Definition: database.h:423
DataType m_intType
Definition: database.h:442
ColumnDescr columnDescr
Definition: database.h:532
Definition: database.h:245
long rowLength
Definition: database.h:558
WChar * name
Definition: database.h:368
DataType m_shortType
Definition: database.h:443
Definition: database.h:485
DataType m_dateType
Definition: database.h:446
long field
Definition: database.h:716
long requestType
Definition: database.h:260
DataType m_intervalType
Definition: database.h:449
long applicationLevel
Definition: database.h:482
long requestType
Definition: database.h:296
Definition: MicroStation.r.h:171
Definition: dbdefs.h:215
WChar value[512]
Definition: database.h:723
WChar rightDateSeparator[15]
Definition: database.h:491
WChar data[1]
Definition: database.h:700
long odbcDBType
Definition: database.h:415
WCharCP destTableName
Definition: database.h:265
WChar * data
Definition: database.h:682
WChar sqlStatement[8000]
Definition: database.h:334
long avg
Definition: database.h:462
#define DB_TABLE_NAME_SIZE
Definition: database.h:24
long requestLength
Definition: database.h:588
short rows
Definition: database.h:782
DataType m_doubleType
Definition: database.h:441
Definition: database.h:632
WChar columnName[MAX_COLUMN_LENGTH]
Definition: database.h:322
wchar_t * WCharP
Definition: Bentley.h:225
WChar fileExt[10]
Definition: database.h:474
#define MAX_ERROR_LENGTH
Definition: database.h:34
AccessProfile accessProfile
Definition: database.h:497
WChar data[1]
Definition: database.h:706
Definition: database.h:315
long hostnameRequired
Definition: database.h:420
CallBackHeader header
Definition: database.h:762
bool cursorCommitClose
Definition: database.h:488
DataType m_varcharType
Definition: database.h:439
Definition: database.h:494
UInt32 type
Definition: database.h:369
WChar tableName[MAX_TABLE_LENGTH]
Definition: database.h:605
TransactionProfile transactions
Definition: database.h:501
long delCount
Definition: database.h:342
bool breakResult
Definition: database.h:285
ErrorInformation errorInformation
Definition: database.h:667
WChar tableName[MAX_TABLE_LENGTH]
Definition: database.h:531
wchar_t WChar
Definition: Bentley.h:223
Definition: MicroStation.r.h:170
StatusMessage message
Definition: database.h:765
WChar serverName[32]
Definition: database.h:413
WChar * stmt
Definition: database.h:289
Definition: database.h:786
UInt32 length
Definition: database.h:757
long supported
Definition: database.h:467
MS_sqlda * dlmSqlda
Definition: database.h:799
long usernameRequired
Definition: database.h:421
short columns
Definition: database.h:781
FormsProfile forms
Definition: database.h:502
MS_sqlda * sqlda
Definition: database.h:288
bool cursorRollbackClose
Definition: database.h:489
#define DS_CreateDABuffer
Definition: database.h:209
WChar variable[64]
Definition: database.h:722
byte * dataP
Definition: database.h:318
bool getColInfo
Definition: database.h:298
WChar * description
Definition: database.h:552
WChar tableName[MAX_TABLE_LENGTH]
Definition: database.h:323
DataType m_booleanType
Definition: database.h:451
SetMsforms setMsforms
Definition: database.h:674
long primaryKey
Definition: database.h:320
Definition: database.h:529
#define DS_DescribeTable
Definition: database.h:194
#define DS_CloseCursor
Definition: database.h:201
long requestType
Definition: database.h:312
Definition: database.h:652
long resultSize
Definition: database.h:283
Definition: database.h:522
long supported
Definition: database.h:428
long cursorID
Definition: database.h:699
Definition: database.h:564
long code
Definition: database.h:582
#define DS_CloseDatabase
Definition: database.h:191
WChar data[1]
Definition: database.h:790
Definition: DgnPlatform.h:608
long bufferLength
Definition: database.h:705
DataType m_timeType
Definition: database.h:447
WChar sqlStatement[8000]
Definition: database.h:343
long numValues
Definition: database.h:284
int updateMode
Definition: database.h:321
#define DS_DescribeDatabase
Definition: database.h:193
ServiceHeader header
Definition: database.h:689
long versionId
Definition: database.h:341
OpenDatabase openDatabase
Definition: database.h:658
Definition: database.h:303
ProcessForm processForm
Definition: database.h:666
WChar * request
Definition: database.h:589
Definition: database.h:726
long versionSet
Definition: database.h:333
Definition: database.h:720
long length
Definition: database.h:698
long descriptionLength
Definition: database.h:524
CopyTable copyTable
Definition: database.h:670
DatabaseServiceHandler handler
Definition: database.h:363
bool activePriority
Definition: database.h:738
WChar tableName[64]
Definition: database.h:573
long max
Definition: database.h:458
Definition: database.h:456
Definition: database.h:694
Definition: database.h:545
wchar_t const * WCharCP
Definition: Bentley.h:224
WCharCP sourceTableName
Definition: database.h:264
WChar *** brokenResult
Definition: database.h:286
long textMode
Definition: database.h:575
Definition: MstnDefs.h:63
UInt32 descriptionLength
Definition: database.h:517
bool isMalloced
Definition: database.h:299
DebugMode debugMode
Definition: database.h:669
long cursorId
Definition: database.h:332
Definition: database.h:597
ProcessStatement processStatement
Definition: database.h:662
MSWindowPriority msWindowPriority
Definition: database.h:769
short returnDataType
Definition: database.h:561
ProcessID pid
Definition: database.h:733
Definition: database.h:753
Definition: database.h:592
uint32_t UInt32
Definition: Bentley.r.h:128
long requestType
Definition: database.h:273
UShort primarySignature
Definition: database.h:479
long ANSICompatible
Definition: database.h:487
Definition: database.h:741
Definition: database.h:556
WChar text[512]
Definition: database.h:509
WChar leftDateSeparator[15]
Definition: database.h:490
WChar dosWindow[8]
Definition: database.h:574
WChar fromTableName[MAX_TABLE_LENGTH]
Definition: database.h:599
CloseCursor closeCursor
Definition: database.h:665
UShort secondarySignature
Definition: database.h:480
UInt32 * mslinkP
Definition: database.h:261
#define DS_DescribeColumn
Definition: database.h:195
Definition: database.h:703
long databaseID
Definition: database.h:649
UInt32 descriptionLength
Definition: database.h:550
#define DS_OpenCursor
Definition: database.h:199
long cursorID
Definition: database.h:553
DataType m_floatType
Definition: database.h:440
long mode
Definition: database.h:594
WCharCP query
Definition: database.h:266
WChar name[MAXFILELENGTH]
Definition: database.h:728
Definition: database.h:779
#define DS_AdditionalRequest
Definition: database.h:204
long requestType
Definition: database.h:331
long supported
Definition: database.h:472
Definition: database.h:280
DataType m_numericType
Definition: database.h:444
OpenCursor openCursor
Definition: database.h:663
Definition: database.h:760
long fileOutput
Definition: database.h:473
Definition: database.h:512
Definition: database.h:507
Definition: database.h:418
Definition: database.h:796
long mslink
Definition: database.h:274
Definition: database.h:678
Definition: database.h:426
Definition: DgnPlatform.h:612
Definition: database.h:621
long bufferLength
Definition: database.h:696
WChar version[32]
Definition: database.h:414
WChar * description
Definition: database.h:519
WChar tableName[MAX_TABLE_LENGTH]
Definition: database.h:526
#define DS_FetchRow
Definition: database.h:200
#define DS_DatabaseProfile
Definition: database.h:189
Definition: database.h:731
Definition: database.h:642
#define MAX_DATE_SEPARATOR_LEN
Definition: database.h:39
size_t length
Definition: database.h:646
#define DS_DebugMode
Definition: database.h:205
WString * stmt
Definition: database.h:247
char name[32]
Definition: database.h:429
long requestType
Definition: database.h:340
short length
Definition: database.h:319
DatabaseProfile databaseProfile
Definition: database.h:657
SetAE setAE
Definition: database.h:672
ServerDescrMessageHdr hdr
Definition: database.h:788
short items
Definition: database.h:783
WChar taskID[TASK_ID_SIZE]
Definition: database.h:355
WChar brandName[32]
Definition: database.h:412
WChar toTableName[MAX_TABLE_LENGTH]
Definition: database.h:600
#define DS_ProcessStatement
Definition: database.h:198
#define DS_RollbackTransaction
Definition: database.h:197
EnvVarRequest envVarRequest
Definition: database.h:766
unsigned short UShort
Definition: Bentley.r.h:133
WChar * sourceTableName
Definition: database.h:275
long cursorID
Definition: database.h:566
XbaseNameRequest xbaseNameRequest
Definition: database.h:767
UInt32 type
Definition: database.h:756
WCharCP whereFieldName
Definition: database.h:263
DataType m_datetimeType
Definition: database.h:448
long requestType
Definition: database.h:317
unsigned char byte
Definition: Bentley.r.h:144
WCharCP whereValue
Definition: database.h:262
Definition: database.h:535
AdditionalRequest additionalRequest
Definition: database.h:668
long requestType
Definition: database.h:305
size_t callocdLength
Definition: database.h:648
WChar * statement
Definition: database.h:542
Definition: database.h:353
WChar keyName[MAX_COLUMN_LENGTH]
Definition: database.h:324
Definition: database.h:569
#define DS_ProcessForm
Definition: database.h:202
uint64_t UInt64
Definition: Bentley.r.h:131
long cursorID
Definition: database.h:560
WChar fileExt[MAXEXTENSIONLENGTH]
Definition: database.h:745
bool passSqlda
Definition: database.h:504
Definition: database.h:477
DataType m_nationalType
Definition: database.h:452
ServiceHeader header
Definition: database.h:680
WChar data[1]
Definition: database.h:691
DataType m_rawType
Definition: database.h:450
Definition: database.h:338
DescribeDatabase describeDatabase
Definition: database.h:659
Definition: database.h:271
#define DS_OpenDatabase
Definition: database.h:190
ServiceHeader header
Definition: database.h:697
LockTable lockTable
Definition: database.h:671
Definition: database.h:258
Definition: database.h:366
long length
Definition: database.h:690
Definition: database.h:686
MS_sqlda * sqldaP
Definition: database.h:306
UInt32 statementLength
Definition: database.h:540
Definition: database.h:603
#define DS_GetErrorInformation
Definition: database.h:203
Definition: database.h:611
long passwordRequired
Definition: database.h:422
long numLines
Definition: database.h:623
DataTypeProfile types
Definition: database.h:498
long min
Definition: database.h:459
FetchRow fetchRow
Definition: database.h:664
long count
Definition: database.h:460
DataType m_rowid
Definition: database.h:453
Definition: database.h:410
long saveAccessString
Definition: database.h:481
WChar * row
Definition: database.h:559
CreateDABuffer createDABuffer
Definition: database.h:673
MdlDesc * mdlFileDescr
Definition: database.h:356
Definition: database.h:714
Definition: database.h:310
WChar dasFormFile[MAXFILELENGTH]
Definition: database.h:624
Definition: database.h:580
WChar * description
Definition: database.h:525
#define DS_SetMsforms
Definition: database.h:210
Definition: database.h:586
long status
Definition: database.h:755
bool zeroMslink
Definition: database.h:267
ExternalPID externalPID
Definition: database.h:768
long requestType
Definition: database.h:282
WCharP result
Definition: database.h:287
DataType m_charType
Definition: database.h:438
Definition: database.h:360
struct mdlDesc MdlDesc
Definition: DgnTool.h:18
#define DS_SetAE
Definition: database.h:208
WChar formName[256]
Definition: database.h:572
WChar msformsTableName[MAX_TABLE_LENGTH]
Definition: database.h:634
#define DS_Terminate
Definition: database.h:192
Definition: database.h:470
FindDBFile findDBFile
Definition: database.h:770
size_t length
Definition: database.h:681
#define DS_LockTable
Definition: database.h:207
SQLProfile sql
Definition: database.h:499
#define MAX_ENV_VAR_LENGTH
Definition: database.h:36
ServerDescrMessageHdr hdr
Definition: database.h:798
long sum
Definition: database.h:461
BrandProfile brand
Definition: database.h:496
DescribeColumn describeColumn
Definition: database.h:661
UInt32 type
Definition: database.h:362
long cursorID
Definition: database.h:683
bool isCallocd
Definition: database.h:647
DataType m_decimalType
Definition: database.h:445
void * pFunction
Definition: database.h:357
Definition: database.h:736
long status
Definition: database.h:644
WChar fileName[MAXFILELENGTH]
Definition: database.h:743
FunctionProfile functions
Definition: database.h:500
union ServerCallBack::@176 u
#define DS_CommitTransaction
Definition: database.h:196
GraphicsProfile graphics
Definition: database.h:503
Definition: database.h:329
WChar arguments[256]
Definition: database.h:571
Definition: MicroStation.r.h:631
UInt32 ProcessID
Definition: basetype.h:126
ServiceHeader header
Definition: database.h:654
long bufferLength
Definition: database.h:688
UInt32 type
Definition: database.h:645
WChar message[512]
Definition: database.h:583
#define DB_FORM_EXT
Definition: database.h:28
Definition: database.h:436
bool isMalloced
Definition: database.h:290
WChar aeTableName[MAX_TABLE_LENGTH]
Definition: database.h:613
WChar * destTableName
Definition: database.h:276
long noStdOut
Definition: database.h:576

Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.