Configuring the Salesforce.com Integration
25 min
the salesforce com integration was first introduced in release 2015 2 as an optional feature the feature has been enhanced in release 2016 1 about the salesforce com integration docid 9depyiqhduh1onawo9iynsetting up the salesforce com system docid 9depyiqhduh1onawo9iyninstalling the salesforce com integration in ivanti docid 9depyiqhduh1onawo9iynadditional ivanti information docid 9depyiqhduh1onawo9iynadditional salesforce com information docid 9depyiqhduh1onawo9iyn about the salesforce com integration about the integration docid 9depyiqhduh1onawo9iynprerequisites docid 9depyiqhduh1onawo9iyn about the integration the salesforce com integration is an optional integration this integration allows you to synchronize contacts and accounts between salesforce com and there are three supported mechanisms in this integration you can do a bulk import of accounts and contacts from salesforce com to to initially synchronize the two systems you can configure salesforce com to send updates to when new accounts and contacts are created or existing ones are updated can update salesforce com contacts when modified through a quick action you can call the quick action manually or configure a workflow to automate the quick action, depending on whether you want all updates to contacts to be reflected back to salesforce com you must configure both and salesforce com to enable this integration additional ivanti information docid 9depyiqhduh1onawo9iyn describes changes to to support importing records, to receive the notifications of changes from salesforce com, and to be able to send updates to salesforce com setting up the salesforce com system docid 9depyiqhduh1onawo9iyn describes how to configure salesforce com to notify when an account or contact is created or edited prerequisites to use the salesforce com integration, you must have originally installed release 2013 2 or later on your application if you originally installed an earlier version of and then upgraded to release 2013 2 or later, the salesforce com integration will not work you must have the following components installed and running on your application for the salesforce com integration to work message queue integration service workflow service setting up the salesforce com system getting ready to configure the salesforce com system docid 9depyiqhduh1onawo9iyncreating or resetting the security token docid 9depyiqhduh1onawo9iyncreating a remote site docid 9depyiqhduh1onawo9iyn getting ready to configure the salesforce com system before you begin, you must have a valid salesforce com account if you do not have one, you can create a developer account in salesforce com for testing purposes go to https //developer salesforce com/signup https //developer salesforce com/signup to create the account you must copy and paste the link above you cannot click on it to launch it as it does not work correctly when you click on it if you are installing the salesforce com integration into a sandbox organization you must replace the initial portion of the url with https //test salesforce com http //tests salesforce com/ creating or resetting the security token log into salesforce com the application displays the salesforce com home page at the top of the page, click the down arrow next to your name and select either setup or my settings from the left panel, do one of the following if you clicked setup , select my personal information > reset my security token if you clicked my settings , select personal > reset my security token click reset security token salesforce com emails you a new security token keep this email creating a remote site log into salesforce com the application displays the salesforce com home page click remote site settings salesforce com displays the all remote sites page create a new remote site by clicking new remote site salesforce com displays the remote site edit page enter information into the fields field description remote site name the name of the new remote site for example, enter heattarget remote site url the url of the new remote site for example, enter https //mycompany saasit com disable protocol security disables security for the new remote site leave unchecked description an optional description active specifies if the new remote site is active check this option click save installing the salesforce com integration in ivanti about configuring the settings in ivanti docid 9depyiqhduh1onawo9iynverifying the external contact business object docid 9depyiqhduh1onawo9iynconfiguring the salesforce com external contact layout docid 9depyiqhduh1onawo9iynconfiguring the salesforce com account layout docid 9depyiqhduh1onawo9iynadding the salesforce com configuration to ivanti docid 9depyiqhduh1onawo9iynspecifying trusted ip addresses docid 9depyiqhduh1onawo9iynupdating the createsfcontact quick action docid 9depyiqhduh1onawo9iynupdating the salesforce com connector docid 9depyiqhduh1onawo9iynadding an api key docid 9depyiqhduh1onawo9iynediting the outbound messages docid 9depyiqhduh1onawo9iyncustomizing the salesforce com form docid 9depyiqhduh1onawo9iyn about configuring the settings in ivanti you can import data from salesforce com into by importing a csv file using the data import tool (as described in configuring data import connections docid\ z8kdisu8gjfwjewthqcuk ) there are connectors created already in for importing account and contact data these connections are called account import and contact import the subsequent data flow between and salesforce com is bi directional from the salesforce com side, any new accounts or contact business objects and succeeding updates on either business object triggers a web service call to insert or update into from the side, any update on an existing contact triggers a workflow where a quick action calls the salesforce com web service to update the corresponding contact in salesforce com verifying the external contact business object you must verify and remove certain required attributes in some of the fields in the external contact business object if the primary email and loginid fields are required determining if the primaryemail and loginid fields are required docid 9depyiqhduh1onawo9iynconfiguring the loginid field docid 9depyiqhduh1onawo9iynconfiguring the primaryemail field docid 9depyiqhduh1onawo9iyndisabling the primaryemail and loginid fields docid 9depyiqhduh1onawo9iyn determining if the primaryemail and loginid fields are required follow these steps to determine if those fields are required from the configuration console, click build > business objects open the external contact business object click the business rules tab click required rules look at the rules if the loginid and primaryemail fields are required, there are rules for them listed in this section configuring the loginid field if the loginid field is required, do the following from the configuration console, click build > business objects open the frs compositecontract identity business object click the fields tab open the loginid field under the field attributes header, check nullable click the indexes tab open the un identitycontract name index add two new filters by doing the following a under the filter expression header, click the add filter icon b under the field heading, click not set c from the drop down menu, select login id d under the filter expression header, click the add filter icon e under the field heading, click not set f from the drop down menu, select login id g under the operation heading, click notnull h from the drop down menu, select notequals i under the value heading, click not set j from the drop down menu, enter " click save configuring the primaryemail field if the primary email field is required, do the following from the configuration console, click build > business objects open the frs compositecontract contact business object click the fields tab open the primaryemail field under the field attributes header, check nullable click the indexes tab open the un contactcontract email index add two new filters by doing the following a under the filter expression header, click the add filter icon b under the field heading, click not set c from the drop down menu, select primaryemail d under the filter expression header, click the add filter icon e under the field heading, click not set f from the drop down menu, select primaryemail g under the operation heading, click notnull h from the drop down menu, select notequals i under the value heading, click not set j from the drop down menu, enter " click save disabling the primaryemail and loginid fields from the configuration console, click build > business objects open the external contact business object click the business rules tab click required rules if the loginid and primaryemail fields are required, disable them by clicking the on icon under the status column for each field click save configuring the salesforce com external contact layout from the configuration console, click build > business objects open the external contact business object click the layouts tab open the profile externalcontact layout under the views in this layout section, click formview ensure that you are not in the try our new look! view (if you see a link on the top right that says switch to old view , click it ) in the main form field, select profile externalcontact salesforce click save configuring the salesforce com account layout from the configuration console, click build > business objects open the account business object click the layouts tab open the account layout layout under the views in this layout section, click formview ensure that you are not in the try our new look! view (if you see a link on the top right that says switch to old view , click it ) in the main form field, select account form salesforce click save adding the salesforce com configuration to ivanti if your application does not have a salesforce com configuration, create one by following these steps log into the service desk console open the salesforce configuration workspace click new salesforce configuration enter information into the fields field description record identifier this field is automatically populated it is the recid for this configuration wsdl address the wsdl address enter salesforce/enterprise wsdl salesforce url the salesforce url enter https //login salesforce com/services/soap/c/33 0 salesforce user id the account used to log into salesforce com salesforce password the password associated with the salesforce user id you must enter the security token at the end of the password note you must enter the security token at the end of the password if you do not enter it, the application does not accept the password click save specifying trusted ip addresses specify three trusted host ranges check https //help salesforce com/apex/htviewsolution?id=000003652 https //help salesforce com/apex/htviewsolution?id=000003652 for a list of all of the published salesforce ip addresses the following ip ranges are for the american registry name sf1, starting ip 96 43 144 0, ending ip 96 43 159 254 name sf2, starting ip 136 146 0 0, ending ip 136 147 255 254 name sf3, starting ip 204 14 232 0, ending ip 204 14 239 254 follow these steps to specify a trusted host range log into the service desk console open the integration trusted host workspace click new integration trusted host enter information into the fields field description name a unique name for this trusted host description (optional) a description of this trusted host start ip the first ip address in a series of ip addresses to allow end ip the last ip address in a series of ip addresses to allow click save updating the createsfcontact quick action the external contact business object has a workflow for the outbound flow from to salesforce com you implement a quick action from within the workflow the quick action calls the salesforce com web service to update an existing contact record before you begin, go to the service desk console and open the salesforce com configuration that you added in adding the salesforce com configuration to ivanti docid 9depyiqhduh1onawo9iyn make a note of the recid you need to add the recid to the quick action follow these steps from the configuration console, click build > automation tools > quick actions for the externalcontact quick action, click add/edit next to it in the quick action editor, click the your actions tab and click createsfcontact make a note of the connection name by default, it is called createsfcontact from the configuration console, click extend > integration tools > web service connections (beta) to open the web service connections (beta) workspace under the calls from ivanti to external web services (outgoing) section, view the script called createsfcontact externalcontact on the integration script field, under the scripts heading, in the line that starts with var sfconfig = get("frs def integration sfdc config#", enter the recid at the end the line should look like this var sfconfig = get("frs def integration sfdc config#", recid ) click save updating the salesforce com connector before you begin, go to the service desk console and open the salesforce com configuration that you added in adding the salesforce com configuration to ivanti docid 9depyiqhduh1onawo9iyn make a note of the recid you need to modify some of the settings of the salesforce com connector to make it compatible for your application from the configuration console, click extend > integration tools > web service connections (beta) to open the web service connections (beta) workspace under the calls from external web services to system (incoming) section, click the edit icon next to heat salesforce connection click next for the sf contact reference service reference, in the scripts area, ensure that this line exists var sfconfig = get("frs def integration sfdc config#"," recid ") for the sf account reference service reference, in the scripts area, ensure that this line exists var sfconfig = get("frs def integration sfdc config#"," recid ") click save go back to the web service connections (beta) workspace click the expand icon next to the ivanti salesforce connection entry the application displays the associated service references click the edit icon next to the sf contact reference service reference the application displays the edit service reference dialog box for the service address (url) field, enter the url of the application server an example is https // heat sm server port / tenant url /updatecontact asmx click save repeat steps 8 to 11 for the sf account reference service reference, entering the url https // heat sm server port / tenant url /updateaccount asmx adding an api key you need an api key for the outbound messages, described in editing the outbound messages docid 9depyiqhduh1onawo9iyn create the api key by doing the following from the configuration console, click configure > security controls > api keys to open the api keys workspace from the key groups section, click add key group for the name field, enter dynamic web services click save key group click back under the key groups header, highlight dynamic web services click add api key the application displays the new api key page click save key click back the application displays the new api key make a note of the api key editing the outbound messages log into salesforce com the application displays the salesforce com home page at the top of the page, click the down arrow next to your name and select setup from the left panel, click build > create > workflow & approvals > outbound messages the application displays two outbound messages click edit to edit the first outbound message update the value for the endpoint url parameter to match the value from be sure to update the api key portion of the endpoint url see updating the salesforce com connector docid 9depyiqhduh1onawo9iyn for the api key click edit to edit the second outbound message update the value for the endpoint url parameter to match the value from be sure to update the api key portion of the endpoint url see updating the salesforce com connector docid 9depyiqhduh1onawo9iyn for the api key customizing the salesforce com form from the configuration console, click build > business objects open the external contact business object click the forms tab open the form to use to display the contact details for example, open the profile externalcontact form modify the form to add or rearrange the fields for the salesforce com contact data listed below accrecid contactowner reportsto fax otherstreet othercity otherstate otherzip othercountry otherphone click save from the configuration console, click build > business objects open the account business object click the forms tab open the form to use to display the account details for example, open the account form form modify the form to add or rearrange the fields for the salesforce com account data listed below sfaccountowner accountsite industry type url shippingaddress shippingcity shippingzip shippingstate shippingcountry click save additional ivanti information about the workflow for an external business object docid 9depyiqhduh1onawo9iynabout the salesforce com web service connection docid 9depyiqhduh1onawo9iyn about the workflow for an external business object the external contact business object has a workflow for the outbound flow from to salesforce com you implement a quick action from within the workflow the quick action calls the salesforce com web service to update an existing contact record do the following to find the script from the configuration console, click extend > integration tools > web service connections (beta) to open the web service connections (beta) workspace under the calls from system to external web services (outgoing) section, the script is called create sfcontact externalcontact about the salesforce com web service connection to view the salesforce com web service connection, follow these steps from the configuration console, click extend > integration tools > web service connections (beta) to open the web service connections (beta) workspace under the calls from external web services to system (incoming) section, click the edit icon next to heat salesforce connection the following is displayed in the response xml (optional) field \<soapenv\ envelope xmlns\ soapenv=" http //schemas xmlsoap org/soap/envelope/ " xmlns\ xsd=" http //www w3 org/2001/xmlschema " xmlns\ xsi=" http //www w3 org/2001/xmlschema instance "> \<soapenv\ body> \<notificationsresponse xmlns=" http //soap sforce com/2005/09/outbound "> \<ack>true\</ack> \</notificationsresponse> \</soapenv\ body> \</soapenv\ envelope> additional salesforce com information about the contact and account workflows docid 9depyiqhduh1onawo9iynmonitoring outbound messages docid 9depyiqhduh1onawo9iyngenerating the enterprise wsdl api file docid 9depyiqhduh1onawo9iynadding files to the wsdl and script repository docid 9depyiqhduh1onawo9iyn about the contact and account workflows salesforce com has two workflows one for the contact object and one for the account object follow these steps to view them log into salesforce com the application displays the salesforce com home page at the top of the page, click the down arrow next to your name and select setup click build > create > workflow & approvals > workflow rules select the workflow to view, either contact or account salesforce com displays the step 2 configure workflow rule page with this information field description edit rule object this value is prepopulated based on what you entered on the previous page in this case, it is either contact or account rule name the name of the workflow rule description an optional description evaluation criteria evaluate the rule when a record is specifies when to evaluate the rule rule criteria run this rule if the following specifies when to run this rule insert field the field to evaluate functions lists functions that you can enter into the insert field area click next salesforce com displays the step 3 specify workflow actions page salesforce com displays the edit outbound message page with the following information field description name the name of the outbound message unique name a unique name for the outbound message description an optional description endpoint url the url of the endpoint followed by ?apikey= and a valid api key an example for the contact object is https //mycompany saasit com/ frs ctp demo1/updatecontact asmx?apikey= d6efd03356cd41caaddcf37443e33c61 and an example for the account object is https //mycompany saasit com/ frs ctp demo1/updateaccount asmx?apikey= d6efd03356cd41caaddcf37443e33c61 user to send as the name of the user sending the outbound message protected component specifies if the component is protected send session id specifies to send the session id contact fields to send the fields to include in the outbound message monitoring outbound messages follow these steps to monitor the outbound messages log into salesforce com the application displays the salesforce com home page at the top of the page, click the down arrow next to your name and select setup select monitor > outbound messages verify that there are no delivery failures outbound message delivery failure generating the enterprise wsdl api file the salesforce com package includes the enterprise wsdl file for salesforce com for the integration if you modify the schema for the account or contact business objects from salesforce com, you must regenerate an updated wsdl from salesforce com follow the steps below to update the file after you regenerate it log into salesforce com the application displays the salesforce com home page at the top of the page, click the down arrow next to your name and select setup from the left panel, click build > develop > api click generate enterprise wsdl save the enterprise wsdl file to a convenient location open the enterprise wsdl file with a text editor every time that you regenerate the enterprise wsdl file, you must add the xsd\ attribute as shown below \<complextype name="listviewrecord"> \<sequence> \<element name="columns"type="tns\ listviewrecordcolumn" maxoccurs="unbounded"/> \</sequence> \<xsd\ attribute name="tmp" type="xsd\ string" /> \</complextype> adding files to the wsdl and script repository in release 2016 1, we introduced a repository where you can store wsdl files and scripts we recommend that you store the salesforce wsdl files in the repository make sure that the name of the wsdl file that you add to the repository matches the name of the file in salesforce follow these steps to add a wsdl file to the repository from the configuration console, click extend > integration tools > wsdl and script repository to open the wsdl and script repository workspace click new file to add a wsdl file in the type field, select wsdl enter a name in the name field click upload to upload the new wsdl file navigate to the file and click open click save
