CICS Adapter Rollback

The OL CICS adapter can support a transaction rollback whereby a system is restored to the state that existed before the application of the last transaction. By setting a few options, you can enable transaction rollback and configure its mode of operation.

  1.  To enable the rollback feature in the OL CICS Adapter, perform the following:

    > ol test connection --enableRollBack true
    
     $ ol test connection --enableRollBack true
    
  2.  Report the position and length of the rollbackIndicator in the mainframe transaction response record. When the mainframe returns the transaction response, the OL CICS adaptor reads the value stored in this position specified to learn whether a rollback is required.

    > ol set property --asset lngroll --property 'rollbackIndicatorPosition': '25' 
     --property 'rollbackIndicatorLength': '2'
    
    $ ol set property --asset lngroll --property 'rollbackIndicatorPosition': '25'
     --property 'rollbackIndicatorLength': '2'
    
  3.  Set the condition that the read value has to satisfy for the rollback to be executed by the OL CICS adapter. In the examples below a rollback is executed if the value read is not equal to EBCDIC zeros.

    > ol set property --asset lngroll --property 'rollbackIndicatorOperator': 'NOT_EQUALS' --property  
    'rollbackIndicatorValueType': 'ZEROS'
    
    $ ol set property --asset lngroll --property 'rollbackIndicatorOperator': 'NOT_EQUALS' 
      --property 'rollbackIndicatorValueType': 'ZEROS'
    

Rollback related properties

enableRollBack

The transaction rollback feature is enabled in the OL CICS adaptor (default: false).

> ol test connection --enableRollBack true
 $ ol test connection --enableRollBack true

rollbackIndicatorPosition

The location of the rollback indicator in the mainframe transaction response record. The rollback indicator value designates whether rollback is required.

> ol set property --asset lngroll --property 'rollbackIndicatorPosition': '25'
$ ol set property --asset lngroll --property 'rollbackIndicatorPosition': '25'

rollbackIndicatorLength

The number of bytes reserved for the rollback indicator value. The rollback indicator value designates whether rollback is required.

> ol set property --asset lngroll --property 'rollbackIndicatorLength': '2'
$ ol set property --asset lngroll --property 'rollbackIndicatorLength': '2'

rollbackIndicatorOperator

The rollback indicator value has to satisfy a condition for the rollback to be executed by the OL CICS adaptor. The condition consists of an operator and value type. Set the condition operator by selecting one of the following values:

  • NOT_EQUAL: Rollback is executed when the indicator value is not equal to the value type. For example, rollback is executed when the value is not equal to LOW_VALUE (e.g., a null is a LOW_VALUE value.)
  • GREATER_CHAR: Rollback is executed when the indicator value is greater than the value provided in the rollbackIndicatorCustomValue option.
  • GREATER4_HALFW: Rollback is executed when the indicator value is greater than short int 4 (A hardcoded 4 value usually used by MF programmers as an error indicator).
  • GREATER4_FULLW: Rollback is executed when the indicator value is greater than an int 4 (A hardcoded 4 value usually used by MF programmers as an error indicator).
> ol set property --asset lngroll --property 'rollbackIndicatorOperator': 'NOT_EQUALS'
$ ol set property --asset lngroll --property 'rollbackIndicatorOperator': 'NOT_EQUALS'

rollbackIndicatorValueType

The rollback indicator value has to satisfy a condition for the rollback to be executed by the OL CICS adaptor. The condition consists of an operator and value type. Set the condition value type by selecting one of the following values:

  • LOW_VALUE: Select this option with the NOT_EQUAL value of the rollbackIndicatorOperator. Rollback is executed when the indicator value is not equal to LOW_VALUE (e.g., a null is a LOW_VALUE value.)
  • ZEROS : Select this option with the NOT_EQUAL value of the rollbackIndicatorOperator. Rollback is executed when the indicator value is not equal to EBCDIC zeros.
  • CUSTOM: Select this option with the GREATER_CHAR value of the rollbackIndicatorOperator. This option specifies conditions such as >4 where you don't have to type 4 as an EBCDIC value)
> ol set property --asset lngroll --property 'rollbackIndicatorValueType': 'LOW_VALUE'
$ ol set property --asset lngroll --property 'rollbackIndicatorValueType': 'LOW_VALUE'

rollbackIndicatorCustomValue

Set a value here if you selected GREATER_CHAR as the value of the rollbackIndicatorOperator option. If you selected the CUSTOM value for the rollbackIndicatorValueType option, set here the default custom value.

> ol set property --asset lngroll --property 'rollbackIndicatorCustomValue': '5'
$ ol set property --asset lngroll --property 'rollbackIndicatorCustomValue': '5'

rollbackType 

The type of rollback to perform:

  • SYNC  - executes an EXEC CICS SYNCPOINT rollback (default).
  • ABEND - executes a EXEC CICS ABEND rollback.
> ol set property --asset lngroll --property 'rollbackType': 'ABEND'
$ ol set property --asset lngroll --property 'rollbackType': 'ABEND'