вью

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

  1. jmp

    jmp Гость

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

    medin84 Well-Known Member

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

    Kizarek86 Well-Known Member
    Lotus team

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

    PaKo Well-Known Member

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

    Kizarek86 Well-Known Member
    Lotus team

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


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

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

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

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

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

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

    Kizarek86 Well-Known Member
    Lotus team

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

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

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


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

    Kizarek86 Well-Known Member
    Lotus team

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

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

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

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

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

    Kizarek86 Well-Known Member
    Lotus team

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

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

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

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

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

    PaKo Well-Known Member

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

    Kizarek86 Well-Known Member
    Lotus team

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

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

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

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



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

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

    Call notesUIDocument.DeselectAll
     
  16. Akupaka

    Akupaka А че я?.. О.о

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

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

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

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

    Kizarek86 Well-Known Member
    Lotus team

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

    есть код:

    Код (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

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

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

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

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