Announcing the Saviynt Knowledge Exchange unifying the Saviynt forums, documentation, training,
and more in a single search tool across platforms. Read the announcement here.

Entitlement Recon from Oracle DB is not working

Gopi
New Contributor III
New Contributor III

Hi team,

In Target I can see there are 1460 records, but in Saviynt I can recon only 454 records.

Error is:

Gopi_0-1681381658970.png

Code:

<dataMapping> <before-import> </before-import> <sql-query description="This is the Source DB Query">

<![CDATA[SELECT 'PeopleSoft HR' as securitysystem,'PeopleSoft HR' as endpoint,'memberOf' as enttype,DN as entname,1 as status,CN as displayname,ep_description as description
from sysadm.PS_EAP_CAT]]>

</sql-query> <mapper description="This is the mapping field for SAviynt Field name" deleteentitlementowner="true">

<mapfield saviyntproperty="securitysystems.systemname" sourceproperty="securitysystem" type="character"></mapfield>
<mapfield saviyntproperty="endpoints.endpointname" sourceproperty="endpoint" type="character"></mapfield>
<mapfield saviyntproperty="entitlementtypes.entitlementname" sourceproperty="enttype" type="character"></mapfield>
<mapfield saviyntproperty="entitlementvalues.entitlement_value" sourceproperty="entname" type="character"></mapfield>
<mapfield saviyntproperty="entitlementvalues.displayname" sourceproperty="displayname" type="character"></mapfield>
<mapfield saviyntproperty="entitlementvalues.description" sourceproperty="description" type="character"></mapfield>
<mapfield saviyntproperty="entitlementvalues.status" sourceproperty="status" type="number"></mapfield>
</mapper>
<after-import description="EMAIL,BATCH,SQL"> </after-import> </dataMapping>

Please correct me if I'm missing anything here.

Regards,

Gopi.

4 REPLIES 4

pruthvi_t
Saviynt Employee
Saviynt Employee

Hi @Gopi ,

Greetings.

Did you try to run the select query from XML on your target application. Does it give the right count when you do so(1460).

Also please check if the entitlements which were reported missing in the import has slash values \,\\.

Thanks,


Regards,
Pruthvi

dgandhi
All-Star
All-Star

Hi @Gopi 

Some steps through which you can troubleshoot and narrow down the issue.

1. Run the query in MySQL workbench and check if you get the output.

2. Check the length for the value and see if that is with in the range of data types.

Example: Entitlement_value , display name is of type varchar(255) so just check in target whether the value is not exceeding 255 character.

3. Also I dont see entitlementid being mapped. Can you please check the connector document and map it. (this is the not the reason of import failure but just a suggestion)

Thanks

Thanks,
Devang Gandhi
If this reply answered your question, please Accept As Solution and give Kudos to help others who may have a similar problem.

Gopi
New Contributor III
New Contributor III

Hi @dgandhi 

I checked the below items,

1. Run the query in MySQL workbench and check if you get the output.

Ans: The query is working fine in the SQL Developer tool.

2. Check the length for the value and see if that is within the range of data types.

Ans: In Target the Description column data type is CLOB and for some of them the length is 300+ and 1000+.

I also tried the CAST option but not work as below :

Error is:

Gopi_0-1681720407873.png

Query:

<dataMapping> <before-import> </before-import> <sql-query description="This is the Source DB Query">

<![CDATA[SELECT 'PeopleSoft HR' as securitysystem,'PeopleSoft HR' as endpoint,'memberOf' as enttype,DN as entname,1 as status,CN as displayname,CAST(ep_description AS VARCHAR2(255)) as description1
from sysadm.PS_IMF_EAP_CAT]]>

</sql-query> <mapper description="This is the mapping field for SAviynt Field name" deleteentitlementowner="true">

<mapfield saviyntproperty="securitysystems.systemname" sourceproperty="securitysystem" type="character"></mapfield>
<mapfield saviyntproperty="endpoints.endpointname" sourceproperty="endpoint" type="character"></mapfield>
<mapfield saviyntproperty="entitlementtypes.entitlementname" sourceproperty="enttype" type="character"></mapfield>
<mapfield saviyntproperty="entitlementvalues.entitlement_value" sourceproperty="entname" type="character"></mapfield>
<mapfield saviyntproperty="entitlementvalues.displayname" sourceproperty="displayname" type="character"></mapfield>
<mapfield saviyntproperty="entitlementvalues.description" sourceproperty="description1" type="character"></mapfield>
<mapfield saviyntproperty="entitlementvalues.status" sourceproperty="status" type="number"></mapfield>
</mapper>
<after-import description="EMAIL,BATCH,SQL"> </after-import> </dataMapping>

Thanks and Regards,

Gopi.

 

dgandhi
All-Star
All-Star

Hi @Gopi 

I would suggest try to remove description from the mapper and try to run the import once.

If it works then we know that issue is because of the description field. Post you can continue you troubleshooting on the description field.

Thanks

Thanks,
Devang Gandhi
If this reply answered your question, please Accept As Solution and give Kudos to help others who may have a similar problem.