Maske in Dok speichern rückgänig machen bzw neue Maske zuweisen

  • Hallo zusammen,


    ich habe da mal wieder ein kleines Problem. Ich habe in meiner Db die Haupteingabemaske im Dokument mit abgespeichert.


    Ich war da einwenig voreilig. Ich habe jetzt noch einige Änderungen an der Eingabemaske gemacht die auch den "alten" Dokumenten in der DB zugute kommen sollen.


    Wie kann ich allen Dokumenten in der DB die neue Makse zuweisen? (bzw in Ihnen abspeichern ?)



    Schon mal vielen Dank im Voraus. :)


    Bernd99

  • Weise einfach dem Feld "Form" im Dokument den neuen Maskennamen bzw. Maskenalias zu. Dann werden die Werte in der neuen Maske angezeigt, sofern die Feldnamen identisch sind.
    Ansonsten musst du einen Agenten zum migrieren der Daten schreiben.

  • War die Reihenfolge welches Form zum Anzeigen genommen wird nicht folgende:
    In Dokument gespeicherte Form - Form die in Feld Form steht - Default Form


    Dann muss man irgendwie das gespeicherte Form aus dem Dokument rausbekommen.
    Oder irre ich mich da etwa ?

  • Wird die Maske immer im Dokument gespeichert? Ich denke nur, wenn in den Maskeneigenschaften im Designer die Option "Maske in Dokument speichern" gewählt wird. Und die Option ist Default aus.


    Wenn du allerdings die Maske mit im Dok speicherst, dann bin ich auch überfragt.

  • Marboro


    Das sagte er doch in seinem Ursprungsposting, daß er die Maske mit im Dokument gespeichert hat


    Bernd99
    Ich hab da noch was gefunden wie es gehen sollte:


    Erstell einen Formel-Agenten mit folgendem Inhalt:


    SELECT $TITLE="Form Name";
    FIELD $TITLE:=@DeleteField;
    FIELD $INFO:=@DeleteField;
    FIELD $WINDOWTITLE:=@DeleteField;
    FIELD $BODY:=@DeleteField;
    FIELD FORM:="Form Name";


    Form Name ersetzt du durch deinen Maskennamen bzw den letzten Aliasnamen.
    Diesen dann drüber laufen lassen und dann sollte es gehen.


    Ich hab es selber nicht getestet, daher bitte erst mal an ner Kopie ausprobieren

  • Hallo,


    erstmal danke für die schnelle Antwort. Ich werde das gleichmal mit einem Agenten ausprobieren.


    Hallo Taurec,


    den Formnamen auszutauschen ist ja erstmal ok doch was ist mit den alten Inhalten einer Form ? z.B bei Querysave habe ich einwenig Script reingeschrieben.


    Der neue Formname ist übrigens der alte Formname ich habe lediglich einiges in der Programmierung (querysave, postopen) geändert.


    Ich hatte das mit dem "Form in Dok speichern" eigentlich so verstanden , das alle Form Infos mit in dem Dok landen.


    Und die müßte ich doch nun in dem Dok überschreiben oder löschen ???


    Ich werde erstmal Deine Formel testen und mich dann nochmals melden.


    Gruss
    Bernd99

  • Genau in diesen $-Feldern werden diese Infos gespeichert.
    Laut einer Info die ich gefunden habe soll durch Löschen dieser internen Felder die gespeicherte Maske aus dem Dokument gelöscht werden.
    Durch das setzen des Feldes Form am Schluss wird halt noch festgelegt, daß ab sofort diese Maske zum Anzeigen benutzt wird.

  • Hallo Taurec,



    leider funktioniert Deine Formel nicht.


    In einer in einem Dok gespeicherten Form gibt es kein Feld "Form".


    Die wichtigen Infos scheinen alle in den Feldern $$ usw zu stehen.


    Vielleicht gibt es noch einen anderen Ansatz um das Dok von der Form zu lösen ?


    Oder das Dok mit der neuen Form zu überschreiben.



    Gruss


    Bernd99

  • Hallo Taurec,


    Deine Formel funktioniert doch man muß nur


    $Actions noch einbauen und löschen.


    SELECT $TITLE="Form Name";
    FIELD $TITLE:=@DeleteField;
    FIELD $INFO:=@DeleteField;
    FIELD $WINDOWTITLE:=@DeleteField;
    FIELD $BODY:=@DeleteField;


    FIELD $ACTIONS:=@DeleteField;



    FIELD FORM:="Form Name";



    Ich bin ja kein großer Freund der Notes Hilfe aber ich habe nach langem herumsuchen doch noch etwas gefunden.


    Vielen Dank nochmal für Deine schnelle Hilfe die hat mich auf den richtigen Weg gebracht.


    Gruss


    Bernd99 :D