Skip to main content

Guide for Universal Table CMP users

About Us
Published by admin
27 January 2017

Universal table is a component for, which allows creating a multi-function table with many useful features easily.

UniversalTableCMP consists of four parts: a component itself (UniversalTableCMP.component), its controller (UniversalTableController.cls), class to store records (NewRow.cls) and test class (TestUniversalTable.cls). The component creates the most versatile table that can be edited. It can work with 50000 rows.

To get started, four things need to be sent into the component with help of attributes:

  1. 'ListSize' – list of possible numbers of rows displayed per page. The first element will be applied. This attribute is not required. If a user does not send it into the component, the standard list will be applied.
  2. 'WhereCondition' – additional conditions for queries that will be placed after WHERE.
  3. 'ObjectsName' – a name of the SObject from which information for the table will be extracted.
  4. 'AllFields' - a special query that retrieves all the fields from the FieldSet. For example: SObjectType.ExOb__c.FieldSets.TotalFS.getFields(), where ExOb__c – SObject’s name, and TotalFS – name of this SObject’s FieldSet. The request may be triggered by the method of the controller.

It should look like this:



It is all that is necessary for the proper operation of the component.

The completed table looks like this.


To move from page to page you should use image-links and links 'Next' and 'Previous'. If you are on the first or on the last page, then the appropriate link will be disable and you cannot press it.

On the right the current page number is displayed.

On the left user can set a number of rows displayed per one page. If you hover the cursor over the selectList, the information about displayed lines will pop up (the first and last row numbers, the total number of rows).

Next is the link 'optimum adjustment', pressing which you'll have a more accurate adjustment of each column width based on each record length.


If a user needs to sort the table by one of the columns, he should click on its title or arrow of this column. The arrow shows the order (ascending or descending) in which the table is sorted.

If you want to make a new record in the table, you need to press 'New'. This will open a popup of a standard page. After it closed your table will be reloaded automatically and a notification will appear. 'Edit' link works the same way.

If you want to delete a record from the table, press 'Del' link. After the operation, a notification will appear and your table will be reloaded automatically.

The component has a test coverage:

  1. UniversalTableControllerS – 100%.
  2. NewRow – 100%.

Question to the expert

We have available resources to start working on your project within 5 business days

1 UX Designer

1 Admin

2 QA engineers

1 Consultant

Related Articles
All articles
Native IT Service Management solution for Salesforce®
There are numerous ITSM options on the market, the most prominent of which are: Freshservice, ServiceNow, BMC Remedy, SolarWinds Service Desk, and so on. They are all outside of the Salesforce system, necessitate additional user training, and have the potential to complicate the business process. As a result, many Salesforce clients seek native ITSM Salesforce solutions to consolidate all processes on a single platform. This was a project for our group.
20 September 2022
7 reasons Why you should attend Dreamforce 2022
Have you ever wanted to be a part of a big community of like-minded people united by common goals, and values, passionate about learning new things, making friends, sharing experiences and simply having fun? We bet you have. That is what Dreamforce is about! We get that it may not be physically that easy to attend the event but it may be as hard to have enough spare time and motivation to watch it online. Here are 7 reasons why you should become a part of the biggest Salesforce event of the year.
20 September 2022
10 Effective ways to upsell Salesforce® to existing customers
When many companies look to increase their revenue, it's important to work with your most valuable potential market: your current customers. Given that acquiring a new customer costs 5 to 25 times more than retaining a current one, working on upselling and cross-selling is a much more profitable way to grow your business.
01 September 2022