This post is to document something that took me a few hours to figure
out so I don't have to look for it again and so1 anyone else who needs
it can have it.

In my design I have attributes called wdWorkStartDate and wdWorkTermDate
which are synchronized from by my LiQuiDSOAP(tm) driver.
When the user's manager requests additional provisioning, it initiates a
role request. The business logic requires that the effective date of the
role assignment be no earlier than the employee start date, and if there
is an end date (which there is for "contingent workers" which are
usually contractors or consultants) it must have an end date as well.

I expected that when I used IDVault.get() in workflow the time would be
reported in LDAP time, or workflow time, but instead it is returned in a
medium full date format. Additionally, if the expiration attribute is
not populated, IDVault.get() dutifully returns null, which means we need
to send a blank string into the role request in that field.

The following code was added to the global scripts and referenced in the
field by wrapping the call to IDVault.get():

function workflowDate(data)

if (null == data) return "";

var IDVaultFormat = new java.text.SimpleDateFormat("EEE MMM dd HH:mm:ss
z yyyy");
var workflowFormat = new

var tempDate = IDVaultFormat.parse(data);
catch (err)
return err

return workflowFormat.format(tempDate);

rrawson's Profile:
View this thread: