Request Job condition has missing parameters or extra null values

Document ID : KB000113162
Last Modified Date : 05/09/2018
Show Technical Document Details
Issue:
After upgrading Applications Manager, Jobs with a Request Job condition may run with null values where values should exist. This will generally affect OAE Jobs.

Other behaviors include the Request Job condition working as expected but extra null are seen if the Request Job Condition string details are reviewed. Below is an example:

Null

In most cases, this is only seen in environments where the data existed since Applications Manager version 8.0.7 and upgraded over time to version 9.2.0. New environments installed after version 8.0.7 or version 9.0.0 will generally not experience this issue.
Cause:
Due to a bug that existed in Applications Manager version 8.0.7, extra NULL values were added to certain Request Job Condition to fix this bug. Due to this fix and changes to OAE in version 9.2.0, this fix resurfaced as a new bug.
Resolution:
This bug will be fixed in a future update of Applications Manager.

Current Workaround:
  1. Edit and make a change to any prompt value
  2. Apply
  3. Revert the change
  4. Apply
It is recommended that the workaround is used when possible. If too many Request Job Conditions exist to manually fix, the following sql can be used to query and update affected Conditions.

When opting for sql updates, it is highly recommended that a back up of the database is taken and fully tested in a DEV or TEST environments before applying it in a PROD environment.

The below sql is for the most common seen case where extra NULL values are added consecutively to the Request Job Condition string, so the sql may need to be slightly updated depending each individual environment. Additionally, the sql may differ if the Request Job condition is requesting an OAE Job or a non OAE Job.

OAE in the Request Job Condition
 
select so_act_arg from so_object_cond
where substr (so_act_arg,1,instr(so_act_arg,' ',4,1)) in (select '-m '||so_module||' ' from so_job_table where so_command_type='OAE')
and so_act_arg like '-m %NULL NULL NULL NULL NULL NULL NULL NULL _NULL%'

Non-OAE in the REQUEST JOB

select so_act_arg from so_object_cond
where substr (so_act_arg,1,instr(so_act_arg,' ',4,1)) NOT in (select '-m '||so_module||' ' from so_job_table where so_command_type='OAE')
and so_act_arg like '-m %NULL NULL NULL NULL NULL NULL NULL NULL _NULL%'

Update

update so_object_cond set so_act_arg = replace (so_act_arg , ' NULL NULL NULL NULL NULL NULL NULL NULL _NULL', ' ') where so_action in ('REQUEST JOB','REQUEST MODULE')