Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: nieke am 10.09.02 - 09:55:47

Titel: Neues Dokument erstellen, altes löschen
Beitrag von: nieke am 10.09.02 - 09:55:47
Hallo!

Ich habe jetzt schon einige Sachen ausprobiert und komme immer an der gleichen Stelle nicht weiter.
Vielleicht könnt Ihrmir ja sagen, wie ich das machen muß, damit Notes das macht, was ich will.

Ich habe ein Dokument. Ich möchte, daß ich per Knopf ein neues Dokument, das eine Antwort auf das vorige ist, erstellen. Diese soll geöffnet bleiben, damit neue Felder ausgefüllt werden können.
Das vorige Dokument sollte dann gelöscht werden.

Wie genau muß ich da vorgehen, damit es auch wirklich funktioniert? Ich glaube, ich habe einen Denkfehler irgendwo drin.


Titel: Re: Neues Dokument erstellen, altes löschen
Beitrag von: Obrac am 10.09.02 - 10:04:34
Ich bin mir nicht sicher, aber: Kann ein Antwortdokument denn ohne Vaterdokument existieren? Warum muss es denn ein Antwortdokument sein?
Titel: Re: Neues Dokument erstellen, altes löschen
Beitrag von: Rob Green am 10.09.02 - 10:08:15
ich würds nicht so machen:

User kommt
Doc A ist da
macht daraus Doc B
Doc A ist noch da
jetzt nicht mehr (weil gelöscht)
User geht rauchen
Doc B ist bald auch nicht mehr da, weil User einfach ESC drückt
User ruft sauer bei Hotline an: "wo ist mein verdammt wichtiges Document??? Ich hab nix gemacht und das Ding ist weg. Verdammte Elektrik!!! Macht, dass das Teil ganz schnell wieder da ist!!!!"

Machs lieber so:
- Doc A
- aus Doc A das Doc B erstellen
- Doc B bekommt die DocUnid des Doc A in ein verstecktes Feld
- erst wenn Doc B gespeichert wird, läuft im Query Save etwas ab, das Doc A löscht (Abfrage über document.IsNewNote beginnen)

im Query Save steht zB
...
Dim session As New NotesSession
Dim db As NotesDatabase
Dim docB As NotesDocument
Dim docA as NoteDocument
Set db = session.CurrentDatabase    
...

dim _key as String
_key = docB.Feld_Mit_UNID_Von_DocA(0)
Set docA = db.GetDocumentByID( _key )
If ( docA.Remove( False ) = True ) Then
 Messagebox ( "Doc A ist weg" )
Else
 Messagebox ( "Doc A ist nicht weg, weil noch einer drin ist" )
End If
...
Titel: Re: Neues Dokument erstellen, altes löschen
Beitrag von: nieke am 10.09.02 - 10:11:10
ja, das geht (glaub' ich)
Das ist auch nicht mein Problem. Ich kann daraus ja auch ein normales Dokument machen und den einzelnen Feldern sagen, daß sie berechnet sind.
Aber dann.... Ich muß immer noch das neue erstellen und das alte per Script löschen.
Titel: Re: Neues Dokument erstellen, altes löschen
Beitrag von: nieke am 10.09.02 - 10:23:48
... Danke Rob, vor allem für die fantasievolle Darstellung des Problems....
Werde das mal versuchen und mich dann entweder fröhlich oder frustriert zurückmelden...
Titel: Re: Neues Dokument erstellen, altes löschen
Beitrag von: nieke am 10.09.02 - 11:40:36
... melde ich mich fürchterlich fröhlich zurück.
Es funktioniert jetzt alles so, wie ich das will.

DANKESCHÖN!