Формула отбора документов для конкретного юзера

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

Наш партнер Genesis Hackspace
  1. LuMee

    LuMee Well-Known Member

    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    В общем, есть некие документы, обладающие полем Login, в котором находится список пользователей, для которых документ предназначен. Стоит задача отобрать в частную вьюху документы, предназначенные для определенного пользователя.
    Проблема в том, что в Login может содержаться не только имя, но и название группы. Если пользователь в эту группу входит, то документ тоже должен лежать в его вьюхе.
    Пока в голову пришло лишь что-то такое:
    Код (Text):
    names:= @Trim(@Replace(Login; @UserNamesList; ""));
    SELECT ... & @Elements(names) < @Elements(Login);
    Но вот что-то этот маневр в два действия кажется не совсем красивым... Да и не уверен в отсутствии подводных камней (под вечер головная коробка не варит). В общем, если кто подобное делал, подскажите, плз, как лучше :)
    P.S. Делается все в Lotus R5
     
  2. yerke

    yerke Well-Known Member

    Регистрация:
    28 авг 2007
    Сообщения:
    392
    Симпатии:
    0
    а поле типа "Читатели" не подходит?
     
  3. LuMee

    LuMee Well-Known Member

    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Увы, пользователь вполне может иметь возможность читать данный документ, однако в данной вьюхе его рисовать все равно не стоит.
     
  4. morpheus

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

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Чесно, тема поднималася 100 раз... исчите
    Жутко извиняюся - нзаметил что про группы... Всё раво имна пользователей хранить прийдёться, а не имена групп
     
  5. K-Fire

    K-Fire Гость

    ИМХО отбор в приватную вью не по @Username а по @UsernamesList вполне нормален, и проблем с этим не должно быть.
     
  6. LuMee

    LuMee Well-Known Member

    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    И махнет заказчику крылом волшебная птичка обломинго :D Я сам тоже склоняюсь к варианту с хранением имен пользователей - геморроя меньше (мне B)), но подумал, что если есть простой способ поддержать и группы, но можно попробовать.
    Надеюсь, что так :lol: Просто хотел узнать, насколько адекватен предложенный мной вариант. Так вроде работает, но мало ли...
     
  7. fvoice

    fvoice Гость

    Для: LuMee
    у меня была подобная задача, только эти документы во вью должны были удаляться после определенных действий пользователя(что-то типа "На подпись" или "На исполнение").. изврат конечно, может и не очень подходит для вашей ситуации, но делал следующее:
    создавал специальный документ, отображаемый только в этой вью, для каждого из входящих в поле(независимо имя это, группа или роль), разграничивал доступ полями Readers, цеплял его ответом к главному.. и удалял после выполнения пользователем определенных действий.

    минусом является, видимость сразу нескольких документов для пользователей у которого несколько атрибутов @UserNamesList совпадают со значениями поля(хотя в моем случае такого не могло случиться, да и продумать можно это)
     
Загрузка...

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