Specifying a transaction as time-triggered
You can set up a transaction to be triggered by the Sterling Order Management System Software agents.
About this task
To create a time-triggered extended transaction:
Procedure
- Open the Applications Manager and select the application that you want.
- In the Process Modeling window, select the Order, Load, or General tab to view the corresponding process modeling tree for that base document type.
- In the Process Types swimlane, right-click on the applicable process type and choose Model Process. The Repository Details window and work area display for the corresponding process type.
- Choose the Transactions tab.
- From the Transaction Details window, choose the Time Triggered tab.
- Check ‘This transaction is time triggered' to indicate that this in a time-triggered transaction.
- In Java™ Class, enter the agent class that you want to handle agent messages.
- From the Agent Criteria table, choose the Create New icon. The Agent Criteria pop-up window displays.
- Enter information in the applicable fields. Refer to Table 1 for field level descriptions.
Table 1. Time-triggered transaction runtime properties. Time-triggered transaction runtime properties
Control Description Runtime Properties Agent Server The server on which this instance of the transaction is to be run. To add new Agent Servers, click the Add Servers button next to this field. This is a parameter used to start the agent server. Alert Queue Name The name of the alert queue. JMS Queue Name The name of the JMS queue that contains messages to be processed by this transaction. No. of Threads The number of concurrent threads with which this transaction should be run. Initial Context Factory The class providing an Initial Context implementation for your application server to enable remote Java clients to connect. Select IBM MQ if you are using MQSeries® accessed through an IBM® WebSphere® IIOP URL. This sets the class name to:
com.ibm.websphere.naming.WsnInitialContextFactory
.Select File if you are using MQSeries accessed through a file URL, as with Oracle WebLogic. This sets the class name to
com.sun.jndi.fscontext.RefFSContextFactory
.Select WebLogic if you are using Oracle WebLogic JMS. This sets the class name to
weblogic.jndi.WLInitialContextFactory
.Select Jboss if you are using JBoss HornetQ. This sets the class name to
org.jnp.interfaces.NamingContextFactory
.If you defined an initial context factory code for ActiveMQ, select the entry you created for it. For more information about setting up other JMS vendors, such as ActiveMQ, which are not included in the default set, see Section A.2 "Configuring Communication Between an Agent and a JMS Server".
Note: You can override this value by configuring theyfs.agent.override.icf
property in the<INSTALL_DIR>/properties/customer_overrides.properties
file.Note: You can configure your own initial context factory settings to be used here. For more information about defining initial context factory codes, see Defining initial context factory codes.Connection Factory The name of the connection factory. This name corresponds with a JMS connection factory configured in the application server cluster running Sterling Order Management System Software. Note: You can override this value by configuring theyfs.agent.override.qcf
property in the<INSTALL_DIR>/properties/customer_overrides.properties
file.Provider URL The URL containing the protocol and address used to access the JMS queue. If you use Oracle WebLogic JMS, enter the following value:
t3://<IP address and port of the WLS instance>
If you use MQSeries through a JNDI file, enter the following value:
file://<pathname>
For example, if the path to the .bindings file is /home/yantra/MQ_HSmith/java/jndi, use:
file:///home/yantra/MQ_HSmith/java/jndi
If you use MQSeries through IBM WebSphere JNDI, enter the following value:
corbaloc::<DNS server name or IP address>:<bootstrapport>
If you use JBoss HornetQ, enter the following value:
remote://<IP address and port of the JBoss instance>
Note: You can override this value by configuring theyfs.agent.override.providerurl
property in the<INSTALL_DIR>/properties/customer_overrides.properties
file.The Provider URL format is:
t3://<ip Address>:<port>
For clustered JMS configurations, use a comma-separated value comprising the host/IP and port of each node in the cluster. For example:
- For Oracle WebLogic
JMS:
t3://<IP Address>:<port>,<IP Address>:<port>
- For IBM MQ and IBM
WebSphere Default Messaging, the format is
corbaloc::<host>:<port>,:host>:<port>
. For example:corbaloc::10.10.46.90:2816,:10.10.46.70:2817
- For TIBCO EMS, the format is
tcp://<host>:<port>,<host>:<port>
. For example:tcp://devdell04:7222,devdell91001:7222
- For JBoss Messaging HornetQ, the format is
remote://<host>:<port>
. For example:10.11.23.43:1200
Note: For JBoss HornetQ cluster, specify only the single URL instead of a list.
Enable JMS Security Check this box if you want JMS Security to be enabled. Once selected, the JMS Security Parameters tab is enabled to configure destination and/or JNDI based JMS security. Note: Oracle WebLogic 12.2.1.3 only supports JNDI based JMS security. If destination based security is enabled, it is altogether bypassed. Therefore, you must configure JNDI based JMS security if using Oracle WebLogic 12.2.1.3.Note: You can override this value by configuring theyfs.agent.override.auth.enabled
property in the<INSTALL_DIR>/properties/customer_overrides.properties
file.Schedule Trigger Message Check this box to configure the agent to run the agent trigger periodically from within the Agent Server during runtime. When there are no messages for the agent to process, a new trigger message is sent to the agent at specified time intervals.
Enable Advanced Scheduling By default, the “Enable Advanced Scheduling" option is not selected.- If this option is selected, the existing configuration of fixed trigger interval in minutes is disabled and a new tab named “Advanced Scheduling" is enabled.
- If this option is not selected, the existing behavior prevails and the new tab “Advanced Scheduling" is disabled.
However, the “Enable Advanced Scheduling” option is dependent on the existing “Schedule Trigger Message” option. If "Schedule Trigger Message" is not selected, the "Schedule Trigger Message Interval", “Enable Advanced Scheduling” and “Advanced Scheduling” tab are all disabled and the values set for them are blanked out.
Schedule Trigger Message Interval (Min) Enter the desired time interval in minutes. Service to Execute on Completion of Work Enter the service to be run upon completing the execution of the selected agent. You can select the required service by using the Search icon. Note: In case of agent implementations that extend AbstractPurgeAgent or AbstractEnterpriseAgent, which performs multi level GET for configured agent criteria, the completion of work service will get executed for each of the GET calls that results in execute messages. In this case, the completion of work just indicates the completion of work for that criteria or GET operation.Criteria Parameters Parameter Name The name of parameter sent to the transaction. This is a parameter used to trigger the transaction. Parameter Value The value of the parameter sent to the transaction. JMS Security Properties Tab This is enabled upon selecting Enable JMS Security in the runtime properties tab. You can override the JMS security properties specified here by enabling the agent and flow authorization parameters in
yfs.properties
.Note: You can override the JMS security parameters (userid and password) by configuring the following parameters in the<INSTALL_DIR>/properties/customer_overrides.properties
file:yfs.agent.override.auth.userid yfs.agent.override.auth.password
For more information about the application server-specific security mechanisms, see Setting up the JMS Security Properties.
Parameter Name Enter the name of the security parameter. Parameter Value Enter the value of the security parameter. Advanced Scheduling Tab By default, the advanced schedule configuration is set to trigger the agent once every hour.
Minutes of the Hour Select an appropriate option for each of the scheduling parameters and set a corresponding value, based on the trigger schedule that you want to configure. For example, if you want to run an agent at every 10th minute of the hour, at 12:00 AM, on Monday through Wednesday and also on Friday and Sunday of every month, set the scheduling parameters as follows:- Select
Minutes of the Hour
asEvery N Minutes of the Hour
and set its value to10
. - Select
Hours of the Day
asEvery Hour of the Day
. - Select
Days of the Month
asNot Applicable
. - Select
Months of the Year
asEvery Month of the Year
. - Select
Custom Days of the Week
asMON-WED,FRI,SUN
.
If you enter an incorrect value for any of the custom options such as
Custom Days of the Week
and save the details, an appropriate error is displayed. Similarly, an error message is displayed if you enter a wrong value forN
and save the details. For example, if you enter70
as the value forEvery N Minutes of the Hour
.Hours of the Day Days of the Month Months of the Year Days of the Week Note: For more information on JBoss deprecation, see Deprecated components in Sterling Order Management System Software. - For Oracle WebLogic
JMS:
- Choose the Save icon.
- Continue to enter information in the applicable transaction fields. Refer to Table 1 for field level descriptions.
- Choose the Save icon.
- Restart the appropriate Agent Servers for the changes to take effect.