Domino 9 und frühere Versionen > ND8: Entwicklung
Frage: Pro Hauptdokument nur ein Antwortdokument - Formelsprache
Gabe:
Hallo zusammen,
seit einigen Tagen befasse ich mich mit dem Thema "Haupt- und Antwortdokumenten". Da ich bisher nur mit Formelsprache gearbeitet habe, nun meine Frage: Gibt es die Möglichkeit pro Hauptdokument nur ein Antwortdokument zu erlauben? Wenn es geht, dann das ganze mit Formelsprache. Habe die Hilfe bereits durch und auch schon im Forum gesucht - finde aber nichts. Anscheinend geht das nur mit Script - aber da fehlen mir echt die Basics (und die bekomme ich erst noch vermittelt). Habe zwar schon etwas im Internet gefunden (Script) aber möchte schon gerne wissen was ich da eigentlich mache. Ich möchte auch nichts vorgekautes sondern wirklich verstehen was da gemacht wird. Wäre nett wenn mir da jemand weiterhelfen könnte. :'(
cg-home:
Hi,
Du könntest doch versuchen beim erstellen der Antwort in das Hauptdokument
ein Flag (verstecktes Feld mit 0 oder 1 darin) zu setzen, welches Du bei der
Erstellung mit abfragst. Das sollte auch mit Formelsprache gehen.
Wenn Du nichts in das Hauptdok schreiben willst oder kannst geht es ggf. auch
mit @DocDescendants oder @DocChildren. Ob diese aus einer Aktion heraus
Funktionieren kann ich gerade nicht sagen, einfach mal in der Hilfe nach sehen.
mfg Christian
Axel:
--- Zitat von: cg-home am 02.11.12 - 22:33:24 ---Wenn Du nichts in das Hauptdok schreiben willst oder kannst geht es ggf. auch
mit @DocDescendants oder @DocChildren. Ob diese aus einer Aktion heraus
Funktionieren kann ich gerade nicht sagen, einfach mal in der Hilfe nach sehen.
--- Ende Zitat ---
Diese beiden @-Funktionen lassen sich nur in Fenstertitel- und Spaltenformeln nutzen.
@Gabe
Rein mit Formel was sauberes hinzubekommen ist schwierig. Das von Christian vorgeschlagene Flag ist eine Lösung, aber du musst z.B. auch dafür sorgen, dass wenn das Antwortdokument gelöscht wird auch das Flag zurückgesetzt wird.
Eigentlich bleibt dir nur der Weg über Script. Schau dir mal in der Designerhilfe die Klasse NotesDocument und hier besonders das Property Responses an. In der Hilfe sind auch Beispiele vorhanden.
Axel
Gabe:
Hallo Christian,
hallo Axel,
erstmal danke für die Unterstützung. Ich habe wie von Christian vorgschlagen erst einmal folgendes ausprobiert:
- Feld im Hauptdokument mit der Bezeichnung "Flag". Dieses Feld ist ein Textfeld und Bearbeitbar. Der Wert im Feld ist "2".
- Durch eine Aktion wird der folgende Formelbefehl ausgeführt:
REM {prüfe, ob richtiges Dokument gewählt};
@If(
form = "Gutschein";
@Success;
@Do(
@Prompt([Ok];"Fehler";"Sie müssen einen Gutschein zum annehmen auswählen");
@Return("")
));
@SetDocField($Ref;Flag;"1");
REM {prüfe ob bereits ein Antwortdokument besteht};
@If(
Flag != "2";
@Success;
@Do(
@Prompt([Ok];"Fehler";"Der Gutschein wurde bereits angenommen");
@Return("")
));
@Command([Compose]; "Annahme")
- Leider funktioniert das nicht so richtig. Bekomme jetzt immer die Meldung, dass der Gutschein bereits angenommen wurde.
Hab da bestimmt irgendwas in der Hilfe falsch verstanden (sehe auch im Hauptdokument das Flag immer mi 2 belegt ist). Schaue mit jetzt trotzdem auch wie von Axel vorgeschlagen die Klasse Notes Document und Property Responses an.
Liebe Grüße
Holger
Tode:
Ich würde das ganze ohne flag machen, ist zu Wartungsintensiv... Erstell Dir eine Ansicht mit den Antworten (Achtung: Antworthierarchie deaktivieren), kategorisiert nach @Text($Ref). Beim erstellen holst Du Dir die Unid des Hauptdokuments und machst einen DBlookup auf die view. Ist das ergebnis NICHT @Error, dann verweigerst Du.
Alle hier genannten Lösungsansätze funktionieren natürlich nur zuverlässig in einer Single Server Umgebung ohne lokale Repliken...
Sent from my iPad using Tapatalk
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln