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 143 by tony, Fri Feb 23 12:11:21 2018 UTC vs.
Revision 315 by tony, Thu Feb 25 11:56:36 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,
139        ibxeUninitializedInputParameter,
140 <      ibxeNegativeGenerator,
141 <      ibxeServiceUnavailable
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        );
161  
162   function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
163  
164 + {IBError is used internally and by IBX to throw an EIBClientError}
165 +
166 + procedure IBError(ErrMess: TIBClientError; const Args: array of const);
167 +
168   resourcestring
169    { generic strings used in code }
256  SEOFReached = 'SEOFReached';
257  SEOFInComment = 'EOF in comment detected';
258  SEOFInString = 'EOF in string detected';
170    SParamNameExpected = 'Parameter name expected';
260  SCantPrintValue = 'Cannot print value';
261  SSuccess = 'Successful execution';
262  SDisconnectDatabase = 'Database is currently connected. Disconnect and continue?';
263  SCommitTransaction = 'Transaction is currently Active. Rollback and continue?';
171    sSQLErrorSeparator = ' When Executing: ';
265  SNoDataSet = 'No dataset association';
266  SSQLGenSelect = 'Must select at least one key field and one update field';
267  SSQLNotGenerated = 'Update SQL statements not generated, exit anyway?';
268  SSQLDataSetOpen = 'Unable to determine field names for %s';
269  SDefaultTransaction = '%s, Default';
172    SFirebirdAPIFuncNotFound = 'Unable to load Firebird Client Library Function "%s"';
271  SDatabaseFilter = 'Database Files (*.fdb; *.gdb)|*.gdb; *.fdb|All files (*.*)|*.*';
173    STrue = 'true';
174    SFalse = 'false';
175    SArray = '(array)';
275  SBlob = '(blob)';
176  
177   implementation
178  
179 < uses IBUtils;
179 > uses IBUtils, IB;
180  
181   resourcestring
182  
183   { strings used in error messages}
284  SUnknownError = 'Unknown error';
184    SInterBaseMissing = 'Firebird library not found in the path. Please install Firebird to use this functionality';
286  SInterBaseInstallMissing = 'InterBase Install DLL ibinstall.dll not found in the path. Please install InterBase 6 to use this functionality';
185    SIB60feature = '%s is an InterBase 6 function. Please upgrade to InterBase 6 to use this functonality';
186    SNotSupported = 'Unsupported feature';
187    SNotPermitted = 'Not permitted';
290  SFileAccessError = 'Temporary file access error';
291  SConnectionTimeout = 'Database connection timed out';
292  SCannotSetDatabase = 'Cannot set database';
293  SCannotSetTransaction = 'Cannot set transaction';
294  SOperationCancelled = 'Operation cancelled at user''s request';
295  SDPBConstantNotSupported = 'DPB Constant (isc_dpb_%s) is unsupported';
296  SDPBConstantUnknown = 'DPB Constant (%d) is unknown';
297  STPBConstantNotSupported = 'TPB Constant (isc_tpb_%s) is unsupported';
298  STPBConstantUnknown = 'TPB Constant (%d) is unknown';
188    SDatabaseClosed = 'Cannot perform operation -- DB is not open';
300  SDatabaseOpen = 'Cannot perform operation -- DB is currently open';
301  SDatabaseNameMissing = 'Database name is missing';
189    SNotInTransaction = 'Transaction is not active';
303  SInTransaction = 'Transaction is active';
304  STimeoutNegative = 'Timeout values cannot be negative';
305  SNoDatabasesInTransaction = 'No databases are listed in transaction component';
306  SUpdateWrongDB = 'Updating wrong database';
307  SUpdateWrongTR = 'Updating wrong transaction. Unique transaction expected in set';
308  SDatabaseNotAssigned = 'Database not assigned';
190    STransactionNotAssigned = 'Transaction not assigned';
310  SXSQLDAIndexOutOfRange = 'XSQLDA index out of range';
311  SXSQLDANameDoesNotExist = 'XSQLDA name does not exist (%s)';
191    SEOF = 'End of file';
192    SBOF = 'Beginning of file';
193    SInvalidStatementHandle = 'Invalid statement handle';
315  SSQLOpen = 'IBSQL Open';
194    SSQLClosed = 'IBSQL Closed';
317  SDatasetOpen = 'Dataset open';
318  SDatasetClosed = 'Dataset closed';
195    SUnknownSQLDataType = 'Unknown SQL Data type (%d)';
196    SInvalidColumnIndex = 'Invalid column index (index exceeds permitted range)';
197 <  SInvalidParamColumnIndex = 'Invalid parameter index (index exceeds permitted range)';
322 <  SInvalidDataConversion = 'Invalid data conversion';
323 <  SColumnIsNotNullable = 'Column cannot be set to null (%s)';
197 >  SInvalidDataConversion = 'Invalid data conversion from %s';
198    SBlobCannotBeRead = 'Blob stream cannot be read';
199    SBlobCannotBeWritten = 'Blob stream cannot be written';
200    SBlobNotOpen = 'The Blob is not open';
201    SEmptyQuery = 'Empty query';
328  SCannotOpenNonSQLSelect = 'Cannot "open" a non-select statement. Use ExecQuery';
329  SNoFieldAccess = 'No access to field "%s"';
330  SFieldReadOnly = 'Field "%s" is read-only';
202    SFieldNotFound = 'Field "%s" not found';
332  SNotEditing = 'Not in edit mode';
333  SCannotInsert = 'Cannot insert into dataset. (No insert query)';
334  SCannotPost = 'Cannot post. (No update/insert query)';
335  SCannotUpdate = 'Cannot update. (No update query)';
336  SCannotDelete = 'Cannot delete from dataset. (No delete query)';
337  SCannotRefresh = 'Cannot refresh row. (No refresh query)';
338  SBufferNotSet = 'Buffer not set';
339  SCircularReference = 'Circular references not permitted';
203    SSQLParseError = 'SQL Parse Error:' + CRLF + CRLF + '%s';
341  SUserAbort = 'User abort';
342  SDataSetUniDirectional = 'Data set is uni-directional';
343  {$IFDEF UNIX}
344  SCannotCreateSharedResource = 'Cannot create shared resource. %s';
345  {$ELSE}
346  SCannotCreateSharedResource = 'Cannot create shared resource. (Windows error %d)';
347  {$ENDIF}
348  SWindowsAPIError = 'Windows API error. (Windows error %d [$%.8x])';
349  SColumnListsDontMatch = 'Column lists do not match';
350  SColumnTypesDontMatch = 'Column types don''t match. (From index: %d; To index: %d)';
351  SCantEndSharedTransaction = 'Can''t end a shared transaction unless it is forced and equal ' +
352                             'to the transaction''s TimeoutAction';
353  SFieldUnsupportedType = 'Unsupported Field Type';
354  SCircularDataLink = 'Circular DataLink Reference';
355  SEmptySQLStatement = 'Empty SQL Statement';
204    SIsASelectStatement = 'use Open for a Select Statement';
357  SRequiredParamNotSet = 'Required parameter "%s" value not set';
358  SNoStoredProcName = 'No Stored Procedure Name assigned';
205    SIsAExecuteProcedure = 'use ExecProc for Procedure; use TQuery for Select procedures';
360  SUpdateFailed = 'Update Failed';
361  SNotCachedUpdates = 'CachedUpdates not enabled';
362  SNotLiveRequest = 'Request is not live - cannot modify';
363  SNoProvider = 'No Provider';
364  SNoRecordsAffected = 'No Records Affected';
365  SNoTableName = 'No Table Name assigned';
366  SCannotCreatePrimaryIndex = 'Cannot Create Primary Index; are created automatically';
367  SCannotDropSystemIndex = 'Cannot Drop System Index';
368  STableNameMismatch = 'Table Name Mismatch';
369  SIndexFieldMissing = 'Index Field Missing';
370  SInvalidCancellation = 'Cannot Cancel events while processing';
371  SInvalidEvent = 'Invalid Event';
206    SMaximumEvents = 'Exceded Maximum Event limits';
373  SNoEventsRegistered = 'No Events Registered';
374  SInvalidQueueing = 'Invalid Queueing';
375  SInvalidRegistration = 'Invalid Registration';
376  SInvalidBatchMove = 'Invalid Batch Move';
377  SSQLDialectInvalid = 'SQL Dialect Invalid';
378  SSPBConstantNotSupported = 'SPB Constant Not supported';
379  SSPBConstantUnknown = 'SPB Constant Unknown';
207    SServiceActive = 'Cannot perform operation -- service is not attached';
208    SServiceInActive = 'Cannot perform operation -- service is attached';
209    SServerNameMissing = 'Server Name Missing';
210 <  SQueryParamsError = 'Query Parameters missing or incorrect';
384 <  SStartParamsError = 'start Parameters missing or incorrect';
385 <  SOutputParsingError = 'Unexpected Output buffer value (%d)';
386 <  SUseSpecificProcedures = 'Generic ServiceStart not applicable: Use Specific Procedures to set configuration params';
387 <  SSQLMonitorAlreadyPresent = 'SQL Monitor Instance is already present';
388 <  SDelphiException = 'DelphiException %s';
389 <  SNoOptionsSet = 'No Install Options selected';
390 <  SNoDestinationDirectory = 'DestinationDirectory is not set';
391 <  SNosourceDirectory = 'SourceDirectory is not set';
392 <  SNoUninstallFile = 'Uninstall File Name is not set';
393 <  SOptionNeedsClient = '%s component requires Client to function properly';
394 <  SOptionNeedsServer = '%s component requires Server to function properly';
395 <  SInvalidOption = 'Invalid option specified';
396 <  SInvalidOnErrorResult = 'Unexpected onError return value';
397 <  SInvalidOnStatusResult = 'Unexpected onStatus return value';
398 <
399 <  SDPBConstantUnknownEx = 'DPB Constant (%s) is unknown';
400 <  STPBConstantUnknownEx = 'TPB Constant (%s) is unknown';
401 <  SSV5APIError = 'SV5 API API Error - %s';
402 <  SThreadFailed = '%s Thread failed with Exception: %s';
403 <  sFieldSizeError = 'Field %s is too small to receive the data';
404 <  STransactionNotEnding = 'Transaction is not being completed';
405 <  SDscInfoTokenMissing = '%s token not found';
406 <  SNoLoginDialog = 'Default Login Dlalog not found. Have you included ibexpress ' +
407 <                   'in your program uses list?';
210 >  SOutputParsingError = 'Unexpected Output buffer value (%d) - %s';
211    SEmptyAttachmentsList = 'The list of database attachments cannot be empty';
409  SFirebirdLibraryLoaded = 'The Firebird Library is already loaded';
410  SInfoBufferIndexError = 'Info Buffer Index Out of Range (%d)';
212    SInfoBufferTypeError = 'Invalid operation for Info Buffer Type (%d)';
412  SInfoBufferOverflow = 'Info Buffer overlow';
213    SServiceRequestIndexError = 'Service Request Index Out of Range (%d)';
214    SServiceParamTypeError = 'Invalid Request for Service Param Type';
215    SOutputBlockIndexError = 'Output Block Index Out of Range (%d)';
# Line 427 | Line 227 | resourcestring
227    SArrayBoundsCantIncrease = 'Array Bounds can only be narrowed';
228    SStatementNotPrepared = 'The Statement has not been prepared';
229    SInterfaceOutofDate = 'This interface is no longer up-to-date';
430  SUnexpectedDatabaseInfoResp = 'Unexpected Database Information Response';
230    SInvalidBlobMetaData = 'Unable to Access Blob Meta Data';
231    SNoDPB = 'A DPB must be provided';
232    SInEventWait = 'Already in Event Wait State';
# Line 435 | Line 234 | resourcestring
234    SMissingColumnName = 'Relation or Column Name Missing';
235    SStringTooLong = 'String "%s" is too long. Max %d characters';
236    SFieldNotinDataSet = 'Field %s is not a member of DataSet %s';
438  SNotCurrentArray = 'Cannot Edit an Array that is not part of the current record';
237    SNoDefaultCharacterSet = 'A connection default character set is required to perform this operation';
238    SParamBufferOverflow = 'Parameter Buffer Overflow';
239    SInvalidParamCount = 'Invalid Parameter Count. %d expected, %d found';
240    SInvalidVariantType = 'Invalid variant type';
443  SServiceRunning = 'Cannot start a new service while an existing service is running';
444  SUniqueRelationReqd = 'All Output Fields must derived from the same table';
241    SInterfaceNotSupported = 'Interface not supported; Guid %s not found';
242    SCharacterSetExists = 'Character set "%s" is already defined';
243    SUnknownUserCharSet = 'Unknown user character set "%s"';
244    SUninitializedInputParameter = 'SQL Param No. %d (%s) is uninitialised';
245 <  SNegativeGenerator = 'A Generator Increment cannot be negative';
246 <  SServiceUnavailable = 'Request Service is not available';
245 >  SMultiThreadRequired = 'Multi-threading required for %s but not enabled. Please recompile with multi-threading support enabled. '+
246 >                         'Hint: you probably need to add -dUseCThreads to the Custom Options.';
247 >  STokenQueueOverflow = 'Error in SQL Token Analyser - token queue overflow';
248 >  STokenQueueUnderflow = 'Error in SQL Token Analyser - token queue underflow';
249 >  SErrorParsing = 'Error parsing SQL Statement at clause starting with %s';
250 >  SDLInfoError = 'dlinfo returned error - %s';
251 >  SDifferentAPIs = 'All transaction attachments must use the same Firebird Library';
252 >  SInvalidDateTimeStr = '%s is not a valid Date/Time string';
253 >  SBadTimeZoneID = 'Invalid Time Zone ID (%d,%d)';
254 >  SBadBCDConversion = 'Conversion to BCD failed';
255 >  SBadTimeZoneName = 'Invalid Time Zone Name "%s"';
256 >  STimeZoneUnknown = 'Time Zone Unknown';
257 >  SBadTimeSpecification = '%d:%d:%d.%d is not a valid time specification';
258 >  SBCDTooBig = 'BCD Precision (%d) is too large for Firebird Data Type max precision (%d)';
259 >  SInvalidTimeZoneID = 'Invalid Time Zone ID (%d)';
260 >  SBadTimestampOrNoTimeZoneDBEntry = 'Bad Timestamp or missing time zone DB entry (%s) TZ ID = %d';
261 >  SBCDOverflow = 'BCD Precision too large for Firebird data type,[%s]';
262 >  SNoTimezoneSupport = 'TIME/TIMESTAMP WITH TIME ZONE data type not supported';
263 >  SDecFloatNotSupported = 'DecFloat Data Type not supported';
264 >  SInt128NotSupported = 'INT128 Data Type not supported';
265 >  SUnknownParamTypeName = '%s:Unknown Param Type Name "%s"';
266  
267   const
268    IBErrorMessages: array[TIBClientError] of string = (
454    SUnknownError,
269      SInterBaseMissing,
456    SInterBaseInstallMissing,
270      SIB60feature,
271      SNotSupported,
272      SNotPermitted,
460    SFileAccessError,
461    SConnectionTimeout,
462    SCannotSetDatabase,
463    SCannotSetTransaction,
464    SOperationCancelled,
465    SDPBConstantNotSupported,
466    SDPBConstantUnknown,
467    STPBConstantNotSupported,
468    STPBConstantUnknown,
273      SDatabaseClosed,
470    SDatabaseOpen,
471    SDatabaseNameMissing,
274      SNotInTransaction,
473    SInTransaction,
474    STimeoutNegative,
475    SNoDatabasesInTransaction,
476    SUpdateWrongDB,
477    SUpdateWrongTR,
478    SDatabaseNotAssigned,
275      STransactionNotAssigned,
480    SXSQLDAIndexOutOfRange,
481    SXSQLDANameDoesNotExist,
276      SEOF,
277      SBOF,
278      SInvalidStatementHandle,
485    SSQLOpen,
279      SSQLClosed,
487    SDatasetOpen,
488    SDatasetClosed,
280      SUnknownSQLDataType,
281      SInvalidColumnIndex,
491    SInvalidParamColumnIndex,
282      SInvalidDataConversion,
493    SColumnIsNotNullable,
283      SBlobCannotBeRead,
284      SBlobCannotBeWritten,
285      SBlobNotOpen,
286      SEmptyQuery,
498    SCannotOpenNonSQLSelect,
499    SNoFieldAccess,
500    SFieldReadOnly,
287      SFieldNotFound,
502    SNotEditing,
503    SCannotInsert,
504    SCannotPost,
505    SCannotUpdate,
506    SCannotDelete,
507    SCannotRefresh,
508    SBufferNotSet,
509    SCircularReference,
288      SSQLParseError,
511    SUserAbort,
512    SDataSetUniDirectional,
513    SCannotCreateSharedResource,
514    SWindowsAPIError,
515    SColumnListsDontMatch,
516    SColumnTypesDontMatch,
517    SCantEndSharedTransaction,
518    SFieldUnsupportedType,
519    SCircularDataLink,
520    SEmptySQLStatement,
289      SIsASelectStatement,
522    SRequiredParamNotSet,
523    SNoStoredProcName,
290      SIsAExecuteProcedure,
525    SUpdateFailed,
526    SNotCachedUpdates,
527    SNotLiveRequest,
528    SNoProvider,
529    SNoRecordsAffected,
530    SNoTableName,
531    SCannotCreatePrimaryIndex,
532    SCannotDropSystemIndex,
533    STableNameMismatch,
534    SIndexFieldMissing,
535    SInvalidCancellation,
536    SInvalidEvent,
291      SMaximumEvents,
538    SNoEventsRegistered,
539    SInvalidQueueing,
540    SInvalidRegistration,
541    SInvalidBatchMove,
542    SSQLDialectInvalid,
543    SSPBConstantNotSupported,
544    SSPBConstantUnknown,
292      SServiceActive,
293      SServiceInActive,
294      SServerNameMissing,
548    SQueryParamsError,
549    SStartParamsError,
295      SOutputParsingError,
551    SUseSpecificProcedures,
552    SSQLMonitorAlreadyPresent,
553    SCantPrintValue,
554    SEOFReached,
555    SEOFInComment,
556    SEOFInString,
557    SParamNameExpected,
558    SSuccess,
559    SDelphiException,
560    SNoOptionsSet,
561    SNoDestinationDirectory,
562    SNosourceDirectory,
563    SNoUninstallFile,
564    SOptionNeedsClient,
565    SOptionNeedsServer,
566    SInvalidOption,
567    SInvalidOnErrorResult,
568    SInvalidOnStatusResult,
569    SDPBConstantUnknownEx,
570    STPBConstantUnknownEx,
571    SSV5APIError,
572    SThreadFailed,
573    SFieldSizeError,
574    STransactionNotEnding,
575    SDscInfoTokenMissing,
576    SNoLoginDialog,
296      SEmptyAttachmentsList,
578    SFirebirdLibraryLoaded,
579    SInfoBufferIndexError,
297      SInfoBufferTypeError,
581    SInfoBufferOverflow,
298      SServiceRequestIndexError,
299      SServiceParamTypeError,
300      SOutputBlockIndexError,
# Line 596 | Line 312 | const
312      SArrayBoundsCantIncrease,
313      SStatementNotPrepared,
314      SInterfaceOutofDate,
599    SUnexpectedDatabaseInfoResp,
315      SInvalidBlobMetaData,
316      SNoDPB,
317      SInEventWait,
# Line 604 | Line 319 | const
319      SMissingColumnName,
320      SStringTooLong,
321      SFieldNotinDataSet,
607    SNotCurrentArray,
322      SNoDefaultCharacterSet,
323      SParamBufferOverflow,
324      SInvalidParamCount,
325      SInvalidVariantType,
612    SServiceRunning,
613    SUniqueRelationReqd,
326      SInterfaceNotSupported,
327      SCharacterSetExists,
328      SUnknownUserCharSet,
329      SUninitializedInputParameter,
330 <    SNegativeGenerator,
331 <    SServiceUnavailable
330 >    SMultiThreadRequired,
331 >    STokenQueueOverflow,
332 >    STokenQueueUnderflow,
333 >    SErrorParsing,
334 >    SDLInfoError,
335 >    SDifferentAPIs,
336 >    SInvalidDateTimeStr,
337 >    SBadTimeZoneID,
338 >    SBadBCDConversion,
339 >    SBadTimeZoneName,
340 >    STimeZoneUnknown,
341 >    SBadTimeSpecification,
342 >    SBCDTooBig,
343 >    SInvalidTimeZoneID,
344 >    SBadTimestampOrNoTimeZoneDBEntry,
345 >    SBCDOverflow,
346 >    SNoTimezoneSupport,
347 >    SDecFloatNotSupported,
348 >    SInt128NotSupported,
349 >    SUnknownParamTypeName
350    );
351  
352   function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
# Line 624 | Line 354 | begin
354    Result := IBErrorMessages[ErrMess];
355   end;
356  
357 + procedure IBError(ErrMess: TIBClientError; const Args: array of const);
358 + begin
359 +  raise EIBClientError.Create(Ord(ErrMess),
360 +                              Format(GetErrorMessage(ErrMess), Args));
361 + end;
362 +
363   end.
364  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines