29
IMPLEMENTATION GUIDE

Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

IMPLEMENTATION GUIDE

Page 2: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Implementation Guide

© 2016-2020 To A Finish LLC 12407 MoPac Expwy N • Suite 250

Austin, TX 78758 Phone 512.436.3464 • Fax 267.935.7773

Page 3: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

Table of Contents

Introduction to this Implementation Guide ____________________________ 2

Introducing Salesforce.com ______________________________________________ 3

Introducing To A Finish _________________________________________________ 4

Introducing the Highlighter App __________________________________________ 5 Free vs. Paid App Comparison _________________________________________________ 5

Before You Begin, Requirements _________________________________________ 6

Warning: Test First! ____________________________________________________ 6

Configuration ____________________________________________________ 7

Setting up Your Org’s “Remote Site” ______________________________________ 8

Setting up “My Domain” in Your Org ______________________________________ 9

Configuring Actions ___________________________________________________ 10

Turning ON Highlighter in Lightning ______________________________________ 13

Turning ON Highlighter in Classic ________________________________________ 15

Upgrading Your App to the Paid Version __________________________________ 17

Advanced Topics _________________________________________________ 18

Options _____________________________________________________________ 18

User-Specific Highlighter Actions ________________________________________ 20

Custom Objects in Classic ______________________________________________ 21

Edit Pages with Highlights ______________________________________________ 22 Custom Edit Pages in Lightning ________________________________________________ 22 Important Note for Using Custom Edit Pages in Classic _____________________________ 23 Set Up the Remote Site ______________________________________________________ 23 Add the "Create Edit Page" Link _______________________________________________ 24 Enabling the New Custom "Edit" Page __________________________________________ 25

Not Yet Working… ____________________________________________________ 26

Feedback and Remote Access ___________________________________________ 27

Rating Highlighter ____________________________________________________ 27

Version 2020.02.05

Page 4: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Introduction to this Implementation

Guide

Introducing all the key components of the Highlighter App for Salesforce.com

his manual will help you through the implementation of the Highlighter app for your Salesforce.com Org. You can read this chapter if you desire to do so, but most users can probably start at the next chapter, where the installation and configuration instructions begin.

Thank you for considering our app in your organization.

To succeed in the installation process, you will need to pay close attention to all of the information contained in this manual. We recommend reading through this first chapter before you begin, and then reading through each section as you work on it.

The Icon Key to the left shows the icons you will be seeing as you go through this manual. The more advanced readers can skip

some of the details as indicated by the appropriate icon.

This manual is a work in progress, so please do take notes and let us know if you run into any issues with the text or if you believe there is a better way to accomplish the tasks we describe.

Chapter

1

T

I C O N K E Y

Details You Can Skip

Don’t Miss This!

Sample Code

Danger!

Page 5: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Introducing Salesforce.com Salesforce.com's CRM solution is broken down into several broad categories: Sales Cloud, Service Cloud, Data Cloud (including Jigsaw), Collaboration Cloud (including Chatter) and Custom Cloud (including Force.com). Below, we’ll highlight a few of them.

The Sales Cloud includes a real-time sales collaborative

tool called Chatter, provides sales representatives with a customer profile and account history, allows the user to manage marketing campaign spending and performance across a variety of channels from a single application, tracks opportunity-related data including milestones, decision makers, customer communications, and other information unique to the company's sales process. Automatic email reminders can be scheduled to keep teams up to date.

Other activities on the Salesforce cloud include using the Jigsaw business data to access business contacts, and designing and automating processes in Salesforce CRM.

The Service Cloud provides companies with a call center-like view that enables them to create and track cases coming in, and

automatically route and escalate what’s important. The Salesforce CRM-powered customer portal provides customers the ability to track their own cases, includes a social networking plug-in that enables the user to join the conversation about their company on social networking websites, provides analytical tools and other services including email, chat, Google search, and access to customers' entitlement and contracts.

Salesforce.com's platform as a service (PaaS) product is known as Force.com. The Force.com platform allows external developers to create add-on applications that integrate into the main

salesforce.com application and are hosted on Salesforce.com's infrastructure.

These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax for building user interfaces in HTML or Flex).

In addition to the web interface, salesforce.com offers a SOAP/REST Web service API that enables integration with other

systems.

You can read more on Salesforce.com at WikiPedia.com.

The Sales Cloud

The Service Cloud

The Force.com

Platform

Web Services

Page 6: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Introducing To A Finish To A Finish™ is a concept company that has grown out of a desire to improve the Salesforce CRM consulting industry. Too often we have found the priorities of consulting companies skewed towards speed and profitability, rather than excellence and long-term success. This is not a blanket statement about all consulting companies, rather a general statement of the industry at large.

We believe there is a different way of consulting that will bring ultimate success to any CRM venture. The biggest difference is time. We give special attention to steps that are often rushed or even overlooked entirely in a typical project. Things like in-depth analysis, getting to really know a business, documentation and end-user involvement in the process help us set up a project for success. Ultimately, we must spend the time to do the work until it is absolutely complete; To A Finish™.

We are not guaranteeing our clients will never see a bug or have to rethink initial strategies. Reworking is actually part of the process of achieving success. What we are saying is that our strategies and focus will minimize unforeseen problems and achieve for us an ultimately successful project completion. We put our name on our work and stake our reputation on quality service.

Test us. Allow us to show you the difference of doing work To A Finish™.

You can find more about To A Finish at www.toafinish.com

When you finish a thing you ought to be able to say to yourself: "There, I am willing to stand for that piece of work. It is not pretty well done; it is done as well as I can do it; done to a complete finish. I will stand for that. I am willing to be judged by it."

- O.S. Marden

Page 7: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Introducing the Highlighter App Salesforce.com allows you to customize standard layouts to a great degree. However, one thing you cannot do is highlight or dynamically change elements. Now, you can highlight virtually any field or button on a page.

Encourage the right process and highlight important elements on most Salesforce.com records. Until now, contextual highlighting has only been available in reporting. Now you can highlight virtually any field on a page. You can also highlight, dynamically rename, hide or disable buttons on your page layouts.

Use your imagination and mold the Salesforce.com standard layout to:

• Bring attention to fields that are important • Color elements showing the process next steps • Hide or disable buttons that do not apply currently

Free vs. Paid App Comparison

The Paid version of Highlighter includes many advantages. See a chart comparing the versions below:

Feature Free Paid

Technical Support √

Number of Actions 5 Unlimited

Standard Objects and Fields * √ √

Standard Buttons (Classic only) √ √

Custom Objects and Fields √

Custom Buttons (Classic only) √

Custom Edit Page Highlights √

* Including Accounts, Assets, Campaigns, Cases, Contacts, Events, Leads, Opportunities, Orders, Products and Tasks. (Some standard objects, like Quotes, are not compatible.)

It is time. Make Salesforce.com yours!

Page 8: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Before You Begin, Requirements Before you begin working with our app, you must have several components already in place and configured. We will not cover these components in detail, but will at least point you to where you can get the information you need.

A production system Salesforce.com Org will be needed in order to set up the integration. A sandbox will be very helpful in this process

as well. Any edition of Salesforce.com should work.

Sales Cloud

Service Cloud

Custom Cloud (Force.com)

Warning: Test First! Before you deploy this solution to your production Org, it is strongly recommended that you test it in a sandbox first.

Please always test any admin app of this type first.

Test. Test. Test.

Highlighter is really on the cutting edge of what Salesforce.com can do in its current user interface, so we are expecting to discover some problems along the way. While we are no longer in official BETA, we are still an app in its infancy. Help us out!

If you like the app, please leave us a positive review on the AppExchange. But if you run into issues, please don't leave them there for the world to see. Rather, contact us at [email protected] and we'll work together to make this app To A FinishTM.

* Note: This app does not currently work with Mobile.

Salesforce.com

Page 9: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Configuration

The steps necessary to set up the app for full use

he initial steps in the configuration are completed by first installing the package from the AppExchange.com app store. Make sure to Install for All Users. Even though only an Admin will configure it, you need to install for All Users so that they can access the pages correctly.

Next, click: Setup Apps Packaging Installed Packages and click on the Configure link next to the Highlighter package.

Chapter

2

T

Page 10: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Setting up Your Org’s “Remote Site” The first thing you will see when you go to configure your Highlighter app, is a warning telling you that you need to set up a “remote site” before you can use the app. “Remote site” is the term used for the URL to access your Org’s metadata.

* Please note that To A Finish (the makers of this amazing app) cannot access your Org as this term might imply to some. This step is necessary so that you can access your own metadata (data about your data, in this case fields and buttons) through our app.

Read more about the Remote Site settings from the Salesforce.com Developer documentation here.

If you see this error, please follow these steps:

1) Copy the endpoint indicated in the error, starting with the “https://” and all the way through the end.

2) Now, go to: Setup Security Remote Site Settings.

3) Click on the New Remote Site button.

Page 11: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

4) In the Remote Site Edit dialog, enter any name for the Remote Site Name, and then paste the URL you copied in step #1 into the Remote Site URL field.

5) Make sure the Active checkbox is enabled, and press the Save button.

6) Now go back to configure Highlighter. Go to: Setup Apps Packaging Installed Packages and click on the Configure link next to the Highlighter app.

You should see the Highlighter setup page, alerting you that you have not yet set up any Highlighter Actions.

Setting up “My Domain” in Your Org You will not be able to turn on Highlighter in Lightning unless the My Domain feature is enabled and turned on for all users.

If My Domain is not set up, you can go to Setup Company Settings My Domain to set it up. And remember that you will have to go through the whole process until the end (logging in and enabling for all users) before it will work.

You can read more about My Domain on the Salesforce Help website:

https://help.salesforce.com/articleView?id=domain_name_overview.htm

Page 12: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Configuring Actions To add a new action, follow these steps. If you get lost along the way, please contact us at [email protected]. While we can only provide support for users of the paid version, we will attempt to answer any quick questions that come in via email.

1) Click the New button.

2) Select the object you wish to highlight from the Object dropdown. Only standard objects are available in the Free version, but you should see all objects in the Paid version.

*Note: a few standard objects, like the Quote object, are not compatible with Highlighter.

3) Select one of 7 options from the Action dropdown. These options are described below (buttons are currently not controllable in Lightning):

Action Description Lightning

Highlight Button

This allows you to color a button on the page for the object selected.

Not Yet

Highlight Field This allows you to color the background of a field on the page for the object selected.

Yes

Disable Button This allows you disable a button. Users will still see it, but won't be able to click on it. *

Not Yet

Hide Button This will actually remove the button from the layout.

Not Yet

Rename Button

This will rename the wording on a button. Not Yet

Rename Field Label

This will rename what the field is called on the screen.

Yes

Hide Field This is used to hide a field from the layout. This will leave a blank space where the field used to be.

Yes

Page 13: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

4) Select a component from the Component Name dropdown. If you selected "Highlight Field" as the Action, then a list of all fields in the selected object will be available. If you selected one of the other options, then you will see a list of buttons for the object. (Custom fields and buttons are only available in the Paid version.)

5) If you selected an Action that requires a Color, you have two options.

a. First, you can click into the field to choose which color you want; or type in the color code, if you are the digital artist type.

b. Second, you can select a Background Formula for the color. The formula field you select must display a color code. By using this technique, you can show different colors depending on whatever criteria you build into your formula. This is recommended above creating separate actions on the same field.

Note: To select nice colors, you use a website like this one to select a nice color code, or if you can copy Salesforce’s Lightning design colors.

6) Use the same technique to select a Font Color, or we often recommend using the Automatically Select Color option, which does not ask for a particular color, but will rather use either white or black, depending on the shade of the background color you selected. This avoids having hard-to-read fields.

7) If you selected the "Rename Button" Action, then you can enter the new button name in the New Value field.

At this point you are done with your action IF you want it to always happen.

Page 14: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

8) If you want this action to only happen sometimes, press the Add Filter button. This will open up a new area for a filter.

9) Select a field from the Field dropdown. These will be the fields from the Object you selected in step 2. Note that the field you select here does not have to be the same field you may have selected in the Component Name above. This field is the one that will dynamically determine IF this action should take place.

10) Select an Operator from the dropdown list.

• Choosing “==” means equals,

• Choosing “!=” means not equals.

11) If the field you selected is a Date or Date/Time field, then you must select an option in the Value Type field. This allows you to either specify a particular date or date/time or select from a list of Date Literals, like TODAY, NEXT_WEEK, THIS_YEAR, etc.

12) Type in a value into the Value field. Values can be entered here directly, or for picklists, checkboxes or date literals, values can be selected.

Note: We recommend that you use as few filters as possible in order to cut down on the time it takes for the page to load. If you have multiple filters for a particular action, the best practice is to create a Boolean formula field that gives you either a True or False result, and then use that here. However, you are also able to create multiple filters on one action. To do so, continue reading.

13) Click the Add Filter button again to add an additional filter, if necessary. Once you do this, you should go back to the first filter you added and select an option from the "And/Or" dropdown.

&& This filter AND the filter below need to be true in order for the action to run.

|| This filter OR the filter below can be true in order for the action to run.

Note: we do not support nested filters or mixing && and || filters. Use formula fields for that.

14) Once you are done adding your filters, press the Save button and you will be taken back to the list of Actions.

Page 15: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Turning ON Highlighter in Lightning Once you have created actions for one or more objects (you are limited to 5 actions in the Free version), you must follow these steps to turn it on for all of your users.

1) Browse to aa record from object you want to Highlight (again, the Free version is limited to standard objects). In this example, we will use Opportunities.

2) Click on the Edit Page from the gear icon at the top-right of the page:

3) The page in the middle should look like the page that you are currently using. The first thing to do is to create a tab to put the Highlighter record detail in.

a. Click by the “Details” tab, then press the New Tab button to add a new tab. Give it a name like “Details HL” which we did here.

b. Drag the recordViewWithHighlights custom managed component to this new tab area. (You can also try the older HighlightDetail one.)

Page 16: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

c. After a few seconds, you will see the custom Lightning Web Component grow into a detailed view of the record. Once this happens (or if it doesn’t happen within a few seconds) press the Save button at the top-right.

d. If this is the first time you have edited this object’s Lightning layout, you will be asked to Activate the page. Go ahead and do that. You will then be presented with the options shown below. Press the Assign As Org Default button, and then choose “Desktop” press Next and Save.

e. Now press the Back button at the top and it should take you back to the record view, this time with a new tab.

Note: Once you are satisfied that this tab is working well, you can, of course, replace it by removing the other “Details” tab, and renaming your new tab as desired.

Page 17: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Turning ON Highlighter in Classic Once you have created actions for one or more objects (you are limited to 5 actions in the Free version), you must follow these steps to turn it on for all of your users.

1) Go to the "Buttons, Links and Actions" area for the Object you want to activate Highlights for. For example, if you wanted to activate Opportunities, then you

would go to: Setup Object Manager Opportunities Buttons, Links and Actions.

2) Click Edit on the View item.

3) This will take you to a page where you can select to override the standard layout with a Visualforce Page. Select the appropriate Highlighter VF page from the drop down, and press the Save button.

Page 18: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

* Note that your existing layouts will still show up and you will continue to edit them the same way you do now. The Visualforce page you are selecting is a "wrapper" that sits on top of the standard layouts you manage.

4) If you did not install the App for "All Users", some of your regular users will not be able to see this page and will get an insufficient rights error. If that happens, please go to the Profile for that user and add this Visualforce page to the Visualforce pages they are allowed to see.

5) And ... you are done! Go to a record for the object that you put an action for and see the results!

Page 19: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Upgrading Your App to the Paid Version The free version of the app will allow you to maintain up to five Highlighter Actions, on standard fields, in a single Org. The paid version gives you much more. See page 7 of this Implementation Guide for a list of the advantages of the paid version.

To upgrade to a paid version, you will need to go to www.HighlighterApp.com and purchase the upgrade or email [email protected] and give the following information:

• Your Org Id. (Go to Setup Company Settings Company Information)

• Billing Contact Name and Billing Address. This is the information where an invoice for the paid version will be sent.

The cost of the upgrade is dependent on how many licenses you need, with the latest price always on the website above. Discounts are available for over 10 licenses.

The Upgrade Key should be emailed back within 24 hours, usually much less time than that. Once you receive it, click on the Upgrade button and paste the key into the box.

Once you have entered a valid key, press the Validate button to unlock the paid functionality in the app.

Information on technical support will also be emailed to you at the same time as the key. Use this information for any questions you might have. The next chapter describes some of the features available only in the paid version.

Note: if you want to test the paid version of Highlighter in your sandbox or dev org, please email us the Org ID and we’ll happily provide you with an upgrade key that works only in that org.

Page 20: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Advanced Topics

he Highlighter for Salesforce app works great for many users, but if you want to do some advanced things, you will need to pay the small upgrade fee (see www.HighlighterApp.com for pricing). Of course, if you want to try the paid functionality before buying, please let us know as explained on the prior page, and

we’ll let you test it out.

Options A few features are available only by contacting us at [email protected]. We will need to either remotely access your org to set these up for you, or in some cases, we may be able to talk you though the setup.

Currently, we have a new Options button at the bottom of the app configuration page. This will be available only to Paid users. Several options are available, as described below:

Chapter

3

T

Page 21: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Lightning Only

Hide Logo and Refresh Hide the logo and the Refresh Button from the bottom of the detail page.

Background and Border Add Background and margin when adding the component without tab

Classic Only

Do Not Refresh Do not refresh page after highlights come through.

Hide Edit Layout Do not show the "Edit Layout" link at the top of the page. (Speed Improvement)

Quick Access Menu Show Quick Access Menu for users. (Enabling slows page down a bit.).

Action Suppression

Stop Disable Buttons

These options allow you to potentially speed up the application by not checking for this type of actions. Note: buttons are currently available only in Classic.

Stop Hide Buttons

Stop Hide Fields

Stop Highlight Buttons

Stop Highlight Fields

Stop Rename Buttons

Stop Rename Field Label

Field Suppression

Disable Checkbox Fields These three options allow you to potentially speed up the application by ignoring these fields when canvasing for potential Actions.

Disable Formula Fields

Disable Long Text Fields

* Please keep in mind that these options are all or nothing settings. We cannot turn them on for only one user. It must be for all.

Page 22: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

User-Specific Highlighter Actions In a future release we plan to allow Highlighter actions to be filtered by user group or profile. However, for the time being, the only way that user-specific actions can be employed is by using a formula in the Highlighter action filter or color formula.

1) If using it in a filter, then create a formula field in the object where you are setting up the Highlighter action. This field can be called something like User Profile and should contain only the following code:

2) Next, use this field inside of a Highlighter Action, as is done in this example, where you have potentially only one filter restricting the action to work only for one particular profile.

3) The other way to do it would be to include the profile name inside of a formula field that would highlight a field, for example, if the person was someone in charge of data management. Something like this:

if ( $Profile.Name = "Data Manager", "#FF0000",

if ( $User.Id = OwnerId, "#00FF11", "#FFFFFF" ) )

4) And then this field could be used as the Color Formula value.

Please keep in mind that you will need to create this formula field in each object where you want to have conditional highlights only for a particular profile.

Note that as shown above, you could use this to get more specific than the profile, by putting the filter conditions inside of the formula field itself, or even get more granular by employing the $User or $UserRole options inside of the formula.

$Profile.Name

Page 23: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Custom Objects in Classic As soon as you upgrade the app, you can add highlights for custom objects. However, you need to do an extra step for each custom object that you want to highlight.

1) Go to the "Visualforce Pages" area: Setup Custom

Code Visualforce Pages and click on the New button.

2) Enter a “Label” and “Name” for the new page and then paste in the following code, changing everywhere it says “XXX” to the actual API name of your custom object, and where it says “YYY” with the label:

3) Press the Save button and if you replaced all of the areas correctly, you should not receive any errors.

4) Click again on the list of Visualforce pages, and this time click the “Security” link next to the new page you created. You will want to release it to everyone.

5) Next, you want to set the view page for this object by going to Setup Object Manager and clicking on the object you want to set up.

6) On the left, click on the “Buttons, Links, and Actions” section and click Edit on the View item. In the next screen, select the Visualforce Page that you created in step #2 and Save.

7) Test by going to a record in your custom object, and you should see any highlights you have set up.

<apex:page standardController="XXX__c" title="YYY: {!XXX__c.Name}" id="pg">

<apex:Detail

subject="{!$CurrentPage.parameters.Id}"

relatedList="true"

inLineEdit="true"

relatedListHover="true"

showChatter="true"

title="true" />

<highlighter:HighlighterScript

</apex:page>

Note: this does not apply to Lightning, as custom objects are configured in the same way as standard objects – but only work in the Paid version.

Page 24: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Edit Pages with Highlights Custom Edit Pages in Lightning

The recordViewWithHighlights Lightning Web Component includes built-in inline editing, with support for field Highlights, so setting up the Edit page with highlights might not be necessary. However, if you desire to do so, there are two ways of doing it.

1) Go to Setup Object Manager and navigate to the object you wish to set up.

2) Click on “Buttons, Links and Actions” on the left. Click on Edit to change the standard Edit action.

3) Now select “HighlighterEdit” as the Lightning component to use, and Save.

4) Now wait 10 seconds (seriously) and refresh the page multiple times on the record where you want to use the custom Edit screen. It will take Lightning a while to figure it out, but eventually you will be presented with a new version of the Edit page with highlights. You will know it has happened when the popup screen is slightly wider and takes a bit longer to load.

Page 25: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Important Note for Using Custom Edit Pages in Classic

Please note that using custom edit pages in Classic mode is no longer recommended by Salesforce, and the biggest reason is that it requires the creation of JavaScript buttons, which are discouraged for security reasons.

Also, once you start using custom edit pages you are entering a realm where you will have more administration than is typically needed in a Salesforce environment. Usually if you want to make a change to the layout like add or remove a field, you just have to click the "Edit Layout" link and make the change. However, once you have implemented this, you will have two additional steps:

1. You will need to re-create the edit page by clicking on the "Create Edit Page" link (you might need to add this link to your layout first). This is shown in steps 7-11 below.

2. You will need to give users access to this page again by updating the security for it. This is shown in steps 12-14 below.

All of the JavaScript code referenced in the pages below can be found in the "js" folder in our GitHub repository:

https://github.com/ToAFinish/highlighter

Set Up the Remote Site

1) First, create a Remote site that references your own org. For example, if the URL when you click on your "Home" tab is: https://na35.salesforce.com/home/home.jsp, then you would create a remote site like this:

a) Switch to Classic mode.

b) Go to Setup -> Administer -> Security Controls -> Remote Site Settings

c) Click the "New Remote Site" button

d) Add a new record called whatever you want (e.g. "MyOrgAPI") and then under Remote Site URL, enter: "https://na35.salesforce.com/" and save.

* Note: If you have a custom domain then you will need to adjust these instructions accordingly.

Page 26: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Add the "Create Edit Page" Link

2) The second thing that we need to do is create a JavaScript link that will be used to create our edit page. We will assume in these instructions that we are creating it for Leads, but the instructions can be carried out also for Contacts or Accounts, by tweaking them slightly.

3) Go to our GitHub repository. Click on the "create_lead_edit_link" page and copy all of the code to the clipboard. Note that when copying the code, do not include the line numbers. Start where the code starts at the top of line 1 (with "{!REQUIRED...") and go all the way to the last line.

* Note: If you are working on Accounts, there is one special requirement for Person Accounts. The regular “create_account_edit_page” will not work for Person Accounts, so you will need to contact us if you need this.

4) Go back to Salesforce and go to Setup -> Customize -> Leads -> "Buttons, Links and Actions" and click on the "New Button or Link" button.

5) In the create button page, select the following:

a) Label = "Create Edit Page" (you can change this if you wish)

b) Display Type = "Detail Page Link" (you can change this to Detail Page Button if you wish)

c) Behavior = "Execute JavaScript"

d) Content Source = "OnClick JavaScript"

6) In the body of the button, past the code you copied to the clipboard in step #2. Save and press "OK".

You have now created the link and you can add it to the Lead Layout so that you can use it. Just one quick question, though...

Does the object you are wanting to set up (e.g. Leads) use Record Types? In order to check: go to Setup -> Customize -> Leads -> Record Types, do you see any record types listed? If so, you will need to comment line #7 and uncomment line #9. Save.

7) Go to Setup -> Customize -> Leads -> Page Layouts

Page 27: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

8) IF you have more than one layout, you need to know which of the layouts are being used. Click on the "Page Layout Assignments" and make a note of which page layouts are used. For each one, you will need to do steps 9-14.

9) Click "Edit" next to the Page Layout you want to modify

10) Scroll down to the "Custom Links" section and click on the "Custom Links" list in the top toolkit. Drag down the "Create Edit Page" link into the "Custom Links" section. Save the Layout.

11) Now go to a record of the type you just updated the layout for (e.g. Leads) and you will see the "Create Edit Page" link. Click this link to create the edit page. You will see it open up. You can Save or click "Cancel" if you wish.

Enabling the New Custom "Edit" Page

Now we need to do two steps in order to use the new page we created:

12) First, to enable the new custom Edit page on record edits or inserts, please do the following. Go to Setup -> Customize -> Leads -> "Buttons, Links and Actions" and click the Edit link on the "New" and/or “Edit” labels.

13) Select the HL Lead Override (New/Edit) page and Save. Now, depending on if you did the “New” and/or “Edit” ones, when you add a new Lead, the custom Edit page should display (if you have access to it through your profile), and also when you Edit a Lead, the new page should show up.

After testing as the System Administrator, now deploy to users.

14) We need to give everybody access to this new Edit page that was created. Go to Setup -> Build -> Develop -> VisualForce Pages.

15) Find a page with a name starting with "HL" and then named with the object name followed by the record type name, or "Standard" if no record types exist. For example, for Leads, it would be "HL Lead Standard". Click the "Security" link next to this page.

* Note: You might want to sort the list of VisualForce pages by the Last Modified Date so that the latest page created will be at the top.

16) Move over as many profiles as you want from the "Available Profiles" to the "Enabled Profiles". If you only want some of your users to use the new edit page with auto-complete, then don't put their profile into the "Enabled Profiles". Save when done.

You will need to do the same steps 2-16 for the Account and Contact objects.

This is a fairly new option for Highlighter, so if you run into any issues, don’t hesitate to contact us at [email protected] and we’ll gladly help you get it sorted out.

Page 28: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Not Yet Working… A few things do not yet work with Highlighter for Salesforce. These are known deficiencies but if they are important to you, please let us know. The more we hear from customers, the more we will know which functionality to dedicate the most time to.

1) The View State functionality with for Salesforce developers does not allow Highlighter to work in Classic mode. You can turn this on when “Development Mode” is active for any system administrator.

Please turn this feature off in order to work with Highlighter.

2) If you have the Maps and Location Services feature turned on for Leads, Contacts, and Accounts, it will not work if you are using Highlighter.

3) Salesforce Mobile is not currently compatible with Highlighter.

Page 29: Implementation Guide › highlighterapp › ...These applications are built using Apex (a proprietary Java-like programming language for Force.com) and Visualforce (an XML-like syntax

H I G H L I G H T E R F O R S A L E S F O R C E . C O M

Feedback and Remote Access

Please send us your feedback to [email protected], and don't hesitate to email if you have questions about these instructions. When you do, you might want to give us remote access, as shown in the screenshot below, so that we can log in as you to see the problem.

Rating Highlighter We greatly enjoy being able to provide users with and app they will find useful. So, if you like the app, please leave us a positive review on the AppExchange:

https://appexchange.salesforce.com/listingDetail?listingId=a0N30000000q4OxEAI

But if you run into issues, please don't leave them there for the world to see (unless we can’t get it resolved). Rather, contact us at [email protected] and we'll work together to make this app To A FinishTM.

Thank you!

The To A FinishTM team.