Domino 9 und frühere Versionen > ND6: Entwicklung
Postopen und POstsave verknüpfen
matze79:
Hallo,
ich habe eine Klasse, die im Postopen und im Postsave initialisiert werden muss. Hintergrund: Ich lese in das Objekt einige Variablen des aktuellen Notesdokumentes ein. Diese sind aber erst nach dem ersten Speichern oder halt beim erneuten öffnen des Dokumentes existieren.
Frage1:
Kann ich die Initialiserung vie Postopen/Postsave auch über einen Button bewerkstelligen?
Frage2:
Ich habe im Postopen und im Postsave den gleichen Code. Kann ich den Code irgendwie automatisch vom Postopen in den POstsave übrnehmen, damit ich nicht an zwei Stellen den Code ändern muss?
Viele Grüße
matze
klaussal:
zu Frage 2 : das könnte man wohl über eine Function in einer Script-Bibliothek machen.
Axel:
--- Zitat von: matze79 am 13.07.05 - 11:35:08 ---Frage1:
Kann ich die Initialiserung vie Postopen/Postsave auch über einen Button bewerkstelligen?
--- Ende Zitat ---
Hi,
die Frage verstehe ich nicht so ganz. ???
Was du aber machen kannst, die Klasse maskenglobal zu deklarieren und dann in PostOpen-Event zu initialisieren. Sie steht dann auch im PostSave-Event zur Verfügung.
Axel
Semeaphoros:
Ich verstehe Frage 1 so, ob man den Code auch anderweitig aufrufen kann. Die Lösung für beide Fragen ist, entweder den Code im globalen Teil der Maske als Function oder Sub zu definieren, dann lässt er sich in allen Events/Buttons/internen Aktionen aufrufen, oder (was eh empfehlenswert ist), den Code in eine Scriptlib auszulagern, die man dann in den globalen Options einbindet.
matze79:
Hallo,
vielen Dank für Antworten. Hier nochmal mein Problem:
Ich habe eine geschützte Klasse. Diese Klasse muss ich initialisieren um die Methoden zu nutzen. Bei der Initialisierung im Postopen/Postsave weise ich Variablen aus dem aktuellen Notesdokument zu:
Sub Postopen(Source As Notesuidocument)
...
Set myObject = New myClass(Source)
myObject.params("objectVar").Value = Source.FieldGetText( "notesVar" )
...
End Sub
-> Wenn ich nun den Code in den Postopen eintrage, dann wird "notesVar" nur beim Öffnen des Dokumentes gelesen. Eine Variablenänderung wirkt sich erst beim nochmaligen öffnen aus.
-> Wenn ich meinen Code nun in den Postsave kopiere, habe ich nach dem Speichern die geänderte Variable in meinem Objekt.
Problem 1: Ich habe den gleichen Code an zwei Stellen. Wie kan ich den Code genau auslagern? Gibt es sowas wie include(), wo ich beliebigen Code (Klassen als auch einzelne Codezeilen) einfach zur Laufzeit einfügen kann?
Problem 2. Kann ich die Variable auch in einem Button zuweisen?
Viele Grüße
matze
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln