I'm trying to test the OOTB integration 'Order To Cash' using OSM 7.0.3. For my test, I'm using a provisioning system simulator (one of the cartridges provided by Oracle - VoIPServiceProvisioning). My orchestration plan invokes 'SyncCustomer', 'InitiateBilling', 'ProvisionOrder' and 'FulfillBilling' functions. Everything works well until the ProvisionOrder. COM invokes the SOM cartridge (CommunicationsProvisioningOrderFulfillmentPIP) and this invokes the simulator. I get a response from the simulator and the 'CommunicationsProvisioningOrderFulfillmentPIP' order is also completed but when the update has to be sent to COM I get the error 'Error getting ProcessProvisioningOrderEBM' in the xquery 'ProvisionOrderCompleteEventHandler'.
Does anybody know what can be the problem? Any idea will be really appreciated.
Hi, this could be a host of issues.
One thing that I can think of is user to role assignment.
Because the data provided as the input into your xquery for an order state event automator type depends on the Query Task.
If you assign the user executing the automator to extra Roles, you may get a different Query Task being picked by the system, hence a different set of data provided as the input for your xquery...
I have checked the user/roles from OSM Administrator associated to the 'CommunicationsProvisioningOrderFulfillmentPIP' and all the roles have all the users associated. I didn't change anything. It's the OOTB installation... Is this is correct? Does anybody know where I can get the mapping user/roles associated to each cartridge provided with the OOTB installation? It's just to check if the installation has been correctly done at least regarding user/roles.
here is the code where the error seems to come from
let $ebm := if (fn:exists($taskData/oms:_root/oms:messageXmlData/provord:ProcessProvisioningOrderEBM))
else error(xs:QName('osmError:ORDER_NOT_FOUND'), "Error getting ProcessProvisioningOrderEBM.")
To me this must be an issue with the task data.
The user executing this automator is osmlf.
This user should be the member of the following roles:
Both have the same view assigned for the Provisioning order: CommunicationProvisioningOrderQueryTask.
The user must not be a membe of other roles, this can lead to a different query task being picked by the system for the automator.
In particular, there is the LocalFulfillmentSystemInteractionRole which has a different query task assigned for the order:
And this one indeed does not include the element messageXmlData. So if by any chance the user osmlf was member of LocalFulfillmentSystemInteractionRole, this could lead precisely to the error you are getting.
Thank you very much!!! I have removed the user osmlf from the role LocalFulfillmentSystemInteractionRole and now the provisionOrder function is completed :)
Do you know where I can get the correct users for each role? Is there any Oracle documentation which include this information? I think all the configuration user/role is not correct...
Hi, if you still have the cartridge source which you downloaded from edelivery, there is a "userConfig.xml" in certain cartridges (e.g. the provisioning one).
Take a look and it tells you for each user what are the weblogic groups and the OSM groups.
I don't think there is any specific piece of documentation on this.