Troubleshooting
Problem
When updating the Person status to a value of 1 to suspend a user, via a TDI based HR feed, it only updates the "erpersonstatus" attribute.
Symptom
The "erlaststatuschangedate" attribute doesn't get updated when the "erpersonstatus" attribute is updated via a TDI based HR feed.
Cause
This is working as designed.
Environment
TDI 7.X
Diagnosing The Problem
The "erlaststatuschangedate" attribute doesn't reflect an updated value as a result of an HR feed designed to update the "erpersonstatus" attribute.
Resolving The Problem
In order to resolve this issue it is necessary to add logic to the HR feed AssemblyLine to set the date based on the Person status change. If the "erpersonstatus" attribute value is being modified then the "erlaststatuschangedate" attribute should also be updated to contain the date of the HR feed. To accomplish this use ibmditk to execute the following steps:
- Open the Assembly Line
- Add a Work attribute called "erlaststatuschange" to the Input Map
- Define the "erlaststatuschange" Work attribute with the following script (considering your appropriate input schema file attribute name, where it's 'status' in the below example)
- if(conn.getAttribute("status")!=null){
if(conn.getString("status").equals("1")) {
var mydate = new Date();
localOffset = mydate.getTimezoneOffset() * 60000;
myTZ = mydate + localOffset;
var myTZStr = new java.text.SimpleDateFormat("yyyyMMddHHmm").format(myTZ);
var myTZStrZ = myTZStr + "Z";
ret.value=myTZStrZ;
}
else
ret.value="";
}
The script includes logic for time zone, if this is needed.
Product Synonym
ITIM Identity Manager TIM TDI Tivoli Directory Integrator ISIM SIM
Was this topic helpful?
Document Information
Modified date:
16 June 2018
UID
swg21575825