Domino 9 und frühere Versionen > ND6: Entwicklung

Kommunikation Form in Embedded Editor <-> Form

(1/2) > >>

Simon Dotschuweit:
Hi,

Kann ich über LS ein Feld in einer Form, die in einem Embedded Editor angezeigt wird
ansprechen? Also z.B. irgendwie an das UIDocument des Embedded Editors kommen?

Thx!

robertpp:
Ich denke nicht das das möglich ist weil das UIDoc ist ja das CurrentDoc und das ist immerhin das was du offen hast. Was willst du damit machen?
Vielleicht hilft dir da eine Dialogbox weiter.

Simon Dotschuweit:
Also ich hab eine Form mit einem fixen Layout (OS Felder in einer Tabbed-Tabellenstruktur siehe Anhang) Jetzt hab ich das Problem, das ich auf einem tab dynamische checkboxes anzeigen will, die sich aus einer view ihre Daten holt, ich weiss also nicht wieviele checkboxes ich zur Laufzeit haben werde. Aber in dem Tab ist nur begrenzt platz, in der Breite kann ichs recht gut über die columns steuern, die Höhe verzerrt mir allerdings irgendwann mein Layout.

Deswegen wollte ich die Checkboxes quasi in ein "designcontainer" mit scrollbars legen, ich hatte erst gehofft, dass es mit Layers geht, aber die haben keine Scrollbars und das einzige was sonst noch in Frage kam war ein Embedded Editor. Der schaut jetzt vom Layout auch super aus, leider haben die angezeigten Daten nix mit der Hauptform zu tun, weil ja ne komplett unabhängige andere Form in dem Editor ist.

Und da hatte ich gehofft, dass ich beim PostOpen der Hauptform die Flags im Editor setzen, bzw beim Querysave wieder auslesen kann, aber ich hab schon so den Verdacht, dass das von der LS Api nicht unterstüzt wird....

robertpp:
Und wenn du es eben mit einer Dialogbox machst:

   Dim doc As NotesDocument
   Dim pdoc As NotesDocument   
   Dim dlgdoc As NotesDocument
   Dim view As NotesView
   Set db =s.CurrentDatabase
   Set pdoc = uidoc.Document
   Set dlgdoc = db.CreateDocument
   dlgdoc.Form = "(DlgApproval)"
   dlgdoc.CreateBy=""
   Set item =  dlgdoc.GetFirstItem( "CreateBy" )
   item.IsAuthors = True
   dlgdoc.CreateBy=s.UserName
   dlgdoc.Name = s.CommonUserName
   Call dlgdoc.Save(True,False)
   erg= ws.dialogBox("(DlgApproval)",True,True,False,False,False,False,"Lotus Notes",dlgdoc,True,False,True)
   If erg <> False Then
      If dlgdoc.Status(0) <>"" Then
         Status = Cint(dlgdoc.Status(0))
      End If
   End If

Und bevor du die Dialogbox aufmachst kannst du dir ja die Werte aus der View holen und die Checkbox setzten. Und die Dialogbox stellst du so ein das sie AutoSize ist.

billygates:
Hallo,

hast Du schon mal über die gute alte Formelsprache nachgedacht?

@dblookup, @dbcolumn...

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln