Поиск

Тема в разделе "Lotus - Программирование", создана пользователем Chron, 3 янв 2011.

  1. Chron

    Chron Well-Known Member

    Регистрация:
    16 авг 2010
    Сообщения:
    49
    Симпатии:
    0
    Всем привет... Кто-нибудь может объяснить такую странность.... Документы упорно не ищутся по одному полю... Индекс пересоздавал, апдейтил сотню раз - не помогло... Так в чем же проблема?
     
  2. ABarmin

    ABarmin Гость

    Прав не хватает?
     
  3. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Может, ещё тип не совпадает.
    Пример в студию!
     
  4. Chron

    Chron Well-Known Member

    Регистрация:
    16 авг 2010
    Сообщения:
    49
    Симпатии:
    0
    Тип Number... в поисковую строку вбиваю значение поля тютя-в-тютю, запрос выдает пустоту... хотя по другим полям ищет дай бог..
     
  5. NetWood

    NetWood Lotus team
    Lotus team

    Регистрация:
    17 апр 2008
    Сообщения:
    308
    Симпатии:
    0
    А вроде был мессадж уже... По нумберу не искалось никогда. Сделайте комутед текст поле из нумбера и будет искать.
    Я решал противоположную задачу - чтоб не искалось. Шифровал поле, ключи ставил - пофигу. Ищет по тексту, в итоге забил, ибо работа индексера непостижимая тайна. Во всяком случае так по 7.0.3 включительно.

    re: По работе индексера мысли вслух. Индексирует сервер своей учеткой, которая имеет доступ ко всему, и даже к шифрованному, поэтому и ищется все...
     
  6. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Я вроде когда-то спрашивал, была такая же проблема... но в итоге у меня сейчас работает.. поле тип Number и ищет.... так что пример в студию

    Добавлено: Chron , Кста, вспомнил решение моей проблемы... Я создал новое поле с типом нумбер, и с ним начало искать,.... а с тем полем была такая же ситуация как в твоем случае
    Попробуй проверь....
     
  7. Chron

    Chron Well-Known Member

    Регистрация:
    16 авг 2010
    Сообщения:
    49
    Симпатии:
    0
    Вот клянусь зубом, сотню раз пересоздавал... Не реагириует поиск и все тут... Только что заметил, что не смотря на то что тип поля на форме поменял на текстовый, в свойствах документа поля все равно типа намбер остается... чертовщина какая-то...
     
  8. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Chron , имя нового поля другое? у меня в этом фишка была... Нужно новое поле и новое имя
     
  9. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    тип поля запоминается 1-й раз при создании поля.
    Можно ли как-то удалить поле из списка полей, чтоб поменять, я не помню (в каком-то из давних топиков это обсуждалось), проще поменять имя поля.
     
  10. Chron

    Chron Well-Known Member

    Регистрация:
    16 авг 2010
    Сообщения:
    49
    Симпатии:
    0
    Я поменяю имя поля, в таком случае потеряю данные этого поля в уже сохранненых документах... Для меня это неприемлемо....
     
  11. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Chron, ты сначала попробуй поменять имя поля...
    если получится и если тебе ой как надо этот поиск, то напиши миграционный агент для переноса значений...он получится даволи маленький
     
  12. Chron

    Chron Well-Known Member

    Регистрация:
    16 авг 2010
    Сообщения:
    49
    Симпатии:
    0

    миграционный - это какой? :what?:
     
  13. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Chron , да простой агент, скопировать значение из старого поля, вставить в новое поле, сохранить док.
    произвести, так сказать, миграцию значений
     
  14. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    простой - что-то типа такого:
    Field NewName := Oldname
    или посложнее
    Field NewName := @if(@IsNumber(Oldname); @ToNumber(Oldname); 0)
    @ToNumber - так, на всякий =) точные названия формул смотреть в справке лотус =)

    Добавлено: @ToNumber в общем, и не надо, @IsNumber истинное, только когда число, строку не съест (то я со скриптом препутала, наверно)
     
  15. Chron

    Chron Well-Known Member

    Регистрация:
    16 авг 2010
    Сообщения:
    49
    Симпатии:
    0
    Спасибо, ребят.. действительно помогли.... прогнал разок Field newfield:= @text(oldfield), затем еще разок прогнал агент на удаление oldfield...

    И все же странно, согласитесь, что поля намбер не индексируются...
     
  16. Zeka

    Zeka Well-Known Member

    Регистрация:
    1 сен 2009
    Сообщения:
    219
    Симпатии:
    0
    У меня как раз похожая проблема с индексом в одной из баз. Сейчас в отпуске, так пока ничего не делал, но нагуглил следующее:

    Надо сделать новую копию базы. Индекс пересоздатся и, возможно, поиск по полю заработает. Просто Update index не помогает, т.к. при апдейте обновляются данные, а не структура индекса.

    Ещё такое предлагают:
    1. create a replica (without full text index)
    2. load fixup <db> -F
    3. load compact <db> -c
    4. delete the original database
    5. recreate the original db from the replica
    6. create a full text index

    ПС: Пока писал пост, ты уже решил проблемку.... :what?:
     
Загрузка...

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