My Oracle Support Banner

SkipEmptyChild parameter Skips a Little bit too much (Doc ID 2749621.1)

Last updated on APRIL 19, 2021

Applies to:

Oracle Communications Network Charging and Control - Version 12.0.2.0.0 and later
Information in this document applies to any platform.

Symptoms

On : 12.0.2.0.0 version, SLC - Service Logic Controller

A new parameter skipEmptyChild was added for which stops the iterator node if a sub field is missing 

However, it is noticed that the associated temporary storage field (e.g. IteratorInteger1) is not cleared if it is not found, it is skipped.

As such, if customer iterate over a record that has the optional field, and then another that does not then IteratorInteger1 is set incorrectly to the previous record.

So instead of just skipping, its needed to clear what's in there too.


Here is the Simple Object Access Protocol(SOAP) input:
  
<oper:OSD_TRIGGERRequest>
<CC_Calling_Party_Id>party_id
  <Iterator_Parent_List>
<Iterator_Parent>
<Iterator_Child1>CHILD1
<Iterator_Child2>CHILD2

<Iterator_Parent>
<Iterator_Child2>CHILD3

 
So, customer pass two Iterator_Parents, but the second one is missing Iterator_Child1. 

STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1) Define a Parent Array with Children as pictured. Map all 3 to incoming and outgoing session data.
2) Import Charge Plan(CPL), assign to an OpenServicesDevelopment (OSD) operation 
3) Trigger with the provided SOAP requests as an example (adjusting the operation as necessary)



 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.