Общие вопросы > Разработка приложений
Проблемы с отображением результата поиска в Представлении
G777:
Здравствуйте!
Помогите, пожалуйста, разобраться с поиском в Представлении.
Бьюсь с этой проблемой уже несколько дней, ничего не получается.
Есть обычная форма где поле с Фамилиями ‘SurN’
Есть обычное Представление где эти формы отображаются с показом Фамилий
Запись вроде находит но не отображает
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim entry As NotesViewEntry
Dim vc As NotesViewEntryCollection
Dim parentV As NotesView
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Call db.UpdateFTIndex( True )
Set view = db.GetView("tell")
strCSAName="Иванов"
strSearchKey = |FIELD SurN="| + strCSAName + |"|
Call view.FTSearch( strSearchKey , 0 )
Call view.Refresh
ViV:
Добрый день!
Скриптом вы работаете с классом NotesView, т.е. с back end'ом. Результат содержится в памяти, он не отображается пользователю.
Класс NotesUIView (front end, тот вид, с которым работает пользователь) не позволяет производить по нему поиск.
Для решения проблемы вы можете:
- создать папку (Folder) с тем же дизайном, что и у вашего вида;
- получить коллекцию документов в результате поиска по NotesView (аналогично тому как вы делаете);
- используя метод PutAllInFolder, поместь документы из коллекции в папку;
- показать пользователю эту папку.
и перед каждым поиском нужно не забывать очищать папку.
G777:
ViV,
Спасибо за ответ!
Однако когда используешь стандартный поиск по полю, этот поиск выдаёт результат.
Неужели нельзя повторить это программно?
G777:
--- Цитата: ViV от 06 Май 2010, 11:18:17 ---
- показать пользователю эту папку.
--- Конец цитаты ---
а как показать эту папку и потом снова вернуться к основному представлению?
G777:
Я пытаюсь это сделать, все находиться и копируется в папку, но как открыть и показать эту папку пользователю
--- Код: ---Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim vc As NotesViewEntryCollection
Set db = session.CurrentDatabase
Set view = db.GetView("pred")
Set collection = db.FTSearch( "петров", 20 )
Call collection.RemoveAllFromFolder( "folder_pred" )
Call collection.PutAllInFolder( "folder_pred" )
--- Конец кода ---
Навигация
Перейти к полной версии