ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/branches/udr/client/FBMessages.pas
(Generate patch)

Comparing ibx/trunk/fbintf/client/FBMessages.pas (file contents):
Revision 60 by tony, Mon Mar 27 15:21:02 2017 UTC vs.
Revision 345 by tony, Mon Aug 23 14:22:29 2021 UTC

# Line 60 | Line 60
60   {                                                                        }
61   {************************************************************************}
62   unit FBMessages;
63 < {$IFDEF MSWINDOWS}
64 < {$DEFINE WINDOWS}
63 > {$IFDEF MSWINDOWS}
64 > {$DEFINE WINDOWS}
65   {$ENDIF}
66  
67   {$IFDEF FPC}
# Line 75 | Line 75 | uses
75    Classes, SysUtils;
76  
77   type
78  TIBDataBaseErrorMessage    = (ShowSQLCode,
79                                  ShowIBMessage,
80                                  ShowSQLMessage);
81
82  TIBDataBaseErrorMessages   = set of TIBDataBaseErrorMessage;
78    TIBClientError            = (
84      ibxeUnknownError,
79        ibxeInterBaseMissing,
86      ibxeInterBaseInstallMissing,
80        ibxeIB60feature,
81        ibxeNotSupported,
82        ibxeNotPermitted,
90      ibxeFileAccessError,
91      ibxeConnectionTimeout,
92      ibxeCannotSetDatabase,
93      ibxeCannotSetTransaction,
94      ibxeOperationCancelled,
95      ibxeDPBConstantNotSupported,
96      ibxeDPBConstantUnknown,
97      ibxeTPBConstantNotSupported,
98      ibxeTPBConstantUnknown,
83        ibxeDatabaseClosed,
100      ibxeDatabaseOpen,
101      ibxeDatabaseNameMissing,
84        ibxeNotInTransaction,
103      ibxeInTransaction,
104      ibxeTimeoutNegative,
105      ibxeNoDatabasesInTransaction,
106      ibxeUpdateWrongDB,
107      ibxeUpdateWrongTR,
108      ibxeDatabaseNotAssigned,
85        ibxeTransactionNotAssigned,
110      ibxeXSQLDAIndexOutOfRange,
111      ibxeXSQLDANameDoesNotExist,
86        ibxeEOF,
87        ibxeBOF,
88        ibxeInvalidStatementHandle,
115      ibxeSQLOpen,
89        ibxeSQLClosed,
117      ibxeDatasetOpen,
118      ibxeDatasetClosed,
90        ibxeUnknownSQLDataType,
91        ibxeInvalidColumnIndex,
121      ibxeInvalidParamColumnIndex,
92        ibxeInvalidDataConversion,
123      ibxeColumnIsNotNullable,
93        ibxeBlobCannotBeRead,
94        ibxeBlobCannotBeWritten,
95        ibxeBlobNotOpen,
96        ibxeEmptyQuery,
128      ibxeCannotOpenNonSQLSelect,
129      ibxeNoFieldAccess,
130      ibxeFieldReadOnly,
97        ibxeFieldNotFound,
132      ibxeNotEditing,
133      ibxeCannotInsert,
134      ibxeCannotPost,
135      ibxeCannotUpdate,
136      ibxeCannotDelete,
137      ibxeCannotRefresh,
138      ibxeBufferNotSet,
139      ibxeCircularReference,
98        ibxeSQLParseError,
141      ibxeUserAbort,
142      ibxeDataSetUniDirectional,
143      ibxeCannotCreateSharedResource,
144      ibxeWindowsAPIError,
145      ibxeColumnListsDontMatch,
146      ibxeColumnTypesDontMatch,
147      ibxeCantEndSharedTransaction,
148      ibxeFieldUnsupportedType,
149      ibxeCircularDataLink,
150      ibxeEmptySQLStatement,
99        ibxeIsASelectStatement,
152      ibxeRequiredParamNotSet,
153      ibxeNoStoredProcName,
100        ibxeIsAExecuteProcedure,
155      ibxeUpdateFailed,
156      ibxeNotCachedUpdates,
157      ibxeNotLiveRequest,
158      ibxeNoProvider,
159      ibxeNoRecordsAffected,
160      ibxeNoTableName,
161      ibxeCannotCreatePrimaryIndex,
162      ibxeCannotDropSystemIndex,
163      ibxeTableNameMismatch,
164      ibxeIndexFieldMissing,
165      ibxeInvalidCancellation,
166      ibxeInvalidEvent,
101        ibxeMaximumEvents,
168      ibxeNoEventsRegistered,
169      ibxeInvalidQueueing,
170      ibxeInvalidRegistration,
171      ibxeInvalidBatchMove,
172      ibxeSQLDialectInvalid,
173      ibxeSPBConstantNotSupported,
174      ibxeSPBConstantUnknown,
102        ibxeServiceActive,
103        ibxeServiceInActive,
104        ibxeServerNameMissing,
178      ibxeQueryParamsError,
179      ibxeStartParamsError,
105        ibxeOutputParsingError,
181      ibxeUseSpecificProcedures,
182      ibxeSQLMonitorAlreadyPresent,
183      ibxeCantPrintValue,
184      ibxeEOFReached,
185      ibxeEOFInComment,
186      ibxeEOFInString,
187      ibxeParamNameExpected,
188      ibxeSuccess,
189      ibxeDelphiException,
190      ibxeNoOptionsSet,
191      ibxeNoDestinationDirectory,
192      ibxeNosourceDirectory,
193      ibxeNoUninstallFile,
194      ibxeOptionNeedsClient,
195      ibxeOptionNeedsServer,
196      ibxeInvalidOption,
197      ibxeInvalidOnErrorResult,
198      ibxeInvalidOnStatusResult,
199      ibxeDPBConstantUnknownEx,
200      ibxeTPBConstantUnknownEx,
201      ibxeSV5APIError,
202      ibxeThreadFailed,
203      ibxeFieldSizeError,
204      ibxeTransactionNotEnding,
205      ibxeDscInfoTokenMissing,
206      ibxeNoLoginDialog,
106        ibxeEmptyAttachmentsList,
208      ibxeFirebirdLibraryLoaded,
209      ibxeInfoBufferIndexError,
107        ibxeInfoBufferTypeError,
211      ibxeInfoBufferOverflow,
108        ibxServiceRequestIndexError,
109        ibxServiceParamTypeError,
110        ibxeOutputBlockIndexError,
# Line 226 | Line 122 | type
122        ibxArrayBoundsCantIncrease ,
123        ibxeStatementNotPrepared,
124        ibxeInterfaceOutofDate,
229      ibxeUnexpectedDatabaseInfoResp,
125        ibxeInvalidBlobMetaData,
126        ibxeNoDPB,
127        ibxeInEventWait,
# Line 234 | Line 129 | type
129        ibxeMissingColumnName,
130        ibxStringTooLong,
131        ibxFieldNotinDataSet,
237      ibxeNotCurrentArray,
132        ibxeNoDefaultCharacterSet,
133        ibxeParamBufferOverflow,
134        ibxeInvalidParamCount,
135        ibxeInvalidVariantType,
242      ibxeServiceRunning,
243      ibxeUniqueRelationReqd,
136        ibxeInterfaceNotSupported,
137        ibxeCharacterSetExists,
138 <      ibxeUnknownUserCharSet
138 >      ibxeUnknownUserCharSet,
139 >      ibxeUninitializedInputParameter,
140 >      ibxeMultiThreadRequired,
141 >      ibxeTokenQueueOverflow,
142 >      ibxeTokenQueueUnderflow,
143 >      ibxErrorParsing,
144 >      ibxeDLInfoError,
145 >      ibxeDifferentAPIs,
146 >      ibxeInvalidDateTimeStr,
147 >      ibxeBadTimeZoneID,
148 >      ibxeBadBCDConversion,
149 >      ibxeBadTimeZoneName,
150 >      ibxeTimeZoneUnknown,
151 >      ibxeBadTimeSpecification,
152 >      ibxeBCDTooBig,
153 >      ibxeInvalidTimeZoneID,
154 >      ibxeBadTimestampOrNoTimeZoneDBEntry,
155 >      ibxeBCDOverflow,
156 >      ibxeNoTimezoneSupport,
157 >      ibxeDecFloatNotSupported,
158 >      ibxeInt128NotSupported,
159 >      ibxeUnknownParamTypeName,
160 >      ibxInvalidQueryAction,
161 >      ibxeSQLTypeUnchangeable,
162 >      ibxeCannotIncreaseMetadatasize,
163 >      ibxeBatchModeNotSupported,
164 >      ibxeNotInBatchMode,
165 >      ibxeInBatchMode,
166 >      ibxeInvalidBatchQuery,
167 >      ibxeBatchRowBufferOverflow,
168 >      ibxeBatchBufferSizeTooBig
169        );
170  
171   function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
172  
173 + {IBError is used internally and by IBX to throw an EIBClientError}
174 +
175 + procedure IBError(ErrMess: TIBClientError; const Args: array of const);
176 +
177   resourcestring
178    { generic strings used in code }
253  SEOFReached = 'SEOFReached';
254  SEOFInComment = 'EOF in comment detected';
255  SEOFInString = 'EOF in string detected';
179    SParamNameExpected = 'Parameter name expected';
257  SCantPrintValue = 'Cannot print value';
258  SSuccess = 'Successful execution';
259  SDisconnectDatabase = 'Database is currently connected. Disconnect and continue?';
260  SCommitTransaction = 'Transaction is currently Active. Rollback and continue?';
180    sSQLErrorSeparator = ' When Executing: ';
262  SNoDataSet = 'No dataset association';
263  SSQLGenSelect = 'Must select at least one key field and one update field';
264  SSQLNotGenerated = 'Update SQL statements not generated, exit anyway?';
265  SSQLDataSetOpen = 'Unable to determine field names for %s';
266  SDefaultTransaction = '%s, Default';
181    SFirebirdAPIFuncNotFound = 'Unable to load Firebird Client Library Function "%s"';
268  SDatabaseFilter = 'Database Files (*.fdb; *.gdb)|*.gdb; *.fdb|All files (*.*)|*.*';
182    STrue = 'true';
183    SFalse = 'false';
184    SArray = '(array)';
185 <  SBlob = '(blob)';
185 >  SBatchCompletionError = 'Error Processing update/insert batch on row number %d - ';
186  
187   implementation
188  
189 < uses IBUtils;
189 > uses IBUtils, IB;
190  
191   resourcestring
192  
193   { strings used in error messages}
281  SUnknownError = 'Unknown error';
194    SInterBaseMissing = 'Firebird library not found in the path. Please install Firebird to use this functionality';
283  SInterBaseInstallMissing = 'InterBase Install DLL ibinstall.dll not found in the path. Please install InterBase 6 to use this functionality';
195    SIB60feature = '%s is an InterBase 6 function. Please upgrade to InterBase 6 to use this functonality';
196    SNotSupported = 'Unsupported feature';
197    SNotPermitted = 'Not permitted';
287  SFileAccessError = 'Temporary file access error';
288  SConnectionTimeout = 'Database connection timed out';
289  SCannotSetDatabase = 'Cannot set database';
290  SCannotSetTransaction = 'Cannot set transaction';
291  SOperationCancelled = 'Operation cancelled at user''s request';
292  SDPBConstantNotSupported = 'DPB Constant (isc_dpb_%s) is unsupported';
293  SDPBConstantUnknown = 'DPB Constant (%d) is unknown';
294  STPBConstantNotSupported = 'TPB Constant (isc_tpb_%s) is unsupported';
295  STPBConstantUnknown = 'TPB Constant (%d) is unknown';
198    SDatabaseClosed = 'Cannot perform operation -- DB is not open';
297  SDatabaseOpen = 'Cannot perform operation -- DB is currently open';
298  SDatabaseNameMissing = 'Database name is missing';
199    SNotInTransaction = 'Transaction is not active';
300  SInTransaction = 'Transaction is active';
301  STimeoutNegative = 'Timeout values cannot be negative';
302  SNoDatabasesInTransaction = 'No databases are listed in transaction component';
303  SUpdateWrongDB = 'Updating wrong database';
304  SUpdateWrongTR = 'Updating wrong transaction. Unique transaction expected in set';
305  SDatabaseNotAssigned = 'Database not assigned';
200    STransactionNotAssigned = 'Transaction not assigned';
307  SXSQLDAIndexOutOfRange = 'XSQLDA index out of range';
308  SXSQLDANameDoesNotExist = 'XSQLDA name does not exist (%s)';
201    SEOF = 'End of file';
202    SBOF = 'Beginning of file';
203    SInvalidStatementHandle = 'Invalid statement handle';
312  SSQLOpen = 'IBSQL Open';
204    SSQLClosed = 'IBSQL Closed';
314  SDatasetOpen = 'Dataset open';
315  SDatasetClosed = 'Dataset closed';
205    SUnknownSQLDataType = 'Unknown SQL Data type (%d)';
206    SInvalidColumnIndex = 'Invalid column index (index exceeds permitted range)';
207 <  SInvalidParamColumnIndex = 'Invalid parameter index (index exceeds permitted range)';
319 <  SInvalidDataConversion = 'Invalid data conversion';
320 <  SColumnIsNotNullable = 'Column cannot be set to null (%s)';
207 >  SInvalidDataConversion = 'Invalid data conversion from %s';
208    SBlobCannotBeRead = 'Blob stream cannot be read';
209    SBlobCannotBeWritten = 'Blob stream cannot be written';
210    SBlobNotOpen = 'The Blob is not open';
211    SEmptyQuery = 'Empty query';
325  SCannotOpenNonSQLSelect = 'Cannot "open" a non-select statement. Use ExecQuery';
326  SNoFieldAccess = 'No access to field "%s"';
327  SFieldReadOnly = 'Field "%s" is read-only';
212    SFieldNotFound = 'Field "%s" not found';
329  SNotEditing = 'Not in edit mode';
330  SCannotInsert = 'Cannot insert into dataset. (No insert query)';
331  SCannotPost = 'Cannot post. (No update/insert query)';
332  SCannotUpdate = 'Cannot update. (No update query)';
333  SCannotDelete = 'Cannot delete from dataset. (No delete query)';
334  SCannotRefresh = 'Cannot refresh row. (No refresh query)';
335  SBufferNotSet = 'Buffer not set';
336  SCircularReference = 'Circular references not permitted';
213    SSQLParseError = 'SQL Parse Error:' + CRLF + CRLF + '%s';
338  SUserAbort = 'User abort';
339  SDataSetUniDirectional = 'Data set is uni-directional';
340  {$IFDEF UNIX}
341  SCannotCreateSharedResource = 'Cannot create shared resource. %s';
342  {$ELSE}
343  SCannotCreateSharedResource = 'Cannot create shared resource. (Windows error %d)';
344  {$ENDIF}
345  SWindowsAPIError = 'Windows API error. (Windows error %d [$%.8x])';
346  SColumnListsDontMatch = 'Column lists do not match';
347  SColumnTypesDontMatch = 'Column types don''t match. (From index: %d; To index: %d)';
348  SCantEndSharedTransaction = 'Can''t end a shared transaction unless it is forced and equal ' +
349                             'to the transaction''s TimeoutAction';
350  SFieldUnsupportedType = 'Unsupported Field Type';
351  SCircularDataLink = 'Circular DataLink Reference';
352  SEmptySQLStatement = 'Empty SQL Statement';
214    SIsASelectStatement = 'use Open for a Select Statement';
354  SRequiredParamNotSet = 'Required parameter "%s" value not set';
355  SNoStoredProcName = 'No Stored Procedure Name assigned';
215    SIsAExecuteProcedure = 'use ExecProc for Procedure; use TQuery for Select procedures';
357  SUpdateFailed = 'Update Failed';
358  SNotCachedUpdates = 'CachedUpdates not enabled';
359  SNotLiveRequest = 'Request is not live - cannot modify';
360  SNoProvider = 'No Provider';
361  SNoRecordsAffected = 'No Records Affected';
362  SNoTableName = 'No Table Name assigned';
363  SCannotCreatePrimaryIndex = 'Cannot Create Primary Index; are created automatically';
364  SCannotDropSystemIndex = 'Cannot Drop System Index';
365  STableNameMismatch = 'Table Name Mismatch';
366  SIndexFieldMissing = 'Index Field Missing';
367  SInvalidCancellation = 'Cannot Cancel events while processing';
368  SInvalidEvent = 'Invalid Event';
216    SMaximumEvents = 'Exceded Maximum Event limits';
370  SNoEventsRegistered = 'No Events Registered';
371  SInvalidQueueing = 'Invalid Queueing';
372  SInvalidRegistration = 'Invalid Registration';
373  SInvalidBatchMove = 'Invalid Batch Move';
374  SSQLDialectInvalid = 'SQL Dialect Invalid';
375  SSPBConstantNotSupported = 'SPB Constant Not supported';
376  SSPBConstantUnknown = 'SPB Constant Unknown';
217    SServiceActive = 'Cannot perform operation -- service is not attached';
218    SServiceInActive = 'Cannot perform operation -- service is attached';
219    SServerNameMissing = 'Server Name Missing';
220 <  SQueryParamsError = 'Query Parameters missing or incorrect';
381 <  SStartParamsError = 'start Parameters missing or incorrect';
382 <  SOutputParsingError = 'Unexpected Output buffer value (%d)';
383 <  SUseSpecificProcedures = 'Generic ServiceStart not applicable: Use Specific Procedures to set configuration params';
384 <  SSQLMonitorAlreadyPresent = 'SQL Monitor Instance is already present';
385 <  SDelphiException = 'DelphiException %s';
386 <  SNoOptionsSet = 'No Install Options selected';
387 <  SNoDestinationDirectory = 'DestinationDirectory is not set';
388 <  SNosourceDirectory = 'SourceDirectory is not set';
389 <  SNoUninstallFile = 'Uninstall File Name is not set';
390 <  SOptionNeedsClient = '%s component requires Client to function properly';
391 <  SOptionNeedsServer = '%s component requires Server to function properly';
392 <  SInvalidOption = 'Invalid option specified';
393 <  SInvalidOnErrorResult = 'Unexpected onError return value';
394 <  SInvalidOnStatusResult = 'Unexpected onStatus return value';
395 <
396 <  SDPBConstantUnknownEx = 'DPB Constant (%s) is unknown';
397 <  STPBConstantUnknownEx = 'TPB Constant (%s) is unknown';
398 <  SSV5APIError = 'SV5 API API Error - %s';
399 <  SThreadFailed = '%s Thread failed with Exception: %s';
400 <  sFieldSizeError = 'Field %s is too small to receive the data';
401 <  STransactionNotEnding = 'Transaction is not being completed';
402 <  SDscInfoTokenMissing = '%s token not found';
403 <  SNoLoginDialog = 'Default Login Dlalog not found. Have you included ibexpress ' +
404 <                   'in your program uses list?';
220 >  SOutputParsingError = 'Unexpected Output buffer value (%d) - %s';
221    SEmptyAttachmentsList = 'The list of database attachments cannot be empty';
406  SFirebirdLibraryLoaded = 'The Firebird Library is already loaded';
407  SInfoBufferIndexError = 'Info Buffer Index Out of Range (%d)';
222    SInfoBufferTypeError = 'Invalid operation for Info Buffer Type (%d)';
409  SInfoBufferOverflow = 'Info Buffer overlow';
223    SServiceRequestIndexError = 'Service Request Index Out of Range (%d)';
224    SServiceParamTypeError = 'Invalid Request for Service Param Type';
225    SOutputBlockIndexError = 'Output Block Index Out of Range (%d)';
# Line 424 | Line 237 | resourcestring
237    SArrayBoundsCantIncrease = 'Array Bounds can only be narrowed';
238    SStatementNotPrepared = 'The Statement has not been prepared';
239    SInterfaceOutofDate = 'This interface is no longer up-to-date';
427  SUnexpectedDatabaseInfoResp = 'Unexpected Database Information Response';
240    SInvalidBlobMetaData = 'Unable to Access Blob Meta Data';
241    SNoDPB = 'A DPB must be provided';
242    SInEventWait = 'Already in Event Wait State';
# Line 432 | Line 244 | resourcestring
244    SMissingColumnName = 'Relation or Column Name Missing';
245    SStringTooLong = 'String "%s" is too long. Max %d characters';
246    SFieldNotinDataSet = 'Field %s is not a member of DataSet %s';
435  SNotCurrentArray = 'Cannot Edit an Array that is not part of the current record';
247    SNoDefaultCharacterSet = 'A connection default character set is required to perform this operation';
248    SParamBufferOverflow = 'Parameter Buffer Overflow';
249    SInvalidParamCount = 'Invalid Parameter Count. %d expected, %d found';
250    SInvalidVariantType = 'Invalid variant type';
440  SServiceRunning = 'Cannot start a new service while an existing service is running';
441  SUniqueRelationReqd = 'All Output Fields must derived from the same table';
251    SInterfaceNotSupported = 'Interface not supported; Guid %s not found';
252    SCharacterSetExists = 'Character set "%s" is already defined';
253    SUnknownUserCharSet = 'Unknown user character set "%s"';
254 +  SUninitializedInputParameter = 'SQL Param No. %d (%s) is uninitialised';
255 +  SMultiThreadRequired = 'Multi-threading required for %s but not enabled. Please recompile with multi-threading support enabled. '+
256 +                         'Hint: you probably need to add -dUseCThreads to the Custom Options.';
257 +  STokenQueueOverflow = 'Error in SQL Token Analyser - token queue overflow';
258 +  STokenQueueUnderflow = 'Error in SQL Token Analyser - token queue underflow';
259 +  SErrorParsing = 'Error parsing SQL Statement at clause starting with %s';
260 +  SDLInfoError = 'dlinfo returned error - %s';
261 +  SDifferentAPIs = 'All transaction attachments must use the same Firebird Library';
262 +  SInvalidDateTimeStr = '%s is not a valid Date/Time string';
263 +  SBadTimeZoneID = 'Invalid Time Zone ID (%d,%d)';
264 +  SBadBCDConversion = 'Conversion to BCD failed';
265 +  SBadTimeZoneName = 'Invalid Time Zone Name "%s"';
266 +  STimeZoneUnknown = 'Time Zone Unknown';
267 +  SBadTimeSpecification = '%d:%d:%d.%d is not a valid time specification';
268 +  SBCDTooBig = 'BCD Precision (%d) is too large for Firebird Data Type max precision (%d)';
269 +  SInvalidTimeZoneID = 'Invalid Time Zone ID (%d)';
270 +  SBadTimestampOrNoTimeZoneDBEntry = 'Bad Timestamp or missing time zone DB entry (%s) TZ ID = %d';
271 +  SBCDOverflow = 'BCD Precision too large for Firebird data type,[%s]';
272 +  SNoTimezoneSupport = 'TIME/TIMESTAMP WITH TIME ZONE data type not supported';
273 +  SDecFloatNotSupported = 'DecFloat Data Type not supported';
274 +  SInt128NotSupported = 'INT128 Data Type not supported';
275 +  SUnknownParamTypeName = '%s:Unknown Param Type Name "%s"';
276 +  SInvalidQueryAction = 'Query Action only valid for an Update or Insert Query';
277 +  SSQLTypeUnchangeable = 'Cannot change SQL Type from %s to %s';
278 +  SCannotIncreaseMetadatasize = 'Cannot increase Metadata size from %d to %d';
279 +  SBatchModeNotSupported = 'Batch Mode is not available. Firebird 4 or later client and server is required';
280 +  SNotInBatchMode = 'Not in Batch Mode - have you called AddToBatch?';
281 +  SInBatchMode = 'Invalid Operation: a Batch is pending';
282 +  SInvalidBatchQuery = 'This query type (%s) cannot be batched';
283 +  SBatchRowBufferOverflow = 'Adding Row No. %d - batch buffer size limit (%d bytes) exceeded';
284 +  SBatchBufferSizeTooBig = 'Requested Batch Buffer Size (%d bytes) exceeds 256MB limit';
285  
286   const
287    IBErrorMessages: array[TIBClientError] of string = (
448    SUnknownError,
288      SInterBaseMissing,
450    SInterBaseInstallMissing,
289      SIB60feature,
290      SNotSupported,
291      SNotPermitted,
454    SFileAccessError,
455    SConnectionTimeout,
456    SCannotSetDatabase,
457    SCannotSetTransaction,
458    SOperationCancelled,
459    SDPBConstantNotSupported,
460    SDPBConstantUnknown,
461    STPBConstantNotSupported,
462    STPBConstantUnknown,
292      SDatabaseClosed,
464    SDatabaseOpen,
465    SDatabaseNameMissing,
293      SNotInTransaction,
467    SInTransaction,
468    STimeoutNegative,
469    SNoDatabasesInTransaction,
470    SUpdateWrongDB,
471    SUpdateWrongTR,
472    SDatabaseNotAssigned,
294      STransactionNotAssigned,
474    SXSQLDAIndexOutOfRange,
475    SXSQLDANameDoesNotExist,
295      SEOF,
296      SBOF,
297      SInvalidStatementHandle,
479    SSQLOpen,
298      SSQLClosed,
481    SDatasetOpen,
482    SDatasetClosed,
299      SUnknownSQLDataType,
300      SInvalidColumnIndex,
485    SInvalidParamColumnIndex,
301      SInvalidDataConversion,
487    SColumnIsNotNullable,
302      SBlobCannotBeRead,
303      SBlobCannotBeWritten,
304      SBlobNotOpen,
305      SEmptyQuery,
492    SCannotOpenNonSQLSelect,
493    SNoFieldAccess,
494    SFieldReadOnly,
306      SFieldNotFound,
496    SNotEditing,
497    SCannotInsert,
498    SCannotPost,
499    SCannotUpdate,
500    SCannotDelete,
501    SCannotRefresh,
502    SBufferNotSet,
503    SCircularReference,
307      SSQLParseError,
505    SUserAbort,
506    SDataSetUniDirectional,
507    SCannotCreateSharedResource,
508    SWindowsAPIError,
509    SColumnListsDontMatch,
510    SColumnTypesDontMatch,
511    SCantEndSharedTransaction,
512    SFieldUnsupportedType,
513    SCircularDataLink,
514    SEmptySQLStatement,
308      SIsASelectStatement,
516    SRequiredParamNotSet,
517    SNoStoredProcName,
309      SIsAExecuteProcedure,
519    SUpdateFailed,
520    SNotCachedUpdates,
521    SNotLiveRequest,
522    SNoProvider,
523    SNoRecordsAffected,
524    SNoTableName,
525    SCannotCreatePrimaryIndex,
526    SCannotDropSystemIndex,
527    STableNameMismatch,
528    SIndexFieldMissing,
529    SInvalidCancellation,
530    SInvalidEvent,
310      SMaximumEvents,
532    SNoEventsRegistered,
533    SInvalidQueueing,
534    SInvalidRegistration,
535    SInvalidBatchMove,
536    SSQLDialectInvalid,
537    SSPBConstantNotSupported,
538    SSPBConstantUnknown,
311      SServiceActive,
312      SServiceInActive,
313      SServerNameMissing,
542    SQueryParamsError,
543    SStartParamsError,
314      SOutputParsingError,
545    SUseSpecificProcedures,
546    SSQLMonitorAlreadyPresent,
547    SCantPrintValue,
548    SEOFReached,
549    SEOFInComment,
550    SEOFInString,
551    SParamNameExpected,
552    SSuccess,
553    SDelphiException,
554    SNoOptionsSet,
555    SNoDestinationDirectory,
556    SNosourceDirectory,
557    SNoUninstallFile,
558    SOptionNeedsClient,
559    SOptionNeedsServer,
560    SInvalidOption,
561    SInvalidOnErrorResult,
562    SInvalidOnStatusResult,
563    SDPBConstantUnknownEx,
564    STPBConstantUnknownEx,
565    SSV5APIError,
566    SThreadFailed,
567    SFieldSizeError,
568    STransactionNotEnding,
569    SDscInfoTokenMissing,
570    SNoLoginDialog,
315      SEmptyAttachmentsList,
572    SFirebirdLibraryLoaded,
573    SInfoBufferIndexError,
316      SInfoBufferTypeError,
575    SInfoBufferOverflow,
317      SServiceRequestIndexError,
318      SServiceParamTypeError,
319      SOutputBlockIndexError,
# Line 590 | Line 331 | const
331      SArrayBoundsCantIncrease,
332      SStatementNotPrepared,
333      SInterfaceOutofDate,
593    SUnexpectedDatabaseInfoResp,
334      SInvalidBlobMetaData,
335      SNoDPB,
336      SInEventWait,
# Line 598 | Line 338 | const
338      SMissingColumnName,
339      SStringTooLong,
340      SFieldNotinDataSet,
601    SNotCurrentArray,
341      SNoDefaultCharacterSet,
342      SParamBufferOverflow,
343      SInvalidParamCount,
344      SInvalidVariantType,
606    SServiceRunning,
607    SUniqueRelationReqd,
345      SInterfaceNotSupported,
346      SCharacterSetExists,
347 <    SUnknownUserCharSet
347 >    SUnknownUserCharSet,
348 >    SUninitializedInputParameter,
349 >    SMultiThreadRequired,
350 >    STokenQueueOverflow,
351 >    STokenQueueUnderflow,
352 >    SErrorParsing,
353 >    SDLInfoError,
354 >    SDifferentAPIs,
355 >    SInvalidDateTimeStr,
356 >    SBadTimeZoneID,
357 >    SBadBCDConversion,
358 >    SBadTimeZoneName,
359 >    STimeZoneUnknown,
360 >    SBadTimeSpecification,
361 >    SBCDTooBig,
362 >    SInvalidTimeZoneID,
363 >    SBadTimestampOrNoTimeZoneDBEntry,
364 >    SBCDOverflow,
365 >    SNoTimezoneSupport,
366 >    SDecFloatNotSupported,
367 >    SInt128NotSupported,
368 >    SUnknownParamTypeName,
369 >    SInvalidQueryAction,
370 >    SSQLTypeUnchangeable,
371 >    SCannotIncreaseMetadatasize,
372 >    SBatchModeNotSupported,
373 >    SNotInBatchMode,
374 >    SInBatchMode,
375 >    SInvalidBatchQuery,
376 >    SBatchRowBufferOverflow,
377 >    SBatchBufferSizeTooBig
378    );
379  
380   function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
# Line 615 | Line 382 | begin
382    Result := IBErrorMessages[ErrMess];
383   end;
384  
385 + procedure IBError(ErrMess: TIBClientError; const Args: array of const);
386 + begin
387 +  raise EIBClientError.Create(Ord(ErrMess),
388 +                              Format(GetErrorMessage(ErrMess), Args));
389 + end;
390 +
391 +
392   end.
393  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines