Random Number Generation-Invoke a Service in DataMap


To generate a random value to insert as unique identifier.


Data getting in during inbound integration from external system cannot be uniquely identified.
One of the options is to use "SIS OM PC Service" business service in datamaps and the generated output row_id could be used as user key during the insertion. In the field map following expression is used:
InvokeServiceMethod("SIS OM PC Service", "Get Next RowId", "XYZ='12'", "RowId")

This might result in error "Access denied to invoke business service 'SIS OM PC Service' for search specification 'InvokeServiceMethod("SIS OM PC Service", "Get Next RowId", "XYZ='12'" ,"RowId")'" . This error is related to security issue. In order to use any business service with InvokeMethod we need to define that business service at following places:

1 - Mobile Web client/Dedicated client: In CFG we need to define following parameter
BusinessServiceQueryAccessList = SIS OM PC Service

2 - Web Client: We need to define this in Parameter "Business Service Query Access" at enterprise or component level where it is being used.
Name: Business Service Query Access
Value: SIS OM PC Service

Approach 2:

If the field to insert the random value is "Row Id" use any same standard value,
for eg : "99999"
Anyways when the field gets inserted the Row Id will get generated. So this can be used to the next record set.


Popular posts from this blog

Refresh Siebel Applet not Buscomp - "RefreshBusComp" Alternative

Drill down in siebel form applet

Deploying Integration Object at Runtime (Siebel)