Using Glide Lists and Transform Maps
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-22-2016 04:48 AM
Hello Everyone,
I need a bit of help setting up a transform map.
Say I have an excel spreadsheet with the following data:
Username | Service | Roles | User |
---|---|---|---|
JDOE | SERVICENAME | ROLE1 | John Doe |
JDOE | SERVICENAME | ROLE2 | John Doe |
JDOE | SERVICENAME | ROLE3 | John Doe |
MRB | SERVICENAME | ROLE2 | Mr B |
MRB | SERVICENAME | ROLE3 | Mr B |
I have created an 'Identity' table with fields matching those in the table.
Username: String
Service: Reference Field (cmdb_ci_service)
Roles: List (u_business_service_roles)
User: Reference Field (sys_user)
When I am importing, a seperate record is created for each line.
What I want to do is create one record for each username, and the roles for each username are added to the glide list on the record.
I have actually fixed this issue, the problem i am having now is that the role in the glide list is removed and replaced with the one on the next row.........I need it to be added to the list not replace what was there.
Is this possible, I have been messing about with it all day and not getting anywhere.
I will be creating multiple import sets for each of our applications, some users & usernames will be the same but will obviously use a different business service.
Thanks
Harry
- Labels:
-
Integrations
-
User Interface (UI)

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-22-2016 05:16 AM
Hi Harry,
Before I get in to a technical solution, can I ask why you want to do a glide list with multiple roles rather than a single user-to-role relationship? From a data management and reporting issue, the identity table you have created with single references is going to be easier in most cases. Which is why I'm curious to know what the overall goal/objective/requirement/use case is here.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-22-2016 05:23 AM
Hi Chuck, the idea here is that when a user leaves our company, my catalog item references the identity table (Business Service Set as the Display Value) to see what the user has access to, and a catalog task is created for each application is created to remove access. This is done in a list collector where the applications they have access to are automatically selected.
With the single user to role relationship........I am seeing the following in my list collector:
User: JDOE
SERVICENAME
SERVICENAME
SERVICENAME
SERVICENAME
SERVICENAME1
SERVICENAME1
Then a catalog task is created for each Individual role the user has.
I did look into list collectors only displaying unique values but apparently it's not possible.
Hope that makes sense
Thanks
Harry

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-22-2016 05:31 AM
Thanks for the update Harry. This makes total sense.
My recommendation is to have your import coalesce on the user/service. You can then check if the operation is an insert or update. if it's an update, then you simply take the role and append the new role entry to it.
While I haven't checked this in a while, you should be able to use the operation() method on the target record in your transform script. For example:
if (target.operation() == 'update')
// add role sys_id to the glide list here
This may help your transform scripts be a bit easier to manage:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-01-2018 02:33 AM
Hi Harry,
I am wondering to see the solution for this case, i have similar requirement i am tried it always overrides the existing value.
Regards,
Balaji