Назначение удаление прав пользователю на документ

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

  1. phantom76

    phantom76 Lotus team
    Lotus team

    Регистрация:
    25 фев 2005
    Сообщения:
    363
    Симпатии:
    9
    Как логически верно построить процесс?

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

    Какие есть варианты: ?

    - в акции запускать агент под правами сервера или на сервере ?
    - или что-то можно придумать еще?
     
  2. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Ну у меня сразу примерно такая же идея возникла:
    пишем в какое-нить временное поле имя юзера, которого надо удалить и где-то на PostSave (точнее где-то после закрытия мне кажется) запускаем серверного агента с параметром NoteID обрабатываемого документа.
    Агент выкидывает кого не надо из ридеров/авторов.

    Может действительно есть лучше идеи?
     
  3. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Создавать копию документа. Пусть делает в нем что хочет. Агент потом собирает изменения в основной документ.
     
  4. phantom76

    phantom76 Lotus team
    Lotus team

    Регистрация:
    25 фев 2005
    Сообщения:
    363
    Симпатии:
    9
    а если в PostSave основного документа , отслеживать некий триггер и зупускать агент на сервере на очистку полей?
     
  5. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Если это делать в PostSave, то можем получить конфликт. Пользователь может продолжить работать с не измененным документом. Или в PostSave надо принудительно закрывать документ. Что не очень красиво.
    Если в QueryClose, то может вообще не сработать.
     
  6. phantom76

    phantom76 Lotus team
    Lotus team

    Регистрация:
    25 фев 2005
    Сообщения:
    363
    Симпатии:
    9
    моем случае, документы закрываются принудительно, из дочернего, с начало дочерний после сохранения и за ним закрывается родительский документ, а после этого нужно отнять у текущего пользователя права даже на видимость этих доков..
    поэтому в постсейв наверное будет как раз.
     
  7. turumbay

    Регистрация:
    13 мар 2009
    Сообщения:
    625
    Симпатии:
    2
    Логически верно - дать права не на документ а на само действие.
    Т.е. создать новый документ:
    Форма: "право на выполнение одноразового действия по документу"
    поля: действие ; документ-таргет ; пользователь

    Именно на основании существования этого документа предоставляется право совершить действие. Действие ( результат действия ) - опять же документ, можно респонсом к праву. Действие обработать серверным агентом.
    Вот как-то так...
     
  8. phantom76

    phantom76 Lotus team
    Lotus team

    Регистрация:
    25 фев 2005
    Сообщения:
    363
    Симпатии:
    9
    Спасибо, я понял это вариант с реализацией через транзакции.. хороший вариант, по типу интертрастовских приложений..
    я попытаюсь сделать пока по-проще..
     
  9. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.288
    Симпатии:
    0
    А по-моему юзер сможет сам себя лишить доступа.
    Сервер-же проверяет доступ к существующему в базе док-ту, а не тому образу, который в уме у юзера (на его раб.станции)

    Так что нефиг мудрить :)
     
  10. phantom76

    phantom76 Lotus team
    Lotus team

    Регистрация:
    25 фев 2005
    Сообщения:
    363
    Симпатии:
    9
    Спасибо, проверю и этот вариант еще раз :)
     
  11. morpheus

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

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    угу, вроде может


    а если включена ф-ция Lock то точно сможет сам себя отшить
     
Загрузка...

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