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

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

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

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

Notesdatadase.search - Третий Параметр

  • Автор темы Dragon108
  • Дата начала
D

Dragon108

Использую Notesdatabase.Search() с третьим параметром для формирования поисковой коллекции. (maxDocs% - the maximum number of documents you want returned) Возвращает коллекцию, в кторой метод Count возвращает необходимое число документов.
Однако при проходе по коллекции бежит по "неограниченной коллекции". Т.е. например всего по критерию поиска подходит 100 документов, я беру Серчем из них 50 с помощью параметра maxDocs. В коллекции, как методом Count так и в Дебагере, показывает что элементов 50, однако при пробеге по полученной коллекции бежит по всем 100 документам.

Что за ??? или это я что то неправильно делаю?
 
T

turumbay

вы все делаете правильно. это фича. работает именно так, как вы и описали.
 
T

turumbay

Понятно, спасибо)
Только ... :what?: ... а зачем тогда она нужна? Поделитесь если приходилось такое использовать
Она такая не нужна :) Подозреваю, что события развивались примерно так: когда-то давно, основным способом итерации коллекции был collection.getNthDocument ( что, кстати, видно из лотусового хелпа ). При таком подходе, реализовать search с третьим параметром было легче легкого: достаточно правильно выставить count коллекции и можно не заморачиваться на реальное число доков. Что и было благополучно сделано, код отгружен, деньги пропиты, все счастливы.
И все было бы хорошо, но через некоторое время, пацаны выяснили, что ходить по коллекции значительно эффективнее при помощи getNextDocument и это стало мейнстримом. В результате вылезла данная фича. Исправлять не стали, т.к. практическая ценность от фичи невысока, а workaround достаточно прост. Вот как-то так...

P.S. Давно завел привычку ставить третий параметр у db.search в 0, чего и вам желаю.
 
Мы в соцсетях:

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