Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Egon am 12.08.04 - 13:54:58
-
Eine Maske soll durch einen Button für kurze Zeit in den Bearbeitungsmodus gesetzt und anschließend sofort gespeichert werden. Wie funktioniert das? ::)
-
Gib uns doch ein paar mehr Details.
- Warum das ganze ?
- Formel oder Script ?
- Wie definierst sich "kurze Zeit" ?
-
Durch ein Script in einen Button wird eine Maske geöffnet. In dieser Maske ist ein Feld welches durch einen DBLookup berechnet wird. Die Daten für den Lookup kommen aus einer Ansicht, die mit Hilfe einer anderen Maske (SM) erzeugt werden. Der Button befindet sich in der Maske (SM). Damit die Datenbank als Schablone genutzt werden kann, muss ich sicherstellen, dass bereits vorhandene Daten mit der neuen Schablone betrachtet und weiterverarbeitet werden können. Das funktioniert nur, wenn jedes bereits vorhandene Dokument mit der neuen Schablone geöffnet und gespeichert wird. Ich möchte aus verschiedenen Gründen keinen Agenten benutzen. Stattdessen möchte ich durch das Auslösen des Buttons zurerst die bereits im Frontend geöffnete Maske in den Editmodus setzen, speichern und dann die 2. Maske aufgehen lassen. Das mit den Aufgehen der 2. Maske funktioniert schon, nur eben das Setzen von SM in den Editmodus nicht! ???
-
@Command( [EditDocument] ; "1" );
-tuewasimmerDuwillst-
@Command( [FileSave] );
Aber ich denke mir, der Befehl den Du eigentlich suchst ist
@Command( [ToolsRefreshSelectedDocs] )
Aber da Du nicht schreibst, was DU eigentlich erreichen willst, muss Das erst mal genügen...
Tode
-
Hier ist mein Script
Dim s As New NotesSession
Dim ws As New NotesUIWorkspace
Dim db As NotesDatabase
Dim uidoc As NotesUIDocument
Set db = s.CurrentDatabase
Dim doc As New NotesDocument(db)
doc.Form = "Maske"
Set uidoc = ws.EditDocument(True, Doc)
Da muss jetzt nur noch so eine Art EditDocument für die Maske SM und ein speichern dieser hinein. Dies allerdings bevor die 2. Maske (hier Maske) geöffnet wird.
-
Hier ist mein Script
Dim s As New NotesSession
Dim ws As New NotesUIWorkspace
Dim db As NotesDatabase
Dim uidoc As NotesUIDocument
Set db = s.CurrentDatabase
Dim doc As New NotesDocument(db)
doc.Form = "Maske"
Set uidoc = ws.EditDocument(True, Doc)
Da muss jetzt nur noch so eine Art EditDocument für die Maske SM und ein speichern dieser hinein. Dies allerdings bevor die 2. Maske (hier Maske) geöffnet wird.
Ich habe mein Script nochmal geändert
Sub Click(Source As Button)
Dim s As New NotesSession
Dim workspace1 As New NotesUIWorkspace
Dim editUIdoc As NotesUIDocument
Dim editdoc As NotesDocument
Set editUIdoc = workspace1.CurrentDocument
editUIdoc.EditMode = True
Set editdoc = editUIdoc.Document
Call editdoc.Save(True,True)
'Messagebox" huhu !!!"
Dim ws As New NotesUIWorkspace
Dim db As NotesDatabase
Dim uidoc As NotesUIDocument
Set db = s.CurrentDatabase
Dim doc As New NotesDocument(db)
doc.Form = "Neue_Maske"
Set uidoc = ws.EditDocument(True, Doc)
End Sub
Dieses Script setzt eine bestehende Maske in den Editmodus und soll sie danach speichern. Die 2. Aufgabe es Scriptes ist es eine 2. Maske im Bearbeitungsmodus aufgehen zu lassen. Leider funktioniert das Script noch nicht richtig. Das mit dem Speichern der 1. Maske klappt nicht. Leider brauch ich aber dieses Feature, weil beim Speichern der 1. Maske ein Wert in eine Ansicht abgelegt wird, der später für die 2. Maske als berechneter Wert benötigt wird.