2016-07-14 2 views
2

У меня есть приложение, использующее viewpanels для отображения данных. Одна панель просмотра отображает необработанные записи, а другая отображает обработанные записи. Пользователь выбирает необработанную запись (используя значения show в этом столбце в качестве опции ссылок) и направляется на страницу, на которой они вводят информацию. Затем нажмите кнопку, которая обновляет документы с помощью инструкций doc.replaceItemValue в javascript. Затем пользователь направляется обратно в панель просмотра, которая отображает необработанные записи. Для того чтобы только что обработанная запись не отображалась в необработанных записях, я должен переиндексировать базу данных. Я использую database.updateFTIndex (false), чтобы выполнить это.
Есть ли лучший способ добиться этого? Если два пользователя отправляют записи, будут ли их отдельные индексы наступать друг на друга?
Мне никогда не приходилось беспокоиться об этом при использовании mysql. Спасибо за любой совет.Индексирование полного текста после изменения записи

+0

Вы проверили настройку обновления в базовом представлении, отображаемом панелью просмотра? Это вкладка «beanie hat» (5-я вкладка). Если у вас установлено значение «Авто» после первого использования, то обновление документа и частичное обновление на панели просмотра должны отражать это изменение. Полный текстовый индекс не имеет ничего общего с индексами просмотра, они являются отдельными типами индексов. – jpishko

+0

Параметр обновления в базовом представлении, отображаемом панелью просмотра, имеет/был установлен на «Авто, после первого использования». Тем не менее, я не просто использую одну xpage. Первая страница - это панель просмотра, и пользователь выбирает запись для обновления. Для редактирования записи загружается новая страница. После внесения изменений, используя javascript, выполненный с помощью события onclick кнопки, пользователь перенаправляется на первую страницу с помощью простого действия Open Page, которое следует за простым действием Execute Script. Итак, я предполагаю, что технически это полная перезагрузка страницы, и содержимое панели просмотра не обновляется. –

ответ

0

Я использовал эту технику некоторое время на производстве и не был уведомлен о каких-либо проблемах. Обновление индекса через свойства базы данных или представление дает сообщение о том, что оно было поставлено в очередь для обновления на сервере, но я не уверен, что то же самое происходит с программным вызовом. Это вполне может сделать.

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

Я также выполняю обновление до индекса через sessionAsSigner, я предположил, что это необходимо для целей полномочий.

+0

Полезно знать. Думаю, я буду в безопасности. У меня не будет огромного количества документов, которые будут обновляться в любой момент - только один. Кроме того, я уверен, что использование не будет столь интенсивным. Мне нужно будет изучить вопрос власти. Таким образом, далеко тестирование с пользователями не было проблемой, хотя я не использую sessionAsSigner. –

Смежные вопросы