• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Получить массив документов из RepeatControl

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
Всем привет!
Задача в следующем... нужно реализовать навигацию по документам RepeatControl предыдущий/следующий по нажатию на соответствующие кнопки. Можно на CSJS или SSJS.

Была идея воспользоваться такой .. якобы возвращает коллекцию документов и обращаться к документу можно по индексу. Но почему-то не работает :(
 
R

romych2004

Приветы :)

А кнопки внутри репитера находятся?

UPD: в общем суть такая:
view1.getAllEntries().getNthEntry(repeaterIndex + 2) - следующий
view1.getAllEntries().getNthEntry(repeaterIndex) - предыдущий
 
Последнее редактирование модератором:

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
Нет. Кнопки за пределами репитера.
Код:
view1.getAllEntries().getNthEntry(repeaterIndex + 2) - следующий
view1.getAllEntries().getNthEntry(repeaterIndex) - предыдущий
Такая конструкция хороша, если вид плоский. У меня вид отфильтрован по категории. В моем случае это возвращает что попало
 
R

romych2004

XPages по большому счету использует обычные стандартные лотусовые классы. Репитер по категории - это навигатор по категории.
Код:
var nav:NotesViewNavigator = view1.createViewNavFromCategory(<CATEGORY NAME>);
nav.getNth(repeaterIndex + 2);
nav.getNth(repeaterIndex);
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
XPages по большому счету использует обычные стандартные лотусовые классы. Репитер по категории - это навигатор по категории.
Код:
var nav:NotesViewNavigator = view1.createViewNavFromCategory(<CATEGORY NAME>);
nav.getNth(repeaterIndex + 2);
nav.getNth(repeaterIndex);
Спасибо! Надо будет попробовать
 
C

cLif

Ещё как вариант, привязать (свойство binding), компонент к Java-объекту. Из него можно получить все что угодно по самому компоненту, т.к. это будет по сути объект, представляющий компонент.
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
Да... народ зарабатывает на комментариях? :)
Забыл отписаться... вопрос решил :)
Не самый изящный способ, но тем не менее работает:
1. при нажатии на кнопку получаю юнид текущего документа.
2. формирую NotesViewEntryCollection из вида, который используется в репитере
3. нахожу позицию текущего документа
4. в зависимости от кнопки getNextEntry или getPrevEntry
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
Да... народ зарабатывает на комментариях? :)
Забыл отписаться... вопрос решил :)
Не самый изящный способ, но тем не менее работает:
1. при нажатии на кнопку получаю юнид текущего документа.
2. формирую NotesViewEntryCollection из вида, который используется в репитере
3. нахожу позицию текущего документа
4. в зависимости от кнопки getNextEntry или getPrevEntry
если это про меня - вопрос не праздный
я корячусь буфер использовать в переборе ентрисов, и разражаюсь секундными задержками (на сервере), а тут - встречаешь советы getNth
именно с репитом - вопросом получения неких параметров по индексу не озадачивался , использую gridx
и ссылка на пример не работает...
Domain Name: MYDOMINOLAB.COM
Registry Domain ID: 1608090533_DOMAIN_COM-VRSN
Registrar WHOIS Server: whois.enom.com
Registrar URL:
Updated Date: 2016-09-05T05:18:29.00Z
Creation Date: 2010-07-25T01:42:00.00Z
Registrar Registration Expiration Date: 2016-07-25T00:42:36.00Z
R
т.е. регистрация просрочена
у меня на домене так
Updated Date: 2016-06-01T08:38:49Z
Creation Date: 2001-06-20T04:00:00Z
Registrar Registration Expiration Date: 2017-06-20T04:00:00Z
и хост не резолвится
host
Host not found: 3(NXDOMAIN)
 
Последнее редактирование:

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
та не, не про тебя :)
Задержек у меня нет... отклик достаточно быстрый.
Да как ни крути, а все равно будешь занимать память. Ведь при каждом клике все равно навигатор или коллекция перестраивается :(
Вот если бы глобально поиметь объект.
Ну и еще проблема - у меня кнопки за пределами репитера и получается методы репитера не доступны
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
В задаче нет перебора
повторюсь - если getNth из навигатора - перебор будет (потому как все нотусевые классы, реализ. проход по коллекциям, именно так и делают)
и в гайдах по перформансам всегда делают на "это" акцент
 
R

romych2004

повторюсь - если getNth из навигатора - перебор будет (потому как все нотусевые классы, реализ. проход по коллекциям, именно так и делают)
и в гайдах по перформансам всегда делают на "это" акцент
Мне кажется ты путаешь перебор по коллекции с помощью getNth и использовать единоразово его.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!