Public Variable aus Lotus Script in Formel benutzen

  • Hallo zusammen,


    nachdem ich nun mittels Lotus Script prüfen kann, ob eine (Teil-) Maske existiert, möchte ich anhand des Ergebnisses eine Aktion ein- bzw. ausblenden (also verstecken).


    Die Prüfung läuft in der PostOpen Methode der Maske. Das Ergebnis der Prüfung besagt, ob zu der aktuellen Maske eine Druckmaske existiert oder nicht.


    Existiert eine Druckmaske, so soll eine Aktion "Drucken" sichtbar sein, welche zur Druckmaske wechselt, druckt und wieder zur ursprünglichen Maske zurück wechselt.


    Die Aktion existiert bereits und funktioniert auch.
    Mein Problem ist jedoch: Wie soll ich aus der Hide-Formula der Aktion auf das Ergebnis der Lotus Script Funktion aus der PostOpen Methode zugreifen ?


    "In ein Feld schreiben" war meine erste Idee. Diese fällt jedoch leider aus folgenden Gründen flach:


    1. In ein Feld schreiben kann ich nur im Edit-Mode. Der Druck-Button soll jedoch auch im Read-Mode sichtbar sein, sofern eine Druckmaske existiert.


    2. Eben mal kurz in den Edit-Mode wechseln kann ich nicht, da der Benutzer ggf. kein Recht dazu hat, das Dokument zu editieren.


    Kann ich aus der Formel heraus evt. auf eine globale Lotus Script Variable, welche in der Maske definiert wird, zugreifen ? Oder habt Ihr noch eine andere Idee ?


    MfG


    Leon

  • Dazu musst du ein Feld setzen, ansonsten gibt es keine Möglichkeit von Formelsprache auf LotusScript Variablen zuzugreifen.


    Einzig andere aber nicht wirklich empfehlenswerte Variante wäre noch über die notes.ini

  • Hallo taurec,


    an die notes.ini habe ich auch schon mal gedacht. Aber wie Du ja schon sagst: Empfehlenswert ist es nicht wirklich.


    Ich habe auch schon probiert, mittels @IsError( @Command( [SwitchForm] ; printForm ) ) in der Hide-Form zu testen, ob die Druckmaske existiert... Aber SwitchForm ist leider in einer Hide-Formel nicht erlaubt.


    Ich lasse die Aktion nun einfach dauerhaft eingeblendet. Wenn die Druckmaske nicht existiert, erscheint halt eine (bzw. zwei) Fehlermeldungen. Unschön, aber geht wohl halt nicht anders.


    MfG


    Leon


    PS: Eine Idee ist habe ich doch noch: Ich versuche es einmal über ein Profildokument. Lotus Script könnte den Wert also in ein persönliches Profildokument des Benutzers schreiben und die Hide-Formel könnte auf dieses zugreifen und den Wert daraus ermitteln. Habe also den Status nochmal auf "offen" gesetzt und teste das mal aus...

  • Kannst du vergessen: @GetProfileField funktioniert nicht in Hide When-Formeln.

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • Hallo RockWilder,


    schade, dann werde ich die Aktion wohl doch zunächst wie in meinem letzten Post beschrieben immer anzeigen und damit leben, dass der User eine Fehlermeldung bekommt wenn es keine Druckmaske gibt.


    Langfristig werde ich dann wohl das Berechtigungssystem irgendwie bearbeiten müssen, damit solche temporären Systemfelder irgendwo / irgendwie geschrieben werden dürfen.


    ... daher der Status nun vorerst wieder erledigt.
    Danke für Eure Unterstützung !


    MfG


    Leon