Как передать значение из Dialogbox в текущий документ?

Тема в разделе "Lotus - Программирование", создана пользователем Sasha*, 12 сен 2007.

  1. Sasha*

    Sasha* Гость

    Я на формы и view по «Shared Action» вызываю диалог «Рейтинг отзыва» . На форме диалога у меня есть кнопка «Применить» (Hotspot). Мне нужно, после того как пользователь выставит в данном диалоге «оценку», передать ее в текущий документ. (если это view, то в выделенный документ во вью, соответственно если диалог вызван на форме то в текущую форму).
    Подскажите пожалуйста как это сделать.
     
  2. root

    root Гость

    Посмотри может подойдет ?
     

    Вложения:

    • 123.rar
      Размер файла:
      20,7 КБ
      Просмотров:
      52
  3. Medevic

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

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Для: Sasha*
    Смотри метод notesUIWorkspace.RefreshParentNote или собаку @Command([RefreshParentNote]).
     
  4. Sasha*

    Sasha* Гость

    Для: root
    Код подходит, большое спасибо. И еще один вопросик.

    Как сделать, чтобы поле NEWF обновлялось сразу???

    На Uidoc.Refresh ругается.
     
  5. root

    root Гость

    На форме другой акшен сделай
    Код (Text):
    Dim session As New NotesSession
    Dim db As NotesDatabase
    'Dim doc As NotesDocument  
    Dim doc1 As NotesDocument
    Dim uidoc As NotesUIDocument
    Dim ws As New NotesUIWorkspace
    Dim tmp As String
    Set db = session.CurrentDatabase
    Set doc1= New NotesDocument( db )
    Set doc = session.DocumentContext
    Set uidoc = ws.CurrentDocument
    If ws.DialogBox ("ocn", True, True, False, False, False,     False, "Dialog Box", doc1) = True Then
    uidoc.EditMode = True
    Call uidoc.FieldSetText("NEWF",doc1.GetItemValue("ocn")(0) )
    uidoc.Save
    uidoc.EditMode=false
    End If
     
  6. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Берёшь db.UnprocessedDocuments (если это делается во view то их может быть несколько)
    Берёшь от них первый документ.
    Потом уже либо его, либо временный диалог-документ показываешь и переносишь данные.
    Работает и во view, и в доке.

    Что-то вроде:
    Код (Text):
    Dim Sess As New NotesSession
    Dim Db As NotesDatabase
    Set Db = Sess.CurrentDatabase

    Dim Dc As NotesDocumentCollection
    Set Dc = Db.UnprocessedDocuments

    Dim Doc as NotesDocument
    Set Doc = Dc.GetFirstDocument

    Dim DlgDoc As NotesDocument
    Set DlgDoc = Db.CreateDocument

    Dim Ws As New NotesUIWorkspace
    If Ws.DialogBox("(FORM)",True, True, False, False, False, False, "TITLE", DlgDoc, True) = True Then
    Call Doc.ReplaceItemValue("FLD_1", DlgDoc.FLD)
    Call Doc.Save(True, False)
    End If
    И не надо делать разные actions для view и для формы.
    Это, кмк, не есть gud.
     
Загрузка...

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