/build/static/layout/Breadcrumb_cap_w.png
10/03/2018 205 views
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

Comments

  • 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?
    • 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.

All Answers

1

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.






Answered 10/03/2018 by: akmagnum
Red Belt

  • Be sure to verify where the location is stored in AD. In our environment it is stored in physicalDeliveryOfficeName.
  • 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
    • 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.
      • Got it to work. How do I include "Manager" field on the tickets for a queue?
      • 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.
      • 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?
      • 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.
      • 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?
      • 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
      • Would it be the same for Manager? I'm really trying to make Manager work and Location was an example.
      • 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>)
      • 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.
      • 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.
      • 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
      • 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.
      • 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..
      • Got it to work on Ticket Status = Active and separate rule for Ticket Status = Closed.
      • 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
      • 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
      • 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.