User Location field to match AD
We sync our users from AD but the location field stays unassigned. Is there a way to match the location with whats in AD Description or Office field?
1 Comment
[ + ] Show comment
-
We map the Description attribute from AD to the Location field of the User in the import schedule. Is that what you're referring to? - ondrar 6 years ago
-
Yes! Where is the import schedule?!All I saw was Under Settings › Control Panel › Authentication Settings and there isn't any place where I can set this. - sam240 6 years ago
Answers (1)
Please log in to answer
Posted by:
akmagnum
6 years ago
Since you say you've synced Kace to your AD, I assume you have configured a trust with LDAP.
I also assume you have configured a scheduled user import In your "User authentication" settings.
If so....go to....
Settings ----> User Authentication
LDAP authentication ----> ---> Scheduled user imports (for your domain)
Under the tab attributes to retrieve....... add "description".
Click NEXT...
in the list you should see "Location. In the dropdown list next to it scroll down and choose "description".
This way the attribute from the description in AD will be imported to the Location field in kace.
Comments:
-
Be sure to verify where the location is stored in AD. In our environment it is stored in physicalDeliveryOfficeName. - chucksteel 6 years ago
-
It seems like I already have description there but the data is not being pulled. P.s this was setup by someone here before me.
Attributes to retrieve:
samaccountname, objectguid, mail, memberof, displayname, sn, cn, userPrincipalName, name, description, telephoneNumber, department
Label Attribute:
memberof
Label Prefix:
ldap_
Marimum Number of Rows:
20 - sam240 6 years ago-
When you go to the next step make sure that a user is included in the list that has those attributes. You may need to increase the maximum number of rows to make sure that happens. If a user with the listed attributes to receive isn't included in the results, I have found that the GUI doesn't show it in the dropdown list for matching column. - chucksteel 6 years ago
-
Got it to work. How do I include "Manager" field on the tickets for a queue? - sam240 6 years ago
-
If you want the manager's name to appear in a field, then you will have to create a custom field and set the value with a custom ticket rule. Clicking on the information button (i) next to the submitter's name will also show you the user's manager if you just want to know who it is. - chucksteel 6 years ago
-
Chuck, according to the example for custom field, it says Both Select Values and Default can be populated through a database query by prefacing the query with "query:". For example, to display a list of employee locations based on data stored in user records, use "query: select distinct(LOCATION) from USER" When I try to add the query, on the ticket it shows the actual code instead of the query running. Do I need to add this to the rule? - sam240 6 years ago
-
Do you have it in quotes? If so, remove the quotes surrounding the query. The rule is separate from populating the list for a select field. - chucksteel 6 years ago
-
I did now I just have query: select distinct(LOCATION) from USER and I get an error "An SQL error occurred in generating the list: query: select distinct(LOCATION) from USER" I think this statement is invalid? - sam240 6 years ago
-
Yes, the appliance now creates the locations as assets and the USER table contains the ID. To get the location asset's names:
SELECT DISTINCT(LOCATION.NAME)
FROM USER
JOIN ASSET LOCATION on LOCATION.ID = USER.LOCATION_ID
ORDER BY LOCATION.NAME - chucksteel 6 years ago -
Would it be the same for Manager? I'm really trying to make Manager work and Location was an example. - sam240 6 years ago
-
For manager you need to reference the USER table:
SELECT DISTINCT(MANAGER.FULL_NAME)
FROM USER
JOIN USER MANAGER on MANAGER.ID = USER.MANAGER_ID
ORDER BY MANAGER.FULL_NAME
If you are going to make a rule to set the manager in a field, this would be your update statement (assuming you are using a USER field type):
UPDATE HD_TICKET
SET CUSTOM_FIELD_VALUEx = (SELECT MANAGER_ID FROM USER WHERE USER.ID = HD_TICKET.SUBMITTER_ID)
WHERE HD_TICKET.ID in (<TICKET_IDS>) - chucksteel 6 years ago -
I'm almost there Chuck!
I have the custom_2 field set to user field here is the screenshot,
https://i.imgur.com/s1wJhmh.jpg
And I created a rule and I changed the SET CUSTOM_FIELD_VALUEx to CUSTOM_3
https://i.imgur.com/zMBBczf.jpg
From the ticket side, It doesn't auto select the manager. It just gives me drop down of all the names in Kace. - sam240 6 years ago -
The numbering of the custom fields starts at 0 in the database, so the column for custom field 2 is actual CUSTOM_FIELD_VALUE1. Your statement is trying to update CUSTOM_2 which doesn't exist. - chucksteel 6 years ago
-
so I have CUSTOM_2 Field Type set to User. I setup the rule and changed the CUSTOM_FIELD_VALUEx to 1 so CUSTOM_FIELD_VALUE1. Added the statement to Update SQL and ran it. On the ticket, the Manager field still stays as Unassigned.
here is the picture of my rule. Did I set this up right?
https://i.imgur.com/o8TGdc2.jpg - sam240 6 years ago -
You don't have any SQL in the select area, you ned to have something there so that the appliance knows what to update. I suggest that you use the wizard to select tickets where the Manager is Unassigned and then add the update statement to that rule. - chucksteel 6 years ago
-
When I choose the Custom field name which manager = Unassigned and hit test, no ticket matches this criteria. Not sure why! Even though all the ticket in this queue have Unassigned as set as Manager Field.. - sam240 6 years ago
-
Got it to work on Ticket Status = Active and separate rule for Ticket Status = Closed. - sam240 6 years ago
-
Here is a select statement that should work and will only update the ticket if the manager field isn't set to the submitter's manager. This prevents it from running every time the ticket is saved:
SELECT * FROM
HD_TICKET
JOIN USER on USER.ID = HD_TICKET.SUBMITTER_ID
WHERE
HD_TICKET.CUSTOM_FIELD_VALUE0 != USER.MANAGER_ID - chucksteel 6 years ago -
In my case I changed the value of the field from 0 to 1 and ran it but 0 rows updated.
SELECT * FROM
HD_TICKET
JOIN USER on USER.ID = HD_TICKET.SUBMITTER_ID
WHERE
HD_TICKET.CUSTOM_FIELD_VALUE1 != USER.MANAGER_ID - sam240 6 years ago -
Is the rule set to run on ticket save, and did you save a ticket that didn't have the manager set? Also, change the SELECT * to SELECT HD_TICKET.ID, that will guarantee that only the ticket ID is returned. - chucksteel 6 years ago