Questions & Answers

SOLVED
aVogt
Returning Creator

Regel: Abfrage einer Toogle-Eingabekomponente

Jump to solution

Hallo,

ich mรถchte folgende Regel erstellen:

Im einem DOM-Feld muss etwas eingegeben werden, wenn bei einer Toogle-Eingabekomponente Ja (True) ausgewรคhlt wird.

Ich habe folgendes probiert, aber ohne Erfolg:

<ON_SAVE>

<WITH>

  <AND>        

   <NOT><PROPERTY source='cs_aenderung' name='EMPTY'/></NOT>

   <EQUAL>

    <PROPERTY source='cs_mail' name="VALUE" />

    <TRUE/>

   </EQUAL>

  </AND>

</WITH>

<DO>

  <VALIDATION>

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

   <MESSAGE lang="*" text="The text must not be empty!"/>

       </VALIDATION>

</DO>

</ON_SAVE>

Es scheint an der รœberprรผfung der Toogle zu liegen.

Kann mir jemand helfen?

GrรผรŸe

Andreas

0 Kudos
1 Solution

Accepted Solutions

Es bedarf keiner zweiten Regel. Wichtig ist, dass sich das IF auf die Regelausfรผhrung bezieht und nicht auf den resultierenden Wert.

In der originalen Regel ist das AND nicht zielfรผhrend. Folgende Wertermittlung sollte funktionieren:

<OR>

  <NOT><PROPERTY source='cs_aenderung' name='EMPTY'/></NOT>

  <EQUAL>

    <PROPERTY source='cs_mail' name="VALUE" />

    <FALSE/>

  </EQUAL>

</OR>

Prosaaussage: Das Zielfeld ist valide, wenn (cs_aenderung nicht leer) oder (cs_mail nicht aktiv) ist.

GruรŸ

Stefan

View solution in original post

0 Kudos
4 Replies
thmarx
I'm new here

Hallo Andreas,

ich glaube, so in etwa sollte es funktionieren:

          <ON_SAVE>

        <IF>

                              <EQUAL>

                                  <PROPERTY source='test5' name="VALUE" />

                                  <TRUE/>

                                 </EQUAL>               

        </IF>

        <WITH>

                              <NOT><PROPERTY source="test4" name="EMPTY"/></NOT>

        </WITH>

        <DO>

            <VALIDATION>

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

                <MESSAGE lang="*" text="The editor must not be empty!"/>

            </VALIDATION>

        </DO>

    </ON_SAVE>

test5 = Toggle-Komponente

test4 = Dom-Komponente

Viele GrรผรŸe

Thorsten

aVogt
Returning Creator

Hallo Torsten,

vilen Dank, funktioniert wie gewรผnscht.

Damit bei der Toogle-Auswahl "nein", das DOM-Feld nicht angegeben werden muss, benรถtige ich eine zweite Regel, oder? Zumindest bleibt bei "nein" das DOM-Feld noch Pflichtangabe.

<ON_SAVE>

    <IF>

        <EQUAL>

            <PROPERTY source='cs_mail' name="VALUE" />

            <FALSE/>

        </EQUAL>

    </IF>

    <WITH>

        <OR>

            <NOT><PROPERTY source='cs_aenderung' name='EMPTY'/></NOT>

            <PROPERTY source='cs_aenderung' name='EMPTY'/>

        </OR>

    </WITH>

    <DO>

        <VALIDATION>

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

            <MESSAGE lang="*" text="The text must not be empty!"/>

        </VALIDATION>

    </DO>

</ON_SAVE>

Gibt es eine einfachere Mรถglichkeit (ggf. ohne zweite Regel)?

GrรผรŸe

Andreas

0 Kudos

Ich glaube, der Status sollte automatisch. Also bei nein, sollte das DOM-Feld als nicht Pflichtfeld angesehen werden.

Ich bin mir auch nicht sicher, ob hier eine zweite Regel hilft, da du keine Mรถglichkeit hast, anzugeben, das ein Feld valide ist. Das sollte eigentlich immer valide sein, wenn keine Regel etwas anderes behauptet.

0 Kudos

Es bedarf keiner zweiten Regel. Wichtig ist, dass sich das IF auf die Regelausfรผhrung bezieht und nicht auf den resultierenden Wert.

In der originalen Regel ist das AND nicht zielfรผhrend. Folgende Wertermittlung sollte funktionieren:

<OR>

  <NOT><PROPERTY source='cs_aenderung' name='EMPTY'/></NOT>

  <EQUAL>

    <PROPERTY source='cs_mail' name="VALUE" />

    <FALSE/>

  </EQUAL>

</OR>

Prosaaussage: Das Zielfeld ist valide, wenn (cs_aenderung nicht leer) oder (cs_mail nicht aktiv) ist.

GruรŸ

Stefan

0 Kudos

Type a product name