Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Simon Dotschuweit am 17.07.05 - 22:05:26
-
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!
-
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.
-
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....
-
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.
-
Hallo,
hast Du schon mal über die gute alte Formelsprache nachgedacht?
@dblookup, @dbcolumn...
-
Hallo,
hast Du schon mal über die gute alte Formelsprache nachgedacht?
@dblookup, @dbcolumn...
Da musst du mir kurz auf die Sprünge helfen, denn ich seh den Zusammenhang nicht ;)
-
Ich denke billygates meint das du mit @dbcolumn deine Checkboxwerte bekommst, die du ja wie man am Bild sehen kannst schon hast.
Aber ich finde mit einer Dialogbox bist du noch immer am Besten dran. Die kannst du auf [AUTOHORZFIT] und [AUTOVERTFIT] stellen und beim schließen der Dialogbox holst du dir wieder die werde aus dem dlgdoc und überträgst sie auf dein Haupt-doc.
-
robertpp gibt die Anwort in seinem ersten Satz. Nur gibt es auch in der Formelsprache die Möglichkeit, eine gesonderte Box zu nutzen (Per Extra-Form über @dialogbox oder über @picklist).
Ich würde mir mal die @Formeln und-Befehle in der Hilfe anschauen. Manches geht hier einfacher und schneller als im LS.