Domino 9 und frühere Versionen > ND6: Entwicklung
Prüfen ob Dokument im Editiermodus ist
mariab:
Habe in einer Maske eine Schaltfläche zum Löschen erstellt. Drückt der Benutzer auf die Schaltfläche, so sollten die entsprechenden Felder ausgefüllt werden. In der Ansicht prüfe ich dann diese Felder und zeige das Dokument an wenn die Felder leer sind.
Das Problem habe ich mit der Prüfung ob das Dokument im Edit-Mode ist oder nicht. Kann der Benutzer das Dokument nicht editieren, so sollte ihm die Meldung erscheinen, dass er dieses Dokument nicht löschen kann.
--- Code: ---Ergebnis :=@Prompt([YesNo]; "Eintrag löschen?"; "Soll der ausgewählte Eintrag gelöscht werden?");
@If(Ergebnis = 1;
@Do(
@Command([EditDocument];"1");
@If(@Command([EditDocument]) = "1";
@Do(
@SetField("Loesch";"gelöscht");
@SetField("LoeschVon";@UserName);
@SetField("LoeschAm";@Now)
);
@Prompt([Ok];"Achtung!";"Sie können diesen Eintrag nicht löschen") & @Return(null)
));
@Return(null))
--- Ende Code ---
Glombi:
@If(@Command([EditDocument]) = "1";
ersetzen durch
@If(@IsDocBeingEdited;
Andreas
mariab:
Habe nun die Änderung mit @If(@IsdocBeingEdited;... gemacht.
Ist das Dokument nicht im Editiermodus, so erscheint die Meldung "Sie können den Eintrag nicht löschen", klicke ich nochamls auf die Schaltfläche funktioniert es einwandfrei. Sieht fast so aus als ob Notes nicht ganz mitkommt, bzw zuerst das Prompt ausführt und dann erst das Dokument in den Edit-Mode switcht.
Fineas:
Hallo mirab,
versuch mal damit:
@If( @IsMember(@Name([CN];@UserName);@Author);
@Do(
Ergebnis :=@Prompt([YesNo]; "Eintrag löschen?"; "Soll der ausgewählte Eintrag gelöscht werden?");
@If(Ergebnis = 1;
@Do(
@Command([EditDocument]; "1");
@SetField("Loesch";"gelöscht");
@SetField("LoeschVon";@UserName);
@SetField("LoeschAm";@Now)
);
@Return(null)
)
);
@Prompt([Ok];"Achtung!";"Sie können diesen Eintrag nicht löschen") & @Return(null)
)
Die Formel kann man je nach Einsatzbedarf noch vereinfachen. Aber so tut es auf Grundlage der Beschreibung erstmal.
Wesentlich eleganter wäre es allerdings das Löschen über eine Hide-When auf der Schaltfläche nur im Editmode zuzulassen.
Gruß, Fineas.
koehlerbv:
@Author ist kritisch zu sehen - es wird nur auf das erste Item mit IsAuthors = True zurückgegriffen. Wenn gar kein entsprechendes Item vorhanden ist, funktioniert's natürlich auch nicht ...
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln