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

Note: If you are creating a time-triggered transaction for a derived transaction, please observe that agent criteria data is not automatically populated and must be created.

To create a time-triggered extended transaction:

Procedure

  1. Open the Applications Manager and select the application that you want.
  2. In the Process Modeling window, select the Order, Load, or General tab to view the corresponding process modeling tree for that base document type.
  3. 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.
  4. Choose the Transactions tab.
  5. From the Transaction Details window, choose the Time Triggered tab.
  6. Check ‘This transaction is time triggered' to indicate that this in a time-triggered transaction.
  7. In Java™ Class, enter the agent class that you want to handle agent messages.
  8. From the Agent Criteria table, choose the Create New icon. The Agent Criteria pop-up window displays.
  9. 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 the yfs.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 the yfs.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 the yfs.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 the yfs.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 as Every N Minutes of the Hour and set its value to 10.
    • Select Hours of the Day as Every Hour of the Day.
    • Select Days of the Month as Not Applicable.
    • Select Months of the Year as Every Month of the Year.
    • Select Custom Days of the Week as MON-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 for N and save the details. For example, if you enter 70 as the value for Every 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.
  10. Choose the Save icon.
  11. Continue to enter information in the applicable transaction fields. Refer to Table 1 for field level descriptions.
  12. Choose the Save icon.
  13. Restart the appropriate Agent Servers for the changes to take effect.