How to catch similar type of Multiple CFS's in a single definition of ServiceSpecification

ashwajit_b
Tera Expert

I need to create a CFS for hardware and it will have some Specification Characteristics associated with it (e.g. HarwareName, HardwareQty etc.)

Now, if the northbound systems sends me order for only one hardware type then I would be able to catch its characteristics in the defined CFS, but in case the northbound system sends multiple different type of hardware (like [{“HarwareName”: “Mobile”, “HardwareQty”: 1}, {“HarwareName”: “ChargingBrick”, “HardwareQty”: 1}, {“HarwareName”: “Cable”, “HardwareQty”: 2]}) in a single order, then how can I catch these multiple items of the same Specification in my defined CFS and create the service orders for the following scenarios.

  • Creating a single service order which will contain all the hardware items
  • Creating separate service orders for each of the hardware type received
1 ACCEPTED SOLUTION

I read your question again and I think your ask is - Can the Northbound system send an Array for a set of characteristics against a Specification such that it is a Single Order/OLI into OMT.

 

If this is what you meant, I am afraid complex data structure input type is not supported today.  I like the requirement though!

Your next best option while staying OOTB is expecting the Northbound system to send individual OLIs for the CFSS with the respective chars set.

 

The parent-child option i.e. essentially decomposition based - will not work for an Array concept.

Even if you were to define a generic Parent CFS - in some cases you may have 3 name-value paris while in others 5. How will this be captured to drive the decomposition?

 

Perhaps other community members may have alternative ideas.

View solution in original post

4 REPLIES 4

ShashankInamdar
ServiceNow Employee
ServiceNow Employee

Hello @ashwajit_b ,

Assuming you are using TMF641 API for ordering -

For scenario#1 - send in a single payload (i.e. one Order) but with multiple Order Line Items for the same CFS spec with the different characteristic values.

For scenario#2 - send in different payloads (i.e. multiple Orders) each containing a single Order Line Item.

 

OMT also supports multiple Quantities. While this is not your ask, just to mention you can also send in a single Order Line Item with quantity set as 'n' which will create that many Domain Orders with the same set of Chars set in the Order payload or alternatively you can enrich them individually post order submission.

 

If this is not what you were asking, let me know and we can address your scenario differently.

Hi @ShashankInamdar , thank you for looking into this, the multiple order line items solution works fine on OMT, however instead of raising multiple order line items, is it possible to raise a single line order which could contain all the specifications?

Other than that, is there a possibility to use parent-child CFS could have one main Service Order for the specification and then the child CFS service orders based on the characteristics?

I read your question again and I think your ask is - Can the Northbound system send an Array for a set of characteristics against a Specification such that it is a Single Order/OLI into OMT.

 

If this is what you meant, I am afraid complex data structure input type is not supported today.  I like the requirement though!

Your next best option while staying OOTB is expecting the Northbound system to send individual OLIs for the CFSS with the respective chars set.

 

The parent-child option i.e. essentially decomposition based - will not work for an Array concept.

Even if you were to define a generic Parent CFS - in some cases you may have 3 name-value paris while in others 5. How will this be captured to drive the decomposition?

 

Perhaps other community members may have alternative ideas.

Hi @ShashankInamdar, thank you for your response. Your understanding about the my query is correct, i.e. sending the set of characteristics in a set of Array for a specification.

I suppose, the best option for now is to receive individual ServiceOrderItem for the specification with their respective characteristics. 

Regarding the Parent CFS, i was looking only to use this Hardware Parent CFS and then have child CFS'es based on the char set. In this case the name-value pair would be same, in my example the char set could only be HardwareType or HardwareName and HardwareQty, with any number of such pairs could come from NB systems based on the different hardware types ordered.