Define Your User Interface
First off I need to shed light on the fact that the Force.com standard UI can often be taken for granted. When building out any software you not only need to figure out the logic for computing the back end, but also how the data will display on the front-end. Trivial tasks like getting data to appear on a screen in a visually appealing way or maintaining a navigational system between related pages can be a large task even for seasoned developers.
What if I told you you could do both of these things using drag-and-drop components? In addition to defining what you see on standard detail pages, you can also modify what you see in searches and lists, and generate reports or graphs of the data in your org as well.
In this article I will tell you about the tools you have to define the standard look and feel of your app. I will also tell you about how you can generate reports and graphs based off of those reports to track the data in your app.
The simplest way to control what an end-user sees on a record is with page layouts. Page layout is the organization of fields, custom links, and related lists on a record detail or edit page. You can setup different page layouts for different profiles, and use field level security to restrict users’ access to fields. A subsequent article in this series explains more about using profiles for security and permissions.
You can view all the page layouts for any given object in a related list on the object detail setup page. You can drag and drop fields, buttons, and related lists onto the page layout to make them visible and editable from the detail page. In addition, if you build any custom Visualforce pages, you can embed them in sections of the detail page.
You can create more sections if you would like to categorize your fields further by dragging the section header from the widget at the top, or simply reorganize the existing fields on the layout. If you build your fields using the Schema Builder, the fields are off the page layout by default and must manually be placed on the page layout. If you build your fields using custom field wizard, the fourth step allows you to select any page layouts you would like to add the field to upon creation.
In addition to customizing what you can see on any given object from their page layout setup, you can also control what columns and buttons show up in the related lists at the bottom of the detail page. There is a separate related list properties menu for each related list, making it easy to configure each list individually.
Another type of layout that you have control over is known as search layout. Search layouts are the organization of fields included in search results, lookup dialogs, and key lists on tab home pages. There are several places in your org where your record data is being displayed, and search layout allows you to control that display declaratively.
Another way to organize and display data is reporting. A report returns a set of records that meet a certain criteria, and displays it in organized rows and columns. Report data can be filtered, grouped, and displayed graphically as a chart. Reporting is a quick way to summarize and organize data from one or many objects throughout your org.
When creating a report, the first thing you have to consider is the report type. A report type defines the set of records and fields available to a report based on the relationships between a primary object and its related objects. Reports display only records that meet the criteria defined in the report type.
Once you have selected your report type, you need to select what kind of report you will be building. Tabular reports are the simplest and fastest way to look at data. Similar to a spreadsheet, they consist of an ordered set of fields in columns, with each matching record listed in a row. Tabular reports are best for creating lists of records or a list with a single grand total. They can't be used to create groups of data or charts, and can't be used in dashboards unless rows are limited.
Summary reports are similar to tabular reports, but also allow users to group rows of data, view subtotals, and create charts. They can be used as the source report for dashboard components.
Matrix reports are similar to summary reports but allow you to group and summarize data by both rows and columns. Like summary reports, they can also be used as the source report for dashboard components. Use this type for comparing related totals, especially if you have large amounts of data to summarize and you need to compare values in several different fields, or you want to look at data across multiple characteristics side by side.
If you want to utilize your reports further and generate a chart displaying the metrics in a snapshot view, you can use the reports to make dashboards. A dashboard shows data from source reports as visual components, which can be charts, gauges, tables, metrics, or Visualforce pages. The components provide a snapshot of key metrics and performance indicators for your org. Once you setup your report and dashboard, it will continuously update itself as your org data continues to grow and change.
Setting up page layouts is key to boosting productivity in your org. Displaying the most relevant data, organizing the fields and sections in a logical way, and setting up different views as necessary are important points to consider in the process. You can help users view and find data faster by considering the best layout and field selection for both the page layouts and search layouts.
Building reports is another powerful tool for getting the most out of your data. Creating a report or a dashboard can allow a user to get a snapshot view of their org without having to filter through data themselves. These tools are great for helping you analyze and fine-tune your system, and give you a better understanding of your business.
- Understanding Cloud Application Development
- Quick Tutorial 7: Customize a User Interface — Create Views of Data
- Quick Tutorial 8: Customize a User Interface — Modify a Page Layout
- Quick Tutorial 9: Customize a User Interface — Enable Social Collaboration
- Quick Tutorial 10: Customize a User Interface — Create a Report
- Developing Cloud Apps — Coding Optional