Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: HarryB am 07.09.04 - 12:34:41

Titel: @Prompt -> Symbol
Beitrag von: HarryB am 07.09.04 - 12:34:41
Hi Folks,

in einer Formel (keine Validierungsformel) möchte ich eine Fehlermeldung ausgeben. Wenn ich das mit @Prompt([OK], "...") mache, dann ist in der entsprechenden Dialogbox das "i" Icon für "Information" zu sehen. Tatsächlich handelt es sich jedoch um eine Fehlermeldung.

Habe ich in der Formelsprache - ähnlich wie die MessageBox in Script - eine Möglichkeit, eine dem User einfache Nachricht darzustellen, wobei ich das darzustellende Icon (mehr oder minder) frei wählen kann?

Viele Grüße
Harry
Titel: Re:@Prompt -> Symbol
Beitrag von: klaussal am 07.09.04 - 12:43:59
... mir ist da nix bekannt... :'(
Titel: Re:@Prompt -> Symbol
Beitrag von: koehlerbv am 07.09.04 - 12:48:02
@Prompt bietet (leider) keine Auswahl für anzuzeigende Symbole.
Titel: Re:@Prompt -> Symbol
Beitrag von: HarryB am 07.09.04 - 12:53:12
@Prompt bietet (leider) keine Auswahl für anzuzeigende Symbole.

Sehr schade, denn dadurch wird leider die Fehlerbehandlung meiner Datenbank, in Bezug auf die Symbole in den Boxen, inkonsistent. :-\

Wegen einer Funktion, die in drei Zeilen mit @Formeln schnell und sauber erledigt ist, fange ich auch nicht an zu scripten.

Viele Grüße
Harry
Titel: Re:@Prompt -> Symbol
Beitrag von: Driri am 07.09.04 - 13:11:26
Lager die Messagebox doch einfach in einen Agent aus, den Du dann per @Command([ToolsRunMacro]) aus der Formel ausführst.
Titel: Re:@Prompt -> Symbol
Beitrag von: HarryB am 08.09.04 - 09:09:37
Lager die Messagebox doch einfach in einen Agent aus, den Du dann per @Command([ToolsRunMacro]) aus der Formel ausführst.

Auch ne gute Idee. Werde ich mal ausprobieren.

Viele Grüße
Harry
Titel: Re:@Prompt -> Symbol
Beitrag von: HarryB am 13.09.04 - 15:14:48
So, das Problem habe ich jetzt ganz anders gelöst. Ich habe es dem Benutzer unmöglich gemacht, in den Fehler hineinzulaufen. Also kommt auch keine Fehlermeldung hoch, in der ich das Icon anpassen müßte. :D

Viele Grüße
Harry
Titel: Re:@Prompt -> Symbol
Beitrag von: HarryB am 04.01.06 - 09:41:27
Lager die Messagebox doch einfach in einen Agent aus, den Du dann per @Command([ToolsRunMacro]) aus der Formel ausführst.
Halte ich nicht für die eleganteste Lösung, aber sie funktioniert. Nicht elegant deswegen, weil ich für jede Nachrichtenbox einen neuen Agenten anlegen muss...

Das habe ich jetzt in einer Datenbank umgesetzt, die mit der, in der das Problem ursprünglich auftauchte, nichts zu tun hat.

Allerdings könnte das nur IBM elegant umsetzen, indem Sie der Prompt Funktion ein Custom Icon spendiert.

Viele Grüße
Harry
Titel: Re:@Prompt -> Symbol
Beitrag von: Axel am 04.01.06 - 10:27:01
... Nicht elegant deswegen, weil ich für jede Nachrichtenbox einen neuen Agenten anlegen muss...

Nicht unbedingt.

Du braucht nur einen Script-Agent, der eine Messagebox anzeigt. Die Infos, was angezeigt werden soll, holt sich der Agent bspw. aus der notes.ini.

Als Alternative zur notes.ini wären auch Profildokumente denkbar. Deren Verwaltung kann über Klasse für UserProfile (http://www.free.dominoserver.de/computer/noteslibrary.nsf/d2d59a3d7fc73a2bc1256a6900638352/74e4b61d04ca824dc1256db20041582a!OpenDocument) erfolgen.

Zugegeben, dass ist auch nicht gerade das Eleganteste, aber immer noch besser als einen Haufen einzelne Agenten zu erstellen.


Axel

Titel: Re: @Prompt -> Symbol
Beitrag von: HarryB am 04.01.06 - 12:08:15
In der Notes.ini speichere ich nicht gerne Informationen zwischen. Ein Profildokument hielte ich da für sinnvoller. Allerdings habe ich es letztendlich wieder mal ohne Formeln und mit Script gelöst, indem ich die relevanten Teile in den QueryClose Event ausgelagert habe. Letztendlich war es ohnehin unumgänglich, weil ich mit Formel zwar viel, aber eben doch nicht alles machen kann.

Nur zur Erläuterung: Ich benötige Zugriff auf die ACLs zweier verschiedener Datenbanken; ich baue gerade einen Dialog, mit dem man die ACL einer Datenbank auf eine andere kopieren kann, mit ziemlich vielen Optionen; z.B. welche Teile man genau kopieren möchte, nur die ACL selbst oder auch Rollen, Adminserver usw. und ob man die Ziel ACL überschreiben oder ergänzen möchte.

Viele Grüße
Harry
Titel: Re: @Prompt -> Symbol
Beitrag von: Axel am 04.01.06 - 12:53:07
In der Notes.ini speichere ich nicht gerne Informationen zwischen.

Ich eigentlich auch nicht. Aber wenn es sich nicht vermeiden lässt, oder es ein Riesenaufwand wäre es zu umgehen, dann wähle ich doch schon mal den Weg Variablen in der notes.ini zwischenzuspeichern. Allerdings wird beim Beenden der DB auch wieder hübsch saubergemacht.

Axel
Titel: Re: @Prompt -> Symbol
Beitrag von: Tode am 05.01.06 - 16:49:25
hmmm... soll jetzt nicht in eine Grundsatzdiskussion ausarten: Aber warum speichert Ihr nicht gerne in der ini zwischen ?

Das ist bei mir inzwischen "State-of-the-art" für Werte- Übergaben jeder Art.
Allerdings sorge ich nach jedem auslesen dafür, dass der Wert fein säuberlich wieder entfernt wird:

also: Agent 1: @Environment( "Meine_Uebergabe" ; "Test" )
Agent 2: x := @Environment( "Meine_Uebergabe" );
@Environment( "Meine_Uebergabe" ; "" )
und dann mit x weiter- arbeiten.

Aber wenn es triftige Gründe gegen die Verwendung der notes.ini als Puffer gibt, dann wäre ich da schon interessiert dran....

Gruß
Tode
Titel: Re: @Prompt -> Symbol
Beitrag von: Axel am 05.01.06 - 19:11:42
Die "Abneigung" ini-Dateien als Zwischenspeicher zu vewenden kommt bei mir noch auch Win3.1 - Zeiten.

Damals war es von vielen Programmieren Usus Konfigurationsdaten und variable Daten in der Win.ini zu speichern und sie dadurch zuzumüllen. Das hat sich dann auf die Ladezeiten von Windows negativ ausgewirkt. Ich hatte mal einen Programmierer darauf angesprochen und was kam auf die Frage warum in die Win.ini und nicht in eine eigene zurück? Nur ein langezogenes Äähmmm....

Bei Notes verhält es sich nun genauso. Ich habe viele Datenbanken (auch von namhaften Anbietern) gesehen, die die Notes.ini zumüllen, dass es eine wahre Freude ist. Von Saubermachen keine Spur und da schwillt mir der Kamm.

Wenn ich eigene DBs erstelle erfolgt bei mir der Datenaustausch in der Regel über Profildokumente, allerdings habe ich eine eigene Klasse dafür.
Auch userspezifische Einstellungen speichere ich hier ab. Ein Vorteil ist, ich habe alle Daten zu der DB an einer Stelle, nämlich in der DB selbst und ich muss nicht an x Stellen suchen. Außerdem kann ich zentral auf die Profildokumente zugreifen und im Problemfall eingreifen. Auf eine ini-Datei kann man nicht so ohne weiteres zugreifen.

Soweit meine 2ct. dazu.

Axel

PS:
Wenn das zu einer Grundsatzdiskussion "ausarten" sollte (was nicht negativ gemeint ist, denn solch eine Diskussion kann ohne weiteres sehr interessant werden), dann wäre ich dafür einen eigenen Thread dafür aufzumachen.