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

Comparing ibx/trunk/fbintf/client/FBMessages.pas (file contents):
Revision 47 by tony, Mon Jan 9 15:31:51 2017 UTC vs.
Revision 291 by tony, Fri Apr 17 10:26:08 2020 UTC

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines