вью

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

  1. jmp

    jmp Гость

    Добрый день!
    При двойном нажатии по документу во вью, открывается документ.
    Возможно сделать так, чтобы документ не открывался?
     
  2. medin84

    medin84 Well-Known Member

    Регистрация:
    27 июн 2007
    Сообщения:
    106
    Симпатии:
    0
    во вью
    Sub Queryopendocument(Source As Notesuiview, Continue As Variant)
    Continue=False
    End Sub
     
  3. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    можно ли на уровне представления, запретить удалять документы?
     
  4. PaKo

    PaKo Well-Known Member

    Регистрация:
    29 апр 2005
    Сообщения:
    59
    Симпатии:
    0
    А если попробовать в Скрипте Бд на querydocumentdelete проверять какая вюха активна и запрещать из неё удалять? Не устроит?
     
  5. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    PaKo кхм, а что такое скрипт БД?)


    а нашел) шас попробуемс.

    но все же актуально, можно ли запретить удаление документа на уровне вью?)
     
  6. morpheus

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

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    kizarek
    в базе данніх есть свои собственніе события (event)

    в дизайнере. в БД зайти в Other->Database resources->Database Script ... вот там и есть заголовки тех самых ивентов

    можно использовать свойство документа ParentView property - но ограничения надо учесть ( читай хэлп )
     
  7. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    кхм, а как в этом событии определить какие документ(ы) удаляются?
     
  8. morpheus

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

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


    или просто Source.Documents
     
  9. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    Morpheus
    задолбаю счас)))

    как убрать с документа выделение о удалении?)

    допустим делаем при пометке документа на удаление условие, и надо потом снят эту пометку.
     
  10. morpheus

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

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    kizarek
    NOtesUIView -> DeselectAll
     
  11. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    во залип то)))

    как зная NotesDocument получить его NotesUIDocument ?)))
     
  12. morpheus

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

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

    а зачем это?
     
  13. PaKo

    PaKo Well-Known Member

    Регистрация:
    29 апр 2005
    Сообщения:
    59
    Симпатии:
    0
    UI - UserInterface, так что через UI можн овзять только открытый документ. А получить его можно через NotesUIWorkspace
     
  14. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    Morpheus
    ну получаем коллекцию документов которые помечены на удаление, дальше условие:

    Set doc = collection.GetNthDocument(i)
    If doc.getitemvalue("Form")(0) = "форма1" Then
    'Call notesUIDocument.DeselectAll - тут снять документ с удаления надо
    End If
     
  15. morpheus

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

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    kizarek
    первое замечание ... не юзать GetNthDocument(i) , а юзать GetFirst/Next



    втарое ... что мешает после всех операций вызвать снятие галок ( кстати, разве они,галки, сами не снимуться после удачного удаления ???)

    Код (Text):
    If doc.getitemvalue("Form")(0) = "форма1" Then
    тутчтото делаем и удалям
    end if

    Call notesUIDocument.DeselectAll
     
  16. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    ребята, а вы не слишком увлеклись? :)
    для чего тут NotesUIDOCUMENT?..
    если снимать галки надо в виде... NotesUIDocument.DeselectAll и NotesUIView.DeselectAll это немного разные методы ;)
     
  17. morpheus

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

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    плять, я и не заметил как kizarek поменял уивид на уидок..... пятница блин....

    я ж написал
     
  18. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    ыть....в том то и запара что хз как галки то снять.

    есть код:

    Код (Text):
    Sub Querydocumentdelete(Source As Notesuidatabase, Continue As Variant)
    Dim db As NotesDatabase
    Dim collection As NotesDocumentCollection
    Dim doc As NotesDocument
    Dim uidoc As NotesUIDocument
    Set db = Source.Database
    Set collection = Source.Documents
    For i=1 To collection.Count
    Set doc = collection.GetNthDocument(i) 
    If doc.getitemvalue("Form")(0) = "Spr" Then
    если сюда вошли, то необходимо галку снять с документа...или как то
    по другому предотвратить удаление документа...вопрос как?))
    End If
    Next
    End Sub
    Morpheus
    дык потому и поменял что отлавить событие можно только при удалении документа, во вью то не поймаешь.
     
  19. Medevic

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

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
     
  20. morpheus

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

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    kizarek
    а тут в любом случае только один вариант Continue = False
     
Загрузка...

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