Ошибка при работе с приватной вью из Ls

Тема в разделе "Lotus - Программирование", создана пользователем LuMee, 26 апр 2007.

  1. LuMee

    LuMee Well-Known Member

    Репутация:
    0
    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Имеется приватная (SDPOFU) папка, служащая для поиска документов в базе.
    Папка имеет действие, в котором, в частности, выполняется примерно такое:
    Код:
    Dim db As NotesDatabase, view As NotesView
    ...
    Set view = db.GetView("Приватная папка")
    If view.AllEntries.Count > 0 Then
    view.AllEntries.RemoveAllFromFolder("Приватная папка")
    End If
    У пользователя-управляющего тут все работает без затыков. Однако есть пользователь-редактор, у которого на строчке номер 4 (If view.AllEntries.Count > 0 Then) скрипт торжественно валится с загадочной ошибкой: "Индекс не должен создаваться на сервере ("Приватная папка")".
    Пробовал уже и приватную папку под этим юзером удалять, и закладку на базу удалял из рабочей области (этим лечится довольно много глюков :blink:) - ничего не помогает. Кто подскажет, что за блин?
    З.Ы. Использую Лотус R5 (5.0.4а).
     
  2. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    Для: LuMee
    Пользуйтесь собаками, для удаления всех документов из папки
    Код:
    @Command([EditSelectAll]); @Command([RemoveFromFolder])
    Для удаления выделенных документов из папки
    Код:
    @Command([RemoveFromFolder])
     
  3. LuMee

    LuMee Well-Known Member

    Репутация:
    0
    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Для: Morpheus
    Спасибо за совет, но тогда такой вопрос: если вышеозначенные команды выполнять с помощью Evaluate, что надо передавать вторым параметром? Пробовал подсовывать им NotesUIView - не вышло.
     
  4. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    Второй параметр в Evaluate НЕ ОБЯЗАТЕЛЬНЫЙ, просто ничего не передавайте
     
  5. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 май 2006
    Сообщения:
    1.322
    Симпатии:
    4
    AFAIR (буду рад ошибиться) @-команды через Evaluate не ходят :(
     
  6. Hedg

    Hedg Гость

    Репутация:
    0
    Для: Constantin A Chervonenko
    Не ошибаетесь

    Usage
    The formula takes the field from the specified document.
    @Functions that affect the user interface do not work in the Evaluate method. These include: @Command, @DbManager, @DbName, @DbTitle, @DDEExecute, @DDEInitiate, @DDEPoke, @DDETerminate, @DialogBox, @PickList, @PostedCommand, @Prompt, and @ViewTitle.
     
  7. LuMee

    LuMee Well-Known Member

    Репутация:
    0
    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Ну вот отстой... Агента что-ли теперь придется сооружать?
    И все-таки: что же это за ошибка с индексами? Про какой индекс вообще речь идет и чем ему сервер не угодил?
     
  8. nor

    nor Гость

    Репутация:
    0
    Для: LuMee

    попробуй удалить иконку бд из рабочей области пользователя, в acl поставь для него бит Create private folders/views, открой бд заново и попробой свой скрипт.
     
  9. LuMee

    LuMee Well-Known Member

    Репутация:
    0
    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Для: nor
    Пробовал.. даже старый-добрый способ: поубивать иконки на рабочей области, потом на серваке создать копию базы, убить оригинал, скопировать копию обратно.. Ничего не помогает. Пока сделал просто отдельную кнопку "Очистить" с вышеприведеннымы собако-формулами, однако это решение не вполне устраивает заказчика.
     
  10. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    Для: LuMee
    А кэши чистить и временные папки на лок. коомпе юзверя
     
  11. LuMee

    LuMee Well-Known Member

    Репутация:
    0
    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Вроде чистил... А где они (кеши, папки) там вообще есть? Может пропустил чего.
     
  12. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    Для: LuMee
    Удалить в notes папке файл cashe.ndk

    а пути к временным папкам можно посмотреть через свойствва системи "пееременные среды "
     
  13. LuMee

    LuMee Well-Known Member

    Репутация:
    0
    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Для: Morpheus
    Попробую... Хотя, конечно, если пользователям надо будет реглярно свои кеши чистить, это не будет гут.
     
  14. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    Для: LuMee
    да нет, регулярно .. врятли
    думаю просто иногда как способ может помоч, особенно если это единичный случай
     
  15. Veselinka

    Veselinka Гость

    Репутация:
    0
    Боюсь сказать лажу, но мнение следующее:
    Не будет работать вообще.

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

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

    nor Гость

    Репутация:
    0
    Как недавно установили американские ученые из Центра Научных Исследований Дефектного ПО (The Center of Scientific Reserch of Buggy Software) использование приватных представлений (private views) в Lotus Notes чревато появлением так называемых "аномалий Абхиманью", названных так в честь одного индийского программиста, впервые запрограммировавшего поведение таких представлений. В частности, Дж. Струзе (J. Strother), ведущий специалист по тестированию Lotus Notes, приводит следующие изыскания в своей докторской работе "Хаотическая конвергентная адаптация пользователей к IBM Lotus":

     
  17. Chernom0r

    Chernom0r Гость

    Репутация:
    0
    Жесть :D
     
  18. alexstudent

    alexstudent Well-Known Member

    Репутация:
    0
    Регистрация:
    13 сен 2009
    Сообщения:
    107
    Симпатии:
    0

    Была подобная проблема. Решили так:
    1. Дали пользователю права на уровне дизайнера к бд
    2. Зашли под ним в бд в дизайнере
    3. В элементе дизайна Folder удалили его приватную папку, которая создается при поиске.

    Получается что папка как-то криво создается. И увидеть можно только тому кто создал. Ну либо может написать что-то на LS, чтобы можно было эти папки увидеть.
     
  19. savl

    savl Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    28 окт 2011
    Сообщения:
    2.114
    Симпатии:
    157
    на query open или close базы вешается скрипт:
    Код:
    Forall x in db.views
    if x.IsPrivate then call x.remove()
    End forall
    Если имена папок известны, а они известны, то можно массив имен использовать.
     
  20. Мыш

    Мыш Well-Known Member
    Lotus team

    Репутация:
    1
    Регистрация:
    12 фев 2008
    Сообщения:
    1.073
    Симпатии:
    11
Загрузка...

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