We are hoping to soon migrate to Salesforce Lightning Experience (LEX). We have migrated many of our users but before migrating the remaining large teams I have a problem to solve.

We currently use the Salesforce Console for Service Cloud and on our Contact, Case and Work Order records we include a button that opens up a Visualforce page to offer the user choices based on the record detail. This visualforce page includes multiple buttons but when one is selected it opens a new Object Edit screen (normally "Orders") with as many fields prepopulated as possible, it accomplishes this via Javascript and URL hacking in Salesforce.

I know the URL Hack was unsupported and has been replaced with "Publisher Actions" but unfortunately I can't see how we can prepopulate fields based on the record detail (and I've struggled with lookups). My tests simply allow me to store field default values regardless which will leave the users completing more work in LEX than in Classic and that simply means we won't yet migrate these users (really want to avoid this).

Can anyone advise the best solution to the above in LEX? Components?


EDIT- A key piece of data to prepopulate on the new record is taken from the visualforce page, it isn't available on the record detail.

  • what are you prepopulating whether it is the existing record details or anything else? Aug 13 '18 at 9:31
  • The fields are all available on the record detail (contact.Id, contact.homephone etc) except one field which will be populated from the Visualforce date (it's essentially a calendar and the date the user picks prepopulates a field on the Order). I need to pass this piece of data and I would like to do it from the existing Visualforce page. Aug 13 '18 at 13:11

Browse other questions tagged or ask your own question.