Удаление Документов

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

  1. orion

    orion Active Member

    Регистрация:
    22 окт 2013
    Сообщения:
    39
    Симпатии:
    0
    Здравствуйте.
    Условие: В представлении отображаются документы и ответные документы (Ответ-на-Документ). Пользователь может удалять документы по-одному, а может выделить несколько документов, в разброс, как первичные так и ответные. Причём, не обязательно, что при выделенном ответном документе будет выделен родительский документ.
    Задача: Нужно запретить удаление родительских документов при условии, что не выделены для удаления ответные документы.

    Говоря простым языком, нужно организовать удаление без зависания в базе документов-призраков. Я же правильно понимаю, что при удалении родительского документа, ответные документы останутся в базе?

    Можно ли как-то наиболее просто решить такую задачу?
     
  2. savl

    savl Lotus team
    Lotus team

    Регистрация:
    28 окт 2011
    Сообщения:
    2.052
    Симпатии:
    146
    С удалением родителя - сносить потомков и потомков потомков. Рекурсивно.
    Лучше всего не сносить, а брать и метить к удалению через поле, по полю скрывать из вьюхи.
    А сносить потом, ночью, агентом, либо архивировать в другую базу.

    Ну и восстанавливать соответственно проще.
     
  3. Darkhan

    Darkhan Lotus team
    Lotus team

    Регистрация:
    14 дек 2012
    Сообщения:
    97
    Симпатии:
    4
    Утилита
    для сбора всей "подноготной" используйте метод .getDocumentByTreeFormula
     
  4. swyatogor

    swyatogor Lotus team
    Lotus team

    Регистрация:
    24 фев 2014
    Сообщения:
    432
    Симпатии:
    10
    вопрос возник такого плана.. есть документ в базе. я знаю его юнид.. при запросе
    db.getdocumentbyunid - я его получаю.. но если документ удалить (софт удаление - в корзину), документ в базе есть я его вижу. но по запросу его не получить - грит не верный noteid.. но если его вернуть из корзины.. он опять доступен к запросу..
    так собственно вопрос... как проверить есть ли документ в базе?
     
  5. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    А что мешает сначала поискать по unid, с on error 4091 resume next? В случае если doc is nothing или у полученного doc unid пустой, по пощупать по 'корзине' c первой сортированной колонкой @text(@documentuniqueid)) как view.getdocumentbykey.
     
  6. swyatogor

    swyatogor Lotus team
    Lotus team

    Регистрация:
    24 фев 2014
    Сообщения:
    432
    Симпатии:
    10
    Мешает то что не хотелось бы лезть в шаблон почтовой базы )))) и пользоваться только теми возможностями что предоставлены первоначально..
    но я попробую сотворить то что Вы посоветовали..
     
Загрузка...

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