Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: airwalker am 23.07.07 - 09:56:08

Titel: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: airwalker am 23.07.07 - 09:56:08
Guten Morgen liebe LN-Gemeinde,

ich habe vor kurzem die Möglichkeit entdeckt mit @Dialogbox und einer sepraten Maske Feldwerte im aktuellen Dokument ändern zu können.

Das funktioniert auch soweit. Ich hätte jedoch folgenden Wunsch:

Die Dialogbox hat vordefinierte Felder, die mit ihrem übereinstimmenden Feldnamen in der Maske übernommen werden. Nun haben diese Felder jedoch Vorgabewerte, welche bei ausführen der Dialogbox im aktuellen Dokument dauerhaft geändert werden.

Nun stellt sich mir die Frage, ob es möglich wäre, diese Änderungen in den Vorgabewert des jeweiligen Feldes zu übernehmen, sodass bei erstellen eines neuen Dokuments diese Änderung sofort erscheint ohne erneut die Dialogbox zur Änderung aufzurufen. Habt ihr dafür eine Lösung?

Ich freue mich wie immer über eure Mithilfe :)
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: Axel am 23.07.07 - 10:53:31
Direkt lassen sich die Vorgabewerte in den Feldern nicht ändern. Das geht nur im Designer.

Eine Alternative wäre ein Dokument mit Feldern in denen die Vorgabewerte abgelegt sind. Die kannst du dann mit den Werte aus der Dialogbox füllen.

In den Vorgabewerte der entsprechenden Feldern liest du dann mit Formeln (z.B. @DbLookup) diese Werte aus.


Axel
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: airwalker am 23.07.07 - 10:56:42
Vielen Dank Axel. Habe bereits eine Feldkonfigurationsansicht, in der Felder definiert werden können. Hatte nur noch nicht daran gedacht diese auch für mein Problem zu verwenden  8)

Ich hätte aber gerne ein weiteres Add-on für die Auswahl der Felder.
Ich habe ja jetzt Dokumente, in denen die Vorgabewerte der Felder definiert sind.
Jetzt möchte ich mit einem Klick auf das Feld das entsprechende Dokument für das Konfigurationsfeld öffnen,
damit meine Anwender nicht den Umweg über eine seperate Ansicht gehen müssen, um dieses zu editieren.

Könntest du mir die Formel dafür sagen?
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: Axel am 23.07.07 - 11:04:42
Du musst dir die UNID mit @DbLokup aus einer Ansicht holen und dann kannst du mit @Command( [OpenDocument] ; ..... das Dokument öffnen.


Axel
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: airwalker am 23.07.07 - 11:18:26
Danke für die schnelle Antwort Axel. Ich habe jetzt in der Maske eine Aktionsschaltfläche hinterlegt, welche über dem Text des Feldes liegt. Die hinterlegte Formel lautet:

UNID := @DbLookup("":"NoCache";"";"JW_ANGE_Konfiguration_FIELDS";"JW_ANGE_Gewerk1"; 4);
@Prompt([Ok];"";UNID);
@Command([OpenDocument];"1";UNID)

In der vierten Spalte wird korrekt die UNID ausgelesen, was du PROMPT überprüft wird (Die UNID wird in der Ansicht mit @Text(@DocumentUniqueID) ausgegeben).
Nun kommt aber die Fehlermeldung:

Angegebener Befehl kann nicht ausgeführt werden.

Weisst du wo ich einen Fehler gemacht haben könnte?
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: Axel am 23.07.07 - 11:23:08
Versuch's mal mit

@PostedCommand([OpenDocument];"1";UNID)


Axel


Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: airwalker am 23.07.07 - 11:29:43
selbe Fehlermeldung :(
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: Axel am 23.07.07 - 11:33:22
Rufst du die Aktion aus der Dialogbox auf?

Axel
 
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: airwalker am 23.07.07 - 11:34:29
Die Aktion wird aus der Maske bzw. Teilmaske heraus aufgerufen.
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: Axel am 23.07.07 - 11:37:10
Dann fällt mir eigentlich nur noch das ein:

@PostedCommand([OpenDocument];"1";@Text(UNID))


Axel
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: airwalker am 23.07.07 - 11:43:05
will immer noch nicht funtionieren...
klappt es denn bei dir aus einer maske heraus?
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: Axel am 23.07.07 - 12:03:26
Geht bei mir auch nicht.

Ich glaube der Befehl lässt sich in Dokumenten gar nicht benutzen. Ich habe nochmal in der Hilfe gelesen. Da steht:

Zitat
In einer Datenbank muss eine Ansicht geöffnet sein, die das Dokument enthält, das Sie öffnen möchten.


Ich selbst habe den Befehl noch nie benutzt. Dir wird hier nur eine Script-Lösung übrigbleiben.

Axel
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: airwalker am 23.07.07 - 12:05:30
Oh...hättest du für eine script lösung ein beispiel zur Hand?
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: airwalker am 23.07.07 - 12:08:59
Ich habe die Lösung Axel  ;D

Man baue einfach ein

@PostedCommand([SwitchView];"JW_ANGE_Konfiguration_FIELDS");

vor

@PostedCommand([OpenDocument];"1";@Text(UNID))

und siehe da, die Ansicht ist geöffnet und das Dokument wird geöffnet :)
Titel: Re: @Dialogbox Feldwertaktualisierung von Label in Maske dauerhaft übernehmen
Beitrag von: Axel am 23.07.07 - 12:19:01
Ist zwar von hinten durch die Brust ins Auge, aber wenn's funktioniert.


Axel