• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Представления С Выводом Документов На Несколько Строк

Kizarek86

Green Team
20.07.2007
871
7
BIT
38
Столкнулся с следующей проблемой:

Есть представление в котором выводится документу, причем на несколько строк (есть многозначное поле).

Set notesViewEntry = notesViewNavigator.GetEntry(NotesDocment)'Такая конструкция не получает такой документ, view_notesViewEntry = Nothing

Бегать по всему навигатору и отбирать строки принадлежащие NotesDocment капец как долго, представления большие.

Есть ли какие варианты по другому получить значения из представления зная документ?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
214
где-то делал связку вьюэнтрисколлекшн и нафигатора...
через GetPos может туда копать?
 
N

nvyush

Есть ли какие варианты по другому получить значения из представления зная документ?
Значения в представлении выводятся в соответствии со значениями полей документа. Зная документ, какие проблемы получить значения полей? Зачем использовать notesViewEntry & notesViewNavigator?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
214
GetPos - чем может помочь? Если бегать им же по всей вьюхе скорость мало будет отличатся от GetFirst/GetNext.
"обычно" нужно начать сканирование с опред. места
дык вот - место находим по ключу, преобразуем энтрис и от него двигаемся дальше (по нафигатору)
и док, кагбэ, нинужен :)
получение дока для энтриса, как и обратная процедура - небыстрый процесс
 

Kizarek86

Green Team
20.07.2007
871
7
BIT
38
Значения в представлении выводятся в соответствии со значениями полей документа. Зная документ, какие проблемы получить значения полей? Зачем использовать notesViewEntry & notesViewNavigator?

Ну в общем то вариант, но не особо то) Ибо категорию так не сгенеришь.

kizarek,
а если с помощью метода NotesViewEntry.ColumnValues(x), то тоже долго получается?
NotesViewEntry - ну так его получить то и не получается.

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

Немного поясню что делаю, мб у кого есть примеры)
Делаю выгрузку выделенных документов в представлении в Excel.
Надо чтобы подходило под все представления с сохранение форматирования.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
214
еще раз... я предлагаю передавать notesViewEntry = notesViewEntryCollection.GetEntry(NotesDocument)
а вот к навигаторской сучности переходить по GetPos
или через notesViewNavigator.GetEntry(notesViewEntry)
а позиция необходима для ограничения диапазона сканирования нафигатора

Добавлено: универсальным сделать не получится, ибо...
разнесение колумвэлью могет быть значительным (вплоть до границ вьюшки) и тогда сканировать таки придется всё, или перейти к методу поиска по ключу, что может не сработать (при отсут. сортировки)
 

Kizarek86

Green Team
20.07.2007
871
7
BIT
38
lmike,
очень получиться если бегать по всей вьюхе)

понятно что такая багофича имеет место быть, и должно быть 2а варианта выгрузки (при наличие вывода документа в несколько строк - медленно, и без оного быстро).

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

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