Domino 9 und frühere Versionen > Entwicklung

Feld im Ursprungsdokument setzen

(1/2) > >>

lotus blue:
Hallöchen.

Hoffe mir kann jemand ein wenig auf die Sprünge helfen. ???

Ich habe eine DB in der mit Form 1 ein Dok gespeichert wird.
Gibt es eine Änderungen der Daten in diesem Dok kann er durch das Ausfüllen von Form 2 diese mitteilen und an eine zentrale Stelle senden.
Nun sollte beim versenden dieser Benachrichtigung das Feld "Aenderung" im Ursprungs-Dok (mit der Form 1)geändert werden.

Vielleicht kann jemand helfen.
Mfg


Driri:
Wie fängst Du so eine Änderung ab ? Muß der User Form2 ausfüllen oder soll da automatisch die Änderung erfaßt und versendet werden ?

Generell könntest Du ein Dokument mit Form2 als Antwortdokument zum Dokument mit Form1 erzeugen, dann hättest Du direkt die Verbindung und kannst auch entsprechend Infos im Parentdoc vornehmen.

robertpp:
Hast du jetzt ein bestehndes Script damit du die Änderung protokollierst? Wenn nein dann kannst du dir mal die History-Class von Michael ansehen. Wenn du dann eine Änderung festgestellt hast kannst du dann anschließend im Querysave des Form1 doc's ja werte in eine neues Doc (Form 2) übergeben und mit Michaels Lösung hast du auch dann gleich die Änderung protokolliert. Das Form 2 doc kannst du dann entweder noch anzeigen lassen damit der user noch was ändern kann oder es wird autom. versendet.

lotus blue:
Also vielen Dank schon mal für die Hilfen.

@Driri
Mit Antwortdokumenten kann leider in dieser DB nicht gearbeitet werden.

@robertpp
Das mit der History-Class scheint mir schon zu weit gegriffen.
Vielleicht noch ein genau erklärtes Beispiel wie es so ähnlich ablaufen könnte.

Es wird ein Adresseintrag mit Form 1 angelegt.
Dieser wird dann in einer View ganz normal angezeigt.
Ist dem Anwender jedoch eine Adressenänderung dazu bekannt, kann er mittels Form 2 diese Änderung mitteilen.
Eine zentrale Stelle überprüft dann die Hinweise und übernimmt sie in das Ursprungsdokument.
Öffnet in der Zwischenzeit ein User das Dok (in dem bereits eine Änderung gemeldet wurde), erhält er einen Hinweis, dass Änderungen in diesem Eintrag vorliegen und diese derzeit geprüft werden.

Für den Anwender ist immer nur das Ursprungsdokument sichtbar, nie die derzeit zu überprüfende Änderung (Form2).
Um dies zu realisieren müßte ich nun durch das Absenden(Button) einen Feldwert im Ursprungsdokument setzten (z.B. Feld "Aktuell" auf 2).

Dann könnte ich im Postopen-Modus z.b. @If(Aktuell= "2";@Prompt([OK];"Achtung";"Es wurde zu diesem Eintrag eine Änderung gemeldet. Die angezeigten Daten könnten nicht aktuell sein.");"") eintragen.

Kann sein dass ich zu kompliziert in der ganzen Sache denke.
Aber hoffe trotzdem auf einen guten Rat.

Mfg

robertpp:
Aber dann hast du eh schon fast alles fertig.

In der Ansicht machst du dann einen Button mit:

  Dim session As NotesSession
  Set session = New NotesSession
  Dim doc As NotesDocument
  Set doc = session.DocumentContext

Somit hast du zugriff zu dem markierten Document.
dort setzt du den Status:

doc.Status = 2
call doc.Save(True,False)
und dann noch ein neues Doc mit CreateDocument (siehe Hilfe)
neuesdoc.Send (true)

Dann das was du im Postopen geschrieben hast und am Schluss muss natürlich der Status mittels Button zurückgesetzt werden.

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln