Questions & Answers

SOLVED
pbender
I'm new here

Regeln VISIBLE und VALIDATION

Jump to solution

Hallo zusammen,

ich habe in meinem Formular ein Logik, um Eingabefelder abhรคngig von einem CMS_INPUT_TOGGLE ein- bzw. auszublenden. Dieses funktioniert auch wunderbar. Nun mรถchte ich die Validierung der Felder nur aktivieren, wenn diese auch sichtbar sind. Mein Ansatz ist eine Vorbedingung mit IF zu definieren:

     <ON_SAVE>

        <IF>

            <PROPERTY source="st_date" name="VISIBLE"/>

        </IF>

        <WITH>

            <AND>

                <PROPERTY source="st_date" name="VISIBLE"/>

                <NOT>

                    <PROPERTY source="st_date" name="EMPTY"/>

                </NOT>

            </AND>

        </WITH>

        <DO>

            <VALIDATION>

                <PROPERTY source="st_date" name="VALID"/>

                <MESSAGE lang="*" text="Das Datum darf nicht leer sein!"/>

            </VALIDATION>

        </DO>

    </ON_SAVE>

Der Validierungsfehler wird trotzdem angezeigt, obwohl das zugehรถrige Feld nicht sichtbar ist. Das Abspeichern ist mรถglich!

screen.JPG

Edit: Zusรคtzliche Frage zu der Validierung. Wie kann ich รผberprรผfen, ob ein Datum in der Zukunft liegt?

Danke fรผr eure Unterstรผtzung

Viele GrรผรŸe

Philipp

0 Kudos
1 Solution

Accepted Solutions
jan-tilo
I'm new here

Hallo Philipp,

da Du die IF Abfrage eingefรผhrt hast, wird der Rest der Regeln ja nicht ausgefรผhrt, falls das Feld nicht sichtbar ist. Somit รคndert sich auch das zuvor berechnete Ergebnis des WITH Teils nicht.

Du musst die Regel so umbauen, dass die Prรผfung ob das Feld sichtbar ist, Teil des Ergebnisses von WITH wird.

Soll heiรŸen, wenn das Feld nicht sichtbar ist, muss das Ergebniss von WITH immer TRUE sein.

Viele GrรผรŸe

Jan Tilo

View solution in original post

0 Kudos
3 Replies
jan-tilo
I'm new here

Hallo Philipp,

da Du die IF Abfrage eingefรผhrt hast, wird der Rest der Regeln ja nicht ausgefรผhrt, falls das Feld nicht sichtbar ist. Somit รคndert sich auch das zuvor berechnete Ergebnis des WITH Teils nicht.

Du musst die Regel so umbauen, dass die Prรผfung ob das Feld sichtbar ist, Teil des Ergebnisses von WITH wird.

Soll heiรŸen, wenn das Feld nicht sichtbar ist, muss das Ergebniss von WITH immer TRUE sein.

Viele GrรผรŸe

Jan Tilo

0 Kudos

Hallo Jan Tilo,

danke fรผr den Hinweis. Nun funktioniert die Validierung wie gewรผnscht.

Viele GrรผรŸe

Philipp

0 Kudos

Hallo,

hierzu ein Hinweis: Die Reihenfolge in der die Regeln ausgewertet werden ist nicht unbedingt mit der Reihenfolge ihrer Definition identisch. Von daher wรผrde ich von der Verwendung einer per Regel gesetzten Eigenschaft in einem WITH eher abraten, auch wenn es (im Moment) zu funktionieren scheint.

Viele GrรผรŸe

Michael

0 Kudos

Type a product name