Gültigkeit prüfen

  • Hallo,


    ich möchte in einem Feld den Status eines Dokuments prüfen.
    Dazu habe ich das Feld "Anlegedatum", "Gültigkeit" und "Status2". Das Feld Gültigkeit soll ein Datum das 10 Tage hinter dem Anlegedatum liegt berechnen, das funktioniert
    @Adjust(@Created;0;0;10;0;0;0)
    Im Feld Status2 soll jetzt m. H. von Feld Gültigkeit geprüft werden, wenn das Anlegedatum+10 also der Gültigkeit enstpricht, dann schreibe alt, sonst schreibe neu.
    Ich bekomms aber nicht hin.
    :roll:

  • Ich habs jetzt mal so versucht und es schein zu klappen:
    @If(Create=gueltigkeit;"alt";"neu")


    Create ist das Feld wo @Create berechnet wird. :lol:


    Wie ist das eigentlich muss ich dieses Feld dann berechnet lassen, damit sich der Status entsprechend ändern kann?

    • Offizieller Beitrag

    sind Anlegedatum und Gültigkeit Zeitfelder?, dann kann im Feld Status2 folgende Formel hinterlegt werden:


    @If(@Date(Anlegedatum) > @Date(Gültigkeit); "alt"; "neu")


    Beachte, das das feld eventuell berechnet zur Anzeige sein sollte, damit es immer beim Öffnen des Dokumentes neu berechnet wird. Außerdem sollte in schon vorhanden Dokumenten das Feld entfernt werden, wenn es bisher berechnet war.


    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

    • Offizieller Beitrag
    Zitat

    Ich habs jetzt mal so versucht und es schein zu klappen:
    @If(Create=gueltigkeit;"alt";"neu")


    dann wird das Dokument aber nur an einem Tag als alt markiert!


    Gruß
    Dirk

  • Wenn ich Ihre Formel nehme bekomme ich immer das für das Feld Status2 als Datentyp Zeit/Datum erwartet wird. Es soll aber doch Text berechnet werden.


    Das 2. Problem ist, dass wenn nach 10 Tagen das Doc abgelaufen ist, der Status auf "alt" gesetzt werden muss damit sich die Spalte in der Ansicht entsprechend ändern kann.

  • ad 1) Nein, da wird eher eines der felder Anlegedatum oder Gültigkeit kein Datums/Zeit-Feld sein.


    ad 2) Das macht man über einen Agent, der um z.b. 2 Uhr früh läuft in in allen abgelaufenen Dokumenten das Feld entsprechend setzt.

  • Feld Gültigkeit und Feld Anlegedatum sind Zeit/Datumsfelder Berechnet beim Anlegen


    Dann kann ich doch beim Anlegen, das Feld Status2 berechnen lassen und mittels Agenten wird es dann entsprechend nach Ablauf in alt geändert.

    • Offizieller Beitrag
    Zitat

    Wenn ich Ihre Formel nehme bekomme ich immer das für das Feld Status2 als Datentyp Zeit/Datum erwartet wird. Es soll aber doch Text berechnet werden.


    Der Fehler erscheint nur, wenn eines der Felder "Anlegedatum" oder "Gültigkeit" leer ist oder ein Text-Feld ist. Eventuell stimmen die Feldnamen nicht.


    Zitat

    Das 2. Problem ist, dass wenn nach 10 Tagen das Doc abgelaufen ist, der Status auf "alt" gesetzt werden muss damit sich die Spalte in der Ansicht entsprechend ändern kann.


    Das Feld Status2 wird aber nur beim Bearbeiten des Dokumentes geändert, d.h. jedes Dokument müsste an dem Tag bearbeitet werden, wo sich der Status ändert!


    Eine Alternative könnte sein einen Agenten jeden Morgen über alle Dokument laufen zu lassen, der den Status überprüft oder eine 2. Alternative wäre es die Status-Spalte in der Ansicht nachzuberechnen. Da beide Datumswerte im Dokument stehen, muss auch kein @Today oder @Now in der Ansicht verwendet werden.


    Gruß
    Dirk

  • Das mit dem Agenten klingt gut. Können Sie mir noch ein paar mehr Anhaltspunkte dazu geben?


    Wg. dem Datentypfehler habe ich einen Snapshop angehangen. Vielleicht sehen Sie etwas was mir nicht auffällt?

    • Offizieller Beitrag

    ja.


    Status2 wird bei neuen Dokumenten berechnet, obwohl das Feld Create noch nicht vorhanden ist.


    Die Felder werden von links nach rechts und von oben nach unten erstellt.


    Lösung:
    Feld Status ans Ende des Dokumentes verschieben.


    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