Проблема с поиском через $$search-форму

Тема в разделе "Lotus - Программирование", создана пользователем KlausKinski, 9 авг 2010.

Статус темы:
Закрыта.
  1. KlausKinski

    KlausKinski Гость

    Коллеги, столкнулся с проблемой - есть две довольно похожие между собой базы, и есть в них обеих поисковая форма под веб (не суть важно что под веб, ибо в Notes с помощью search view та же история). На схожих формах есть идентичные поля ReqNumber, хранящие номер документа-запроса.

    Так вот, в одной базе поисковый запрос по номеру работает на ура, а в другой никаких результатов не выдает. Запрос идентичный в обоих случаях:

    ../ArchiveView?SearchView&Query=FIELD%20ReqNumber%20%3D%201121 (что по сути FIELD ReqNumber = 1121)

    Та же ситуация с search view в толстом клиенте и пока у меня подозрение на индексы полей, создаваемые внутри баз, которые вестимо хранят и их тип, потому что при построении запроса в search view в одной базе он предлагает мне использовать "contains" (видимо считает поле текстовым), а в другой "equal to".

    Поделитесь, пожалуйста, мыслями и, между прочим, можно сбросить индекс полей для базы?

    Спасибо!
     
  2. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    обновите индекс базы
     
  3. KlausKinski

    KlausKinski Гость

    Индекс конечно же обновлял, и пересоздавал тоже. Я скорее подозреваю индекс полей всех форм приложения, ну знаете, когда поле при первом сохранении попадает в системный список, который, например, виден при создании столбца во вьюхе. Собственно, этот список хранит даже уже неиспользуемые поля. Откуда он еще может предугадывать тип поля?

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

    Прилагаю сравнение построений поисковых запросов в search this view, указывающее на их различие.
     

    Вложения:

    • scr1.gif
      scr1.gif
      Размер файла:
      15 КБ
      Просмотров:
      77
  4. NetWood

    NetWood Lotus team
    Lotus team

    Регистрация:
    17 апр 2008
    Сообщения:
    308
    Симпатии:
    0
    а вот так попробуйте
    /ArchiveView?SearchView&Query=[ReqNumber]co("1121")
    или
    /ArchiveView?SearchView&Query=[ReqNumber]co(112*) - варианты

    Главным являются кавычки [] далее должен быть символ(ы). Любой. Не пробел. Хоть geq (В скобках запрос).
    Написал, было, что нет разницы в текстовое поле или цифровое. Ан нет. Пробежался по своим данным такими запросами. В числах не ищет. Только текст. Имхо проагентить надо все в текст.

    re: копнул. Ищет по числу там где Флаги поля: SEAL SUMMARY , если Флаги поля: SUMMARY - не ищет.
     
  5. KlausKinski

    KlausKinski Гость

    NetWood
    Спасибо за наводку, но на числа действительно не сработало. Конвертировать числа в текст не хотелось бы, тем более что в первом приложении идентичное поле в поиске ведет себя как надо. Тип и флаги у полей одинаковые - просто Number Summary

    А вы случаем не знаете как по-научному называется индекс полей внутри приложения? Куда заносится имя и тип поля после его создания и сохранения на форме?
     
  6. NetWood

    NetWood Lotus team
    Lotus team

    Регистрация:
    17 апр 2008
    Сообщения:
    308
    Симпатии:
    0
    Не. До таких высот я не доходил. Лотус - это такая штука, которая может довести до истерики непосвященного. Но если внять правилам - будете в шоколаде. А что мешает перевести в текст поле? Ну не трогайте это. Сделайте соседа ReqNumberTxt и отагентьте. Даже не показывайте его и в форму не заводите. Просто скриптом назначьте. И все будет искаться, так как индекс указывает не на поле, а на документ.

    Я у себя даже боролся с избыточным поиском. Есть поля со служебной инфой. Они на форме не показываются - используются экспортом в скрипте. НО, если поискать, то выдает доки с содержимым запроса, а при открытии дока данных в форме не видно - закрыто. Боролся шифрованием поля. Похрен. Выдает док в запросе и все. В итоге забил.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей