Постраничный вывод

Автор Тема: Постраничный вывод  (Прочитано 8074 раз)

CL1F

  • Участник
  • **
  • Сообщений: 47
  • GODMODE
    • Просмотр профиля
Постраничный вывод
« : 13 Октябрь 2011, 06:42:56 »
Допустим мы имеем базу с 10 000 записями (например товар или новости)
как из агента организовать постраничный вывод выборки допустим по 20 (50, 100) записей ...

пока реализовано следующим образом ...

1) агент ловит на какую станицу перейти ( p = 5 ) если не ловит(или не верный параметр) то вывод первой страницы
2) формируем запрос и сортировку , указываем кол-во выборки данных (5+1)*20 (в нашем случае)
3) формируем массив с 100 (5*20) до упора (6*20=120)

траблы:
1) плохой метод ... сделать выборку что бы отбросить данные ...
2) не вывести выборку 5000+
Пишу на Лотусе ... Выжигателем ...

CL1F

  • Участник
  • **
  • Сообщений: 47
  • GODMODE
    • Просмотр профиля
Re: Постраничный вывод
« Ответ #1 : 21 Октябрь 2011, 11:14:44 »
прошла неделя ... ответов нет  ...
как вы решаете аналогичные задачи? ... хоть варианты предложите
Пишу на Лотусе ... Выжигателем ...

ViV

  • Global Moderator
  • Профессионал
  • *****
  • Сообщений: 1428
  • Владимир Егоров
    • Просмотр профиля
    • lotusnotes.ru
    • E-mail
Re: Постраничный вывод
« Ответ #2 : 08 Ноябрь 2011, 01:54:37 »
Добрый вечер!

Если у вас есть предел в 5000 документов, то скорее всего вы пользуетесь полнотекстовым поиском для формирования выборки документов. Это предел по умолчанию, его можно расширить с помощью переменной "FT_Max_Search_Results" в notes.ini.

Вариантов выборок много? Если их по пальцам пересчитать, то сделайте виды под них и для страничной навигации обращайтесь к нужным ViewEntry в виде.

CL1F

  • Участник
  • **
  • Сообщений: 47
  • GODMODE
    • Просмотр профиля
Re: Постраничный вывод
« Ответ #3 : 15 Ноябрь 2011, 12:46:35 »
ViV как вы реализовали падинацию вида
<<__<__1__ 2__ 3__ 4__ 5__ 6__ 7__ ...__ 65__ >__ >>
Пишу на Лотусе ... Выжигателем ...

ViV

  • Global Moderator
  • Профессионал
  • *****
  • Сообщений: 1428
  • Владимир Егоров
    • Просмотр профиля
    • lotusnotes.ru
    • E-mail
Re: Постраничный вывод
« Ответ #4 : 21 Ноябрь 2011, 00:46:24 »
Если нагрузка на приложение небольшая, то можно воспользоваться функцией notesViewEntryCollection.GetNthEntry()

Но проще использовать XPages для реализации, там есть встроенный компонент постраничного вывода.