@Sam, ваша точка отличная в концепции, но я думаю, что вы неправильно поняли, что говорят документы MySQL на ссылочной странице, или я неправильно понимаю :-) - и я просто хотел добавить это, чтобы, если кто-то чувствует себя некомфортно с ответом @ Даниэля, они будут более успокоиться или хотя бы немного углубиться.
Вы видите, что «@curRank: = @curRank + 1 AS rank» внутри SELECT не является «одним утверждением», , это одна «атомная» часть заявления, поэтому она должна быть безопасной.
В документе, к которому вы ссылаетесь, приводятся примеры, в которых одна и та же пользовательская переменная в 2 (атомных) частях инструкции, например, «SELECT @curRank, @curRank: = @curRank + 1 AS ранг ".
Можно утверждать, что @curRank используется дважды в ответе Даниэля: (1)« @curRank: = @curRank + 1 AS rank »и (2)« (SELECT @curRank : = 0) r ", но поскольку второе использование является частью предложения FROM, я уверен, что он будет оценен первым; что делает его вторым и предыдущим.
Фактически, на той же странице документов MySQL, на которую вы ссылались, вы увидите то же самое решение в комментариях - это может быть, где @Daniel получил это из; да, я знаю, что это комментарии, но это комментарии на официальной странице документов и которые несут некоторый вес.
Вы пробовали?
<xp:this.rows><![CDATA[#{javascript:var vw:NotesView = database.getView("myTodoList");
return vw.getAllEntriesByKey(sessionScope.get("userFilter"),true).getCount().toFixed();}]]></xp:this.rows>
Свойство rows
на самом деле просто устанавливает «отсечение» при запуске подкачки. Вместо того, чтобы (в значительной степени) вычислять текущий размер представления, просто установите для него «достаточно большое» значение. Магическая константа "9999" сработала для меня, но MAX_INT - это предел, я думаю.
Имейте в виду, что для огромного объема данных визуализация вашей страницы займет некоторое время, поэтому вы определенно БУДЕТЕ вызывать проблемы с производительностью.
Кроме того, существует внутреннее ограничение ~ 10 тыс. Ссылок API C-интерфейса для классов Java Notes * - при ударе сервер / клиент АВАРИИ. Вы должны быть в безопасности с чистыми компонентами XSP. Как только вы добавите в свои страницы дополнительный код, который использует классы Notes * (и не перерабатывает), особенно внутри циклов / повторов, ваш лимит составит лишь часть этого значения.
Вам необходимо получить количество элементов из DominoView, а не rowCount из модели данных компонента.
Вы можете быть осторожны с тем, что вы хотите здесь сделать, представление может быть ОЧЕНЬ большим, а взаимодействие с пользователем - плохим.
Расширение lib имеет «infiniScroll», который может быть более подходящим для того, что ожидает пользователь.