Notification messages about object states





An object can use the IErrorLog interface for generating user notifications. It is a standard COM interface, the description of the AddError() method is provided here only for convenience. New notifications are processed at run time (if they are queued asynchronously), on returning from the Init() method, and on returning from add-in methods. All messages are queued and processed in the order they were added. The number of stored messages is not limited.

AddError

Description:

Adds a notification message from a 1C:Enterprise script extension method.

Possible message codes:

#define ADDIN_E_NONE              1000

#define ADDIN_E_ORDINARY          1001

#define ADDIN_E_ATTENTION         1002

#define ADDIN_E_IMPORTANT         1003

#define ADDIN_E_VERY_IMPORTANT    1004

#define ADDIN_E_INFO              1005

#define ADDIN_E_FAIL              1006

#define ADDIN_E_MSGBOX_ATTENTION  1007

#define ADDIN_E_MSGBOX_INFO       1008

#define ADDIN_E_MSGBOX_FAIL       1009

The message code is stored to the wCode field of the EXEPINFO structure. Error codes in range 1000 - 2000 are reserved.

During the notification processing, warning dialog boxes are displayed for notifications with the following codes: ADDIN_E_MSGBOX_ATTENTION, ADDIN_E_MSGBOX_INFO, and ADDIN_E_MSGBOX_FAIL. For the rest of the codes, notifications are displayed in the message window. Notification descriptions have the following format:

<Icon> <ErrorSource> : <ErrorDescription> (Error code = <ErrorCode>)

The following icons are available:

  • ADDIN_E_NONE. No icon
  • ADDIN_E_ORDINARY. ">" icon

  • ADDIN_E_ATTENTION. "!" icon

  • ADDIN_E_IMPORTANT. "!!" icon

  • ADDIN_E_VERY_IMPORTANT. "!!!" icon

  • ADDIN_E_INFO. "i" icon

  • ADDIN_E_FAIL. "!!!" icon

If an icon code is not found in the list, no icon is displayed.

ErrorSource - the bstrSource field in the EXCEPINFO structure.

ErrorDescription - the bstrDescription field in the EXCEPINFO structure.

ErrorCode - numeric message code in a decimal form. The message code is not displayed if one of the codes listed above is used.

For notifications with codes ADDIN_E_MSGBOX_ATTENTION, ADDIN_E_MSGBOX_INFO, or ADDIN_E_MSGBOX_FAIL, a dialog box is displayed, which contains the OK button and the icon MB_ICONEXCLAMATION, MB_ICONINFORMATION, or MB_ICONERROR respectively.

Notification descriptions have the following format:

<ErrorSource>:<ErrorDescription> (Error code = <ErrorCode>)

where ErrorSource, ErrorDescription, and ErrorCode are described above.

Syntax:

HRESULT AddError(BSTR pszPropName, LPEXCEPINFO pExcepInfo);

Parameters:

pszPropName

Type: BSTR. In this implementation, the pszPropName parameter is ignored.

pExcepInfo

Type: LPEXCEPINFO. Pointer to the EXCEPINFO structure.

Return value:

  • S_OK - the message is successfully added.

  • E_OUTOFMEMORY - not enough memory.

  • Other return codes that inform about errors are possible.


Comments
0
Add comment