2

We have a very large internal database application that the company relies on every day. Because the company is growing so fast, the current database system is not going to be able to handle the additional load, and we're considering moving to the Salesforce platform.

Much of the daily use of the current system relies on complex list views of records. These views have dozens of fields, often conditionally formatted to provide easy visual feedback. They also have icons that appear when various states of each record meet various criteria. Additionally, the entire record can appear with a colored background to indicate other important states. Clicking various checkboxes edits the record, often moving it further down the pipeline so that the next person who needs to do something with it will see it.

I've been studying Salesforce for a couple of weeks, going through the trail. So far, it seems that the best way to build such an interface in Salesforce would be to use a Lightning Web Component, writing the HTML, CSS and JavaScript to handle these conditional formatting rules. I will be continuing my education, but I want to know if I'm on the right track with that deduction or if there is another tool that I should at least take a look at.

1 Answer 1

2

A variety of salesforce tools to consider, based on your requirements.

From the declarative side, "List View" may work. Or if they are too limiting, you could use other options.

List View is a reserved word in salesforce administration. When you visit a sObject's splash page salesforce lets you choose or define your own List View criteria (columns, filters) which can be accessed by you, or shared to others based on its sharing definition. If in Classic experience each List View produces a URL which is nice to bookmark & share with peers; However last i checked in January 2021 Lightning (lex) sometimes obfuscates the url of List Views (iirc), sometimes not clear from the browsers displayed url what the unique 15 digit id of a lex list view is; which is a little unfriendly from the perspective of eyeballing URL suffixes as we often do to compare two urls. Lex url structure for listviews is rather cryptic/long (at times? why?) compared to the consistently tidy url-structure of Classic list views which seem to always display the 15 digit list view id within your noticeable browser address bar.

Depending on your requirement, List Views support some complexity, even your own And / OR / NOT filtering, but there are limits to the number of filters, and what you can type into the filters; Another limit is the column limit to them (10 or 15 iirc); and they can only display fields that exist on the object youre building the List View for (though you could display formula fields that potentially display parent information up to 10 levels as of 2021-Jan-12)

The columns you choose in a List View must be from 1 sObject's fields; which can be crafted as formula type to return colors, images, etc. I have done this with formula(text) fields that return icons, or customized links, for example.

Like Report views, List Views accept relative date filtering, so expressions like “4 days ago” work great, and you will find that the filters, filter conditions, pagination and inline editing of List Views can meet several needs at scale.

As for editing from a view, there are many ways you could approach this. If using List Views: then You could define buttons that act on potentially many selected records, or you could write a formula field that returns a custom hyperlink as text, which can be used in a List View. The formula could return a hyperlink that hits an /apex endpoint to do complex processing/updates, for example it could pass params to a page that has an apex controller extension.

Btw, You dont have to use List Views, you could alternatively use Reports, or write your own custom page that displays data using LWC or other available technologies (visualforce, lightning components, vfp, or your own frameworks perhaps ported from javascript solutions into aforementioned technologies).

Hope this helps someone

2
  • 1
    This did help, mostly to confirm that the default "List View" is probably going to be too limiting with what can be put there and how much can be put there. I'm guessing that there are 30+ fields and buttons on the list screen we currently use.
    – Chuck
    Jan 13, 2021 at 18:59
  • I should mention, in case its helpful, that you can build many List Views, they can be filtered differently and/or display different columns Jan 13, 2021 at 19:29

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .