UniversalTable – это компонент для Salesforce.com , с помощью которого можно легко создать многофункциональную таблицу с множеством полезных свойств.
UniversalTableCMP включает в себя 4 части: сам компонент (UniversalTableCMP.component), его контроллер (UniversalTableController.cls), класс для хранения данных (NewRow.cls) и класс тестированя (TestUniversalTable.cls). Компонент позволяет создать самую универсальную редактируемую таблицу. Она может содержать до 50000 строк.
В первую очередь в компонент при помощи атрибутов необходимо отправить 4 составляющих:
- “ListSize” – список возможного количества строк, отображенных на странице. Первый элемент будет применен. Данный атрибут не требуется. Если пользователь не отправит его в компонент, будет реализован стандартный список.
- “WhereCondition” – дополнительные условия для запросов, размещенных после WHERE.
- “ObjectsName” – название SObject, из которого будет извлечена информация для таблицы.
- “AllFields” – специальный запрос, который извлекает все поля из FieldSet. Например: SObjectType.ExOb__c.FieldSets.TotalFS.getFields(), where ExOb__c – SObject’s name, and TotalFS – name of this SObject’s FieldSet. Запрос может быть вызван методом контроллера.
Он должен выглядеть примерно так:
Это всё, что необходимо для правильной работы компонента.
Готовая таблица выглядит так:
Для перехода со страницы на страницу используются картинки-ссылки или ссылки “Next”, “Previous”. Если вы находитесь на первой или на последней странице, ссылка будет недоступна, вы не сможете на нее нажать.
Справа отображается номер страницы.
Слева пользователь может установить число строк, отображенных на странице. При наведении курсора на selectList появится информация об отображенных строках (номер первой и последней строки, общее количество строк).
Далее ссылка "optimum adjustment", нажав которую вы получите точные данные о настройках ширины каждой колонки, основываясь на длине каждой записи.
Если необходимо сортировать таблицу по одной из колонок, следует кликнуть по ее названию или по ее стрелке. Стрелка показывает порядок сортировки таблицы (по убыванию или возрастанию).
Для того, чтобы сделать новую запись, необходимо нажать “New”. Появится всплывающее меню стандартной. После его закрытия таблица перезагрузится автоматически и появится уведомление. Ссылка “Edit” работает по тому же принципу.
Для удаления записи нажмите ссылку “Del”. После завершения операции появится уведомление, и таблица перезагрузится автоматически.
Тестовое покрытие компонента:
- UniversalTableControllerS – 100%.
- NewRow – 100%.