Single account aggregation not working for JDBC type application

Hi Team,

I am facing issue for single account aggregation.

  1. Application Type: JDBC

  2. Table: TestDB.eCard

  3. Identity Attribute: CARDID

  4. Get Object Query:

    SELECT * FROM TestDB.eCard WHERE CARDID='$(identity)'
    

I have updated the JOBGROUP value in the database from ‘TECH’ to ‘ADMIN’. After that, I performed a single account refresh from Manage Accounts.

In the logs, I can see that the updated value (ADMIN) is being fetched correctly in the ResourceObject. However, in the SailPoint UI, it still shows the old value (TECH), and the account attributes are not getting updated.

Could you please help me understand why the updated values are not reflecting in the UI, even though they are visible in the logs?

Any suggestions would be appreciated.

<!DOCTYPE ResourceObject PUBLIC "sailpoint.dtd" "sailpoint.dtd">
<ResourceObject displayName="114" identity="114" objectType="account">
  <Attributes>
    <Map>
      <entry key="CARDID" value="114"/>
      <entry key="EMAIL" value="Melissa.Bailey@demoexample.com"/>
      <entry key="JOBGROUP" value="ADMIN"/>
      <entry key="STATUS" value="active"/>
    </Map>
  </Attributes>
</ResourceObject>

Refreshing_User_From_Manage_Accounts

@SDM007 Could you please check in debug as well? what value is it showing? Sometimes, it aggregates but doesn’t reflect immediately in UI.

Yes, I checked on debug page also it’s same old value

Do you have a customization rule configured for this application?

Yes, I have configured customization rule

Can you share your rule?

log.error(object.toXml());

String st = object.getStringAttribute(“STATUS”);
String cardid = object.getStringAttribute(“CARDID”);

log.error(st + " " + cardid);

if (st != null && st.equalsIgnoreCase(“active”)) 
{
object.setAttribute(“IIQDisabled”, false);
} else {
object.setAttribute(“IIQDisabled”, true);
}

return object;

Is JOBGROUP the entitlement attribute on this application? and was this account provisioned by IIQ with some sort of access request or role assignment?

if you have checked the debug and there also it is showing the old Value , can you please login to sailpoint db and check.

The issue could be related to cache, can you open debug and clear cache, and also refresh the user.

Jobgroup is not marked as managed and entitlement

I cleared cache from debug page still the result is same

did you refresh the user?? and checked at the db end, also if there you can see the updated value.

@SDM007 Even i tried in Manage Accounts, it’s not syncing the user. I don’t exactly remember when i last used it and even it is working or not. As a workaround, we added a plugin to do single account aggregation. May be you can also try the same.

1 Like

have you tried Identity Refresh task to refresh account attributes ?

Hi @SDM007,

I think for getObjectSQL you can use:

SELECT * FROM TestDB.eCard WHERE CARDID = ‘James.Bond’;

For single account aggregation, we need to select it like this. Please try this way and let us know

Yes I tried , still it is same this way

But then with this we cannot do single account aggregation for other user

Hello @SDM007

Verify that the JOBGROUP attribute is marked as Managed.

Check for any cache-related issues and refresh the identity if required.

Ensure that attribute synchronization is enabled (it is currently disabled).

Yes, at that time we need to change the user. But how are you doing single account aggregation? You mentioned using the Manage Accounts option


is that what you are using?

To perform single account aggregation, we have a rule that might help you. I have attached the rule below. If it is helpful, please proceed; otherwise, you can ignore it
Demomstrate Single Account Aggregation.xml (5.0 KB)

1 Like