Feld in Maske aktualisieren

  • Hallo zusammen,


    ich habe eine kleine Frage.


    Ich habe ein Profildokument mit einem Feld dass eine Zahl enthält.


    dann habe ich noch eine Maske. Diese enthält ein berechnetes Feld mit diesem Code:
    _var := @GetProfileField("setup";"deleteDays");
    @Text(@Adjust(date;0;0;_var;0;0;0))


    Es berechnet also das erstelldatum + die Zahl aus dem Profildokument.
    Das funktioniert beim Anlagen eines Dokuments auch wunderbar, allerdings, wenn ich das Profildokuent ändere, dann ändert sich das Feld in der Masle leider nicht. Wie kann ich das anstellen? :)


    Vielen Dank für eure Hilfe!!

    • Offizieller Beitrag

    mit einem Script, welches dies tut, wenn sich das Feld im Profildokument ändert.


    Das Script muss im QuerySave des Profildokumentes eingebunden werden.


    Gruß
    Dirk


    %edit
    da Profildokumente gecacht werden, könnte es auch ein Agent auf dem Domino nachts machen.

    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

  • Profildokumente werden extrem gecacht, daher greifen Änderungen an diesen frühestens nach komplettem Schliessen und neuöffnen der Datenbank.


    Für so eine Zweck würde ich niemals Profildokumente verwenden

  • Okee, kein Profildokument, schade obwohl es gut funktioniert :)


    Aber wie mache ich es dann?
    Eine normale Maske, wo der Admin eine Zahl eintragen kann und dann? Per Script im QueryClose wie es Dirk vorgeschlagen hat?


    Lg die Anfängerin

  • Die Frage ist: willst du den Wert nur bei neuen Dokumenten nach deiner Formel haben oder bei allen ?


    Bei allen wäre es wie Dirk es sagt im QueryClose am besten, oder über einen Agenten

  • Ja bei den neuen funktioniert es ja dann mit der Formel im berechneten Feld.


    Ich hätte gerne immer ALLE Dokumente auf dem aktuellen Stand --> sprich erstelldatum + Feld im Profildoc.

    • Offizieller Beitrag

    bau Dir eine Ansicht, die alle Dokumente hat, die geändert werden sollen. Danach lässt Du einen Agenten laufen:
    - der die Ansicht durchgeht (NotesView.GetFirstDocument, NotesView.GetNextDocument)
    - die Felder der einzelnen Dokumente ändert (falls der FeldTyp im Profildokument dem in der Maske entspricht, einfach NotesDocument.Feldname = ProfilDocument.Feldname)
    - das Dokument speichert (NotesDocument.Save)


    Oder
    als NotesDocumentCollection holen und dann mit StampAll arbeiten.


    Zu den Methoden / Eigenschaften, die ich aufgeführt habe findest Du in der Designer-Hilfe Beispiele und falls Du hängen bleibst, dann poste die Probleme hier.


    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