Let’s face it, Page Layouts are the Salesforce feature we all love to hate. You can’t break them into pieces, you can’t show parts conditionally, you can’t close sections by default…. and the list keeps going. To make it worse, it is the easiest and nearly only non-code way to show the critical data to your users. In short, the definition of a “Necessary Evil”.
However, in Summer ‘20, Salesforce is giving us a Non-GA Preview of Dynamic Forms. Safe harbor aside, we are all breathing a sigh of relief that this much-needed feature is finally on the horizon. If I were a betting man, I would say that this will be moved to GA before the year is out, if only because I can envision throngs of consultants and clients demanding that they make it so.
Want to see what this is about? Keep reading, and I’ll do my best to give you a short but comprehensive view of this feature as it appears in the pre-release orgs as of the writing of this article.
The first step you have to take is enabling this feature. For that, go to “Record Page Settings” in the Setup menu and simply toggle this feature on.
Now that we’ve turned it on, let’s use it! In this org I had a Custom Object called
Workspace__c that had a layout that needed some TLC. This layout has several sections, with some fields that are not always critical and others that needed to be highlighted for certain users. Here it is.
The table is now set. Next we’re going to click on “Edit Page” and get ready to roll out Dynamic Forms for this layout. We could choose to roll our own forms from scratch, but Salesforce helpfully provides us with an “Upgrade” button. While the result of that “Upgrade” is not earth-shattering, it is great for our use case. Obviously, your mileage may vary, but if the “Upgraded” look-and-feel is not for you then you can either change the result or start from scratch.
First you have to click on the “Details” tab and select the layout component. When you do that, the “Upgrade” button will appear on the right sidebar.
Clicking that button starts a two-screen wizard. The first screen on that wizard is informational, but the second one asks an important question. What layout will you be upgrading? If you have more than one layout, this is a question that you wish to ponder upon a little bit. Since you can roll your own Dynamic Forms, which layout you upgrade is not a huge deal but, at the same time, you can save a lot of time if you pick the layout that will give you the upgraded version closest to your desired result. Keep in mind that there are some (reasonable) limitations to the upgrade, but I think those won’t affect the large majority of people.
In this case, I only had one layout to choose so I didn’t exactly have a choice to make.
Click “Finish” and, voilå, the end result.
It is not exactly a work of art, but you can see an accordion with two sections, and the fields arranged in the same order I had it before.
The strange thing is that the top of the accordion showed the main section of my layout, and the other three sections are now bunched in the “Additional Fields” accordion section. I had anticipated that each section was going to be its own accordion section, and I think that would make more sense, so I wouldn’t be surprised if that behavior evolves before this feature makes it into GA.
The big deal here is that each field and section are now a component, and clicking on them brings us options that, by now, we’re all very familiar with.
If you skipped all of this because you chose to roll your own, then you’ll be interested to find, in the left sidebar, a new tab with some useful options
Fields have to be placed inside of a section, but it is really easy to do so. Sections can go almost anywhere on a page and, here is the $1,000,000 feature, they have the same visibility options that any other component has.
This means you can hit the “Filter” button (I am sure some eagle-eyed readers spotted that button in some of the screenshots above) and go to town with displaying or hiding sections according to whatever logic your business needs. It’s as cool as it sounds!
In this case, I simply wanted to create a brand new section with two fields in it. I placed it in the right column and selected the “2 columns” option. Since there really wasn’t enough space Salesforce helpfully put the columns one on top of the other, showing me how nicely responsive this feature is.
I’m done! I have a custom layout now and was able to separate a couple of fields to their own section, so they are immediately visible for those that need that need it, instead of them having to go searching for it.
I was able to do this with point-and-click, and in about 10 minutes…. talk about a huge improvement over the plain, old and soon-to-be-forgotten Page Layouts!
It’s clear that this feature is still being worked on, as it contains a few but important caveats.
The first, and most important, is that this feature only works on Custom Objects. Yes, you read that right, you can’t do this to your Account or Lead layouts yet. I think this is a temporary restriction, but as long as it exists it will be an important one.
The second one is that it is not mobile-ready. As you might’ve seen in the screenshots above, when you upgrade a page to this feature you will see a “<Your Layout> – Mobile” part added to your Page so your mobile users can still see the data you’re displaying. Again, I suspect this restriction will be lifted sooner rather than later.
It is also not supported on Custom Templates or templates that use “pinned-region”, so beware.
Overall, this feels like a huge step forward from Page Layouts. Showing fields based on conditions, getting less needed fields banished to a different tab, or reordering them in a page for different profiles is going to make a huge positive impact in the life of users. Also, aside from the benefits, we discussed here, we can expect a performance bump from loading fields in smaller chunks which will be a boon for organizations that have objects with hundreds of fields.
Don’t forget to read the follow-up to this article, addressing Dynamic Actions!
theCodery understands the challenges in modern tech stacks. We have developed a personalized approach for each Salesforce Cloud implementation while leveraging our deep been-there-done-that and best-practice expertise to ensure you get the most value from your Salesforce deployment. We take an agile approach with all development, optimization, and integration projects. Whether you are trying to broaden your engineering and development capabilities, reduce technical debt, integrate tools you are unfamiliar with, or create new applications, theCodery has a proven track record of solving problems and streamlining complexity.
If you have any questions for theCodery about our team, our process, or the clients, please reach out to us at: https://www.thecodery.io/contact-thecodery
theCodery: Accelerate your time-to-value on Salesforce with a trusted partner that delivers scalable architectures that are tailored to delight your customers.