Zugriff auf Schlüsselwortsynonyme

  • Hallo zusammen,


    ich habe in einer Maske mehrere Felder, jeweils vom Typ "Kontrollkästchen" mit jeweils einem Wert und einem dazugehörigen Schlüsselwortsynonym. Beispielsweise Feld1 mit dem Wert "Aufgabe 1|Erledigt". Nun versuche ich mittels LotusScript auf das Schlüsselwortsynonym des Feldes zuzugreifen. Wenn das Kontrollkästchen angehakt ist, kann ich mittels


    Dim ws As New NotesUIWokspace
    ws.CurrentDocument.FieldGetText( "Feld1" )


    auf das Schlüsselwortsynonym zugreifen. Mein Problem jedoch ist, dass ich genau die Schlüsselwortsynonyme von den Feldern benötige, welche nicht angehakt sind. Da mir die Methode FieldGetText nur ausgibt, was im FrontEnd angezeigt wird, bekomme bei diesen Felden logischerweise einen leeren String zurückgegeben.


    Ich hatte mir schon überlegt, ich könnte die Felder ja einfach temporär selbst anhaken und sie dann auslesen. Diese Idee musste ich jedoch wieder verwerfen, denn dazu müsste ich


    * entweder im FrontEnd mittels FieldSetText das Schlüsselwortsynonym selber hinein schreiben - welches ich aber ja nicht kenne -
    * oder im BackEnd den entsprechenden Wert hineinschreiben - welchen ich jedoch ebensowenig kenne.


    Oder irre ich mich und es gibt noch einen anderen Weg ein Kontrollkästchen anzuhaken ohne den Wert oder das Schlüsselwortsynonym kennen zu müssen ? Dann wäre das wenigstens ein Lösungsansatz.


    Gibt es eine Möglichkeit, auf die Schlüsselwortsynonyme der nicht angehakten Felder zuzugreifen ?


    MfG


    Leon

  • Schreib die Auswahlliste inklusive der Synonyme in ein seperates berechnete Feld, am besten nur zur Anzeige, dann kannst du auf dieses zugreifen und die angehakten rausschmeissen und schon hast du nur noch die nicht angehakten

    • Offizieller Beitrag

    Du greifst über das Frontend zu. Damit Du den Alias bekommst, musst Du aber über das BackEnd zugreifen.


    Dim ws As New NotesUIWokspace
    ws.CurrentDocument.Document.Feld1(0)


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • @ taurec:


    Ansich eine gute Idee, aber so weiß ich am Ende immer noch nicht, welches Schlüsselwortsynonym aus der Auswahlliste Feld1 am Ende tatsächlich hat. Letztendlich gibt es sagen wir mal sechs oder sieben Felder, jeweils vom Typ Kontrollkästchen. Jedes hat ein ein anderes Schlüsselwortsynonym. Nun sind am Ende zwei Kontrollkästchen nicht angehakt. Woher weiß ich nun, welches Schlüsselwortsynonym aus der Auswahlliste zu welchem Kontrllkästchen gehört ? Ich müsste eine Verbindung zwischen dem Namen des Kontrollkästchens und dem Schlüsselwortsynonym + dem Wert in die Auswahlliste schreiben.


    @ Diali:


    So bekomme ich den Wert des Feldes, vorausgesetzt, das Kontrollkästechen ist angehakt. Den brauche ich aber nicht, sondern das Schlüsselwortsynonym aus dem FrontEnd.


    MfG


    Leon

  • @ taurec:


    Weil jedes davon unabhängig von den anderen angezeigt oder verborgen sein kann. Es handelt sich hier um eine dynamische Aufgabenliste. Jede Aufgabe hat ein eigenes Feld.


    Ich möchte am Ende in einer Messagebox ausgeben, welche Aufgaben noch zu erledigen sind. Die Schlüsselwortsynonyme bilden dabei den Aufgabentext.


    MfG


    Leon

  • Auch das lässt sich mit einem einzigen Feld lösen, indem du eben die Auswahlmöglichkeiten berechnest.


    Also anstatt x Hide When Formeln berechnest du in einem Feld die Auswahlmöglichkeiten und dann werden auch nur diese angezeigt.


    d.h.:


    Feld Auswahlmöglichkeiten:


    @if(Bedingung1;Wert1;"") :
    @if(Bedingung2;Wert2;"") ....

  • @ taurec:


    Okay, da hast Du natürlich Recht. Ich verstehe allerdings noch nicht, wie ich so besser an die Schlüsselwortsynonyme kommen soll von den Kontrollkästchen, welche nicht angehakt wurden !?


    MfG


    Leon

  • Na du hast dann im Endeffekt zwei Listen:


    Eine mit allen Möglichkeiten und eine mit den angehakten.


    Entfernst du jetzt aus der ersten Liste alle Elemente die in der zweiten sind, dann hast du als Ergebnis eine Liste aller nicht angehakten Optionen

    • Offizieller Beitrag

    für taurecs Vorschlag nimmst Du @Trim(@Replace(Liste_mit_allen_Elementen; Liste_mit_den_angehakten; ""))


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Noch als Ergänzung zu Dialis Formeln.


    Wenn du nur mit den Synonymen arbeitest, dann musst du diese erst noch extrahieren, d.h.:


    @Trim(@Replace(@Word(Liste_mit_allen_Elementen;"|";2); Liste_mit_den_angehakten; ""))