10 Replies Latest reply on Dec 21, 2017 2:24 PM by AlasdairRobertson

    Value Mapping

    ggarcia@marchofdimes.org Apprentice

      Hi all - I have what I think is a fairly simple use case and was hoping someone can help me out.

      We have different workflow rules for users that report to our HQ versus Field (everyone else). Unfortunately we don't have a profile field which identifies HQ/Field to build the rule from.


      Based on a profile field called Department we can extrapolate whether a person is in HQ/Field, but I'm not sure how to build this mapping.

      We'd rather rely on some type of mapping table rather than push this extra info into a profile - is that possible and to use that mapping as a rule in workflow?

      Any suggestions on how to handle this would be super much appreciated!


      For example:

        • 1. Re: Value Mapping
          AlasdairRobertson ITSMMVPGroup

          Could you not add this as a field to the department object.  Then on setting a department on an employee record an editing rule fires which grabs the other field from the department object to a field on the employee [OtherObject].


          On the department object I would make your new field a dropdown so you will require a new business object ot hold your validation list.


          I hope this make sense, if you get stuck let us know.

          1 of 1 people found this helpful
          • 2. Re: Value Mapping
            ggarcia@marchofdimes.org Apprentice

            Thanks Alasdair!


            Our employee object is populated via a feed from Active Directory.  A department value comes across and populates the employee.department field, but it doesn't appear to have any relationship to the actual department object - is that typical?


            I'd love to explore using the department object you described - since the object is currently full of out of the box data, is there a way to dynamically populate the department object with unique values that are in our employee.department field?

            • 3. Re: Value Mapping
              AlasdairRobertson ITSMMVPGroup

              i will have a play with it later and let you know.  I have a feeling that the department_valid field doesn’t populate correctly from memory and we can probably get round that.

              • 4. Re: Value Mapping
                AlasdairRobertson ITSMMVPGroup

                So I tested an AD import this evening my department was created automatically:

                Ad Import configuration nothing special just map the department field:



                I would make the department field not required by ticking the box near to the use default setting just in case AD is not properly filled in (unless your going to check the logs regularly).


                The employee record had a correct department_valid recid matching the department record.  For you scenario you can use this relationship as follows to allow you direct access to the department record fields from the employee object:


                DepartmentAssocProfileEmployee it is based on a many employees to 1 department 0..N:0..1 based upon Department_Valid = (other)RecId the other object being the Department table RecId


                If you get stuck let let me know.

                • 5. Re: Value Mapping
                  ggarcia@marchofdimes.org Apprentice

                  Thanks so much for your assistance and apologies for all the questions, working with objects in HEAT is very new to me.


                  From a request offering I'm able to access the employee object's field where our employee department data is synced to from AD (for us this is employee.MODDeptMarket, not sure why our implementation consultant didn't just use the standard department field).  However the list contains duplicates.


                  In order to have a unique list of all departments our employees belong to, would I be correct to assume I need to utilize the relationship you mentioned above (Employee.DepartmentAssocProfileEmployee) to have it update the department table and store the unique values?  Or is there a different approach to be able to extract the unique values to a request offering dropdown?


                  I noticed that in our Department object's department name field its the standard department names that seem to be out of the box like Accounting, Admin, Client Relations, Customer Service, etc. (all created in 2006 and modified in 2008).


                  • 6. Re: Value Mapping
                    AlasdairRobertson ITSMMVPGroup

                    Ok a fair few bits to work through here


                    So firstly is the MODDeptMarket field a text only or a drop down/Validation list?  Ideally you would want to extract the full list of departments and then load it to the proper Department object or build a new validation list for the departments and remember to set a unique key to prevent duplicates in future.


                    Once that is done we can map the existing field to the new field or to the preferred Department field (bare in mind that there may be other functions attached to MODDeptMarket that should be considered). 


                    The screen shot is that your current config or something you are proposing?  If proposing it will not work as that usually works when a relationship is create and there wont be that currently I expect.  We may need to run some quick actions to copy the data around properly if needed.


                    I hope makes sense, if not you know where I am.

                    • 7. Re: Value Mapping
                      ggarcia@marchofdimes.org Apprentice

                      The Employee.MODDeptMarket is just a text field which accepts anything AD drops into it.
                      I've setup a pick list for the departments (GeoffDept). Within the picklist settings I don't see a way to set a unique key to prevent duplicates in the future - how would I go about doing that?
                      If working on the dept object would provide more robustness or flexibility moving forward I'd be happy to go that route rather than a pick list - the key is I need the list to eventually be dynamic based upon the unique values in the Employee.MODDeptMarket.


                      The screenshot was just something I was proposing.


                      • 8. Re: Value Mapping
                        AlasdairRobertson ITSMMVPGroup

                        Hi Geoff


                        On the field you wish to be unique set this option, it will add a unique index to the database table and then only unique values can be added.  As it goes Department name is unique out of the box.


                        • 9. Re: Value Mapping
                          ggarcia@marchofdimes.org Apprentice

                          Thank you! Ok so I'm all squared away with that part.

                          How would I map the existing field (employee.MODDeptMarket) to the department.DepartmentName field?

                          • 10. Re: Value Mapping
                            AlasdairRobertson ITSMMVPGroup

                            Couple of options:

                            • use a Quick action to set the department field = MODDeptMarket then highlight the records to update and run the script.  If you have lots of employees then you could build out a workflow that uses the run for search block.  It uses a saved search for example where Employee RecId is not empty an then call your quick action to copy the fields.
                            • Update the LDAP/AD import to set the department field, delete the AD Sync data and reimport all records


                            I will mention the SQL script but bare in mind it is not supported should anything go wrong....backup database, testing staging etc. etc.


                            Again if you need more steps let me know.