Configuring the Decision Manager Open Edition runtime
Calls to Decision Manager Open Edition on z/OS® are made in memory instead of through REST API calls.
This enables the calls to meet the expectations of a z/OS programmer, which are unlikely to be met by a call off platform or a REST API call to an application server running on z/OS.
Decision Manager Open Edition is part of
Business Automation Manager Open Editions (see IBM® Business Automation Manager Open Editions
).
Setting up the runtime
Follow these steps:
- Install and configure Operational Decision Manager. Confirm that it works correctly by starting a zRule Execution Server for z/OS server and submitting
the HBRMINB sample.Note: Alternatively, you can use the HBRMINBM sample. It is a version of the COBOL Miniloan sample that is designed to illustrate just the means of calling Operational Decision Manager from COBOL, without the additional complexities of reading in sample data.
- Add a control statement for Decision Manager Open Edition.
Edit your ++HBRHLQ++.SHBRPARM(HBRCTRL) member to add a statement like the following one for Decision Manager Open Edition:
CREATE DMOEZRES HBRSSID=DMO1 HBRWORKDS=RULES.WORK.DMO1This statement allows you to configure a started task for a zRule Execution Server for z/OS server that is running in Decision Manager Open Edition mode.
- Add configuration details for Decision Manager Open Edition.
Edit your ++HBRHLQ++.SHBRPARM(HBRINST) member and add a parameter to define the location of your Decision Manager Open Edition file system repository.
++HBRDMOEFILELOCATION++=/u/myUser/DMOErepoThis parameter allows you to store Decision Manager Open Edition decision knowledge artifacts, or KJARs, at the given location.
- (Optional) Set a different runtime library directory for Decision Manager Open Edition, instead of the one that
is shipped with Decision Runtime for z/OS:
If you do not use this option, the library that is shipped with Decision Runtime for z/OS is used by default. (See z/OS configuration variables.)++HBRDMOELIBPATH++=/u/myUser/DMOElibrary - Submit ++HBRHLQ++.SHBRJCL(HBRUUPTI) to apply the configuration and create the working data sets.
- Copy the example started task from ++HBRWORKDS++.SHBRPROC(HBRXMSTR) to your proclib and verify its contents, including the steplib. Rename the first four characters of the member name to match your ssid. If your chosen ssid is dmo1, you rename it DMO1MSTR.
- Create the working directory by submitting ++HBRWORKDS++.SHBRJCL(HBRCRTI).
- Define the subsystem ID to your z/OS system in the same way as for standard Operational Decision Manager
zRule Execution Server for z/OS
servers.
See step 1 in Configuring a zRule Execution Server for z/OS server group.
- Authorize the MSTR member
See step 2b. in Configuring a zRule Execution Server for z/OS server group.
- Start your zRule Execution Server for z/OS
Decision Manager Open Edition server.
From SDSF issue, use the start command for your server, for example:
/s DMO1MSTRYou have started a Decision Manager Open Edition zRule Execution Server for z/OS server, which can service batch requests for Decision Manager Open Edition rule execution.
- Deploy the sample KJAR to your Decision Manager Open Edition persistence.
Submit JCL ++HBRWORKDS++.SHBRJCL(HBRDDPLY).
The job should complete with a return code of 0.
The KJAR has been copied to the ++HBRDMOEFILELOCATION++ location.
- Submit the Decision Manager Open Edition
sample.
Submit JCL ++HBRWORKDS++.SHBRJCL(HBRDMINB).
The job should complete with a return code of 0.
The output from the job shows a call to Decision Manager Open Edition is being executed.
- Explore the source code of the program you just executed.
Look in ++HBRHLQ++.SHBRCOBS(HBRDMINB) and the copybook at ++HBRHLQ++.SHBRCOBC(HBRDDAT1).
- Enable other KJARs for execution on z/OS.
Explore the documentation for Decision Manager Open Edition and create your own KJAR, or locate one of the Decision Manager Open Edition samples and refer to Using COBOL enabler for Decision Manager Open Edition for details on how to enable the KJAR for execution on z/OS.