1. Спонсор публикаций Marketplace codeby. Сервис, который так долго ждали. При расчетах используем биткоин. Первый товар уже в продаже: Консультация на тему ИБ от Ondrik8

    Скрыть объявление
  2. Спонсор публикаций Marketplace codeby. Сервис, который так долго ждали. При расчетах используем биткоин. Второй товар маркетплейса: Надёжная обфускация вашей программы от PingVinich

    Скрыть объявление

Replicate Or Copy Documents

Тема в разделе "Lotus - Программирование", создана пользователем oxystile, 28 июл 2008.

  1. oxystile

    oxystile Гость

    для базы стояла опция копировать или реплицировать документы, что позволяло нам открыть документ, выделить там текст заметки и скопировать его куда-нибудь еще
    НО: это позволяет еще и множить документы в базе ;) вот и вся засада

    что сделать, чтобы с одной стороны, разрешить копировать текст, а с другой- запретить вставку документов в базу??
     
  2. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Агент с Target = Pasted Documents
    Ну и галку, естественно, убрать, у неё есть одно злобное побочное действие.
    Можешь поискать на форуме, мы не так давно насчёт этого полемизировали (ключавое слово - $KeepPrivate)
     
  3. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.363
    Симпатии:
    2
    эту галку низя просто так убрать! без нее репликации не будет, а она может понадобиться...
     
  4. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    А я сказал убрать галку?
    Сорри, я имел в виду, напротив, никому её не убирать, что бы она была у всех по дефолту.
     
  5. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.363
    Симпатии:
    2
    Я бы так сказал, изучите справку по управлению доступом, и ставьте нужные требованиями параметры ;)
    бывает и такое, что эту галку надо снимать, чтобы некто не мог проводить ту же репликацию :)
     
  6. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Документы созданые юзером без этой галки имеют поле $KeepPrivate со всеми вытекающими.
     
  7. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.363
    Симпатии:
    2
    хм... тут оказалось все гораздо хужее и сложнее ;)
    оказывается, это баг, который пофиксили в 8.0.1...
    кроме того "Replicate or copy" влияет только на нотес-клиент, если сказанное в справке - правда :)
    а это поле должно быть только в тех документах, которые созданы по форме со включенной галкой "Disable printing/forwarding/copying to clipboard".

    в общем, делайте выводы сами :)

    http://www-10.lotus.com/ldd/r5fixlist.nsf/...5/?OpenDocument

    http://www-304.ibm.com/jct09002c/isv/tech/...ual?oid=2:80821

     
  8. oxystile

    oxystile Гость

    сорри, в этом контексте<<Агент с Target = Pasted Documents
    Ну и галку, естественно, убрать, у неё есть одно злобное побочное действие.>> идет ведь речь о галке Replicate or copy documents?
    Агент с Target = Pasted Documents, первый раз о таком слышу, можно еще немного инфы о нем

    Disable printing/forwarding/copying to clipboard ставить галку не стоит, т.к. это погасит обычное Copy текста
    вот тут у человека copy/paste не работало http://codeby.net/forum/threads/15639.html?hl=$KeepPrivate ему посоветовали галку снять

    видимо, агент...
    что скажите?
     
  9. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.363
    Симпатии:
    2
    я заметил, что галка replicate or copy тоже избавляет от возможности копирования текста с формы...

    агент: on event: when documents are pasted
     
  10. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Это не столько галка, сколько поле $KeepPrivate как мне кажется.
    Насчёт агента - именно это!
     
  11. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.363
    Симпатии:
    2
    вот в том и прикол, что в в старом документе это было, который был создан еще при наличии возможности копирования... возможно просто глюк... хз :)
     
  12. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Это в какой версии клиента?
     
  13. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.363
    Симпатии:
    2
    6.5.4, полная

    а что, у Вас так не срабатывает?..
     
  14. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Перепроверил, так же.
    Значит поле $KeepPrivate тут не при чём, а затык идёт именно по галочке.
    Что есть гуд.
     
  15. oxystile

    oxystile Гость

    а какие действия выполняет ангент?
    просто написать continue=false ведь не сработает

    где-то прочла, что он должен удалить те документы, которые только что вставились
    а как их получить?
     
  16. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Код (Text):
      Dim session As New NotesSession

    Dim Agent As NotesAgent
    Set Agent = Session.CurrentAgent

    Dim Db As NotesDatabase
    Set Db = Agent.Parent

    Dim Dc As NotesDocumentCollection
    Set Dc = Db.UnprocessedDocuments

    If Dc.Count > 0 Then
    Call Dc.RemoveAll(True)
    'Ну или менять форму, если нет прав на удаление...
    End if
    Не очень прикольно, что делишен стабы остаются, но лучше, чем в бегать в каждое view ставить Continue = False на QueryPaste ивенте...
     
  17. Medevic

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

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    На собаках проще: @HardDeleteDocument . :)
    Но проблема с правами остается.
     
  18. oxystile

    oxystile Гость

    прав на удаление нет (есть перенос в корзину)
    а смена формы doc.Form="choise"
    Call doc.Save(True,True)
    ведь таким образом?
    но втавка то все равно произойдет, просто этих доков не будет в представлении...
     
  19. Medevic

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

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Если нет прав, то можно удалять серверным агентом. Т.е. это будет вариант Omh с циклом вместо условия.
     
  20. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.363
    Симпатии:
    2
    а проблема использовать NotesUIView.Querypaste?...
     
Загрузка...

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