Siebel Order Management Infrastructure Guide > Data Transfer Utilities Business Service > Configuring Event-based Commands for DTU >
Dynamic Enabling of Commands for DTU
When a command is invoked from a toolbar button or menu, the Data Transfer Utilities business service invokes the method EventMethodxxx on the primary business component of the active view. The primary business component should be derived from CSSBCBase to allow the invocation to be captured by Siebel Event Manager.
When the view is changed, Siebel framework polls each command for the application-level toolbar buttons and application menu to determine whether the button or menu items should be made read-only.
There are two mechanisms for the dynamic enabling/disabling of commands in DTU:
The System Preference FINS DTU Enable FireEvent Mode is used to determine the mode. The value should be Srf or Runtime Event. The default value is Srf.
In the Srf mode, a FAFireEventxxx invocation on a buscomp is enabled if there is a user property underneath the FINS Data Transfer Utilities business service as such that the name of the user property is:
Name: FAFireEventxxx Static Enabled BC [n]
Value: Buscomp Name
You can define multiple Buscomps for a FAFireEventxxx method.
Srf mode is introduced primarily for performance reasons. Compared with Runtime Event mode, it allows fast enabling/disabling of a command button without actually invoking a run-time event. Srf mode is the default mode.
Mock Event Sink
When System Preference FINS DTU Enable FireEvent Mode is Runtime Event, Data Transfer Utilities determines at run time whether a FAFireEventxxx method should be disabled or not by initializing Mock Event Mode. It sets up a global mock event flag within the client's object manager. It then invokes EventMethodxxx on the primary business component of the active view. If this EventMethodxxx is finally captured by a Mock Event Sink, a global response flag is set. When the Data Transfer Utilities finds out the response flag is set by a mock event sink, it enables the FAFireEventxxx method for that particular view. Otherwise, the method is disabled.
Mock Event Sinks are specialized business service methods that capture mock events. They check whether the client's OM is in the mock event mode. If not, they do nothing. If so, they reply to the mock event by setting the response flag as well as the output argument.
MockMethodReplied = Y.
TryMockMethod in Data Transfer Utilities is a mock event sink. DataTransfer method has a built-in mock event sink.