четверг, 24 октября 2013 г.

Таблицы с постраничный выводом


Настраиваем VO для работы с многостраничными запросами



В свойствах итератора выставляем то же  количество записей:





Для таблицы с постраничным выводом количество записей получается через функцию
getEstimatedRowCount()  объекта ViewObjectImpl

Пройти по всем записям можно через два цикла, первый - цикл по страницам, второй по записям на каждой странице, примерно так:


    public void onLoop(ActionEvent actionEvent) {
        long row_count = getVoImpl().getEstimatedRowCount();
        long rows_per_page = getVoImpl().getRangeSize();
        long page_count = row_count / rows_per_page + 1;
        System.out.println("total rows:" + row_count + "  rows at page:" +    rows_per_page + "  numb of pages:" + page_count);
        int m = 1;
        for(int i=1;i<=page_count;i++) {
            System.out.println("--- Page: " + i);
            getVoImpl().scrollToRangePage(i);
                for(int j=0; j<rows_per_page && m<=row_count; m++, j++) {
                    Row row = getVoImpl().getRowAtRangeIndex(j);
                    System.out.println(m +"  "+ row.getAttribute(0)+ "  " + row.getAttribute(2) );
                }
        }
    }



Тестовое приложение TestHr1.rar






Комментариев нет:

Отправить комментарий