michel_magne
I'm new here

FirstSpirit Rules (mix of useLanguage=yes|no)

Jump to solution

Liebe Community,

Ich habe ein Problem mit der Feld-Validierung im Java Client.

Folgendes ist die Ausgangslage:

Ich habe ein Script mit einem Screen. Dieser Screen hat zwei Felder, das erste Feld ist sprachabhängig und das andere Feld nicht:

<CMS_MODULE>

  <CMS_INPUT_TEXT name="sc_process_label" hFill="yes" useLanguages="yes">

    <LANGINFOS>

      <LANGINFO lang="*" label="Process name" description="Enter the text for the process name"/>

      <LANGINFO lang="DE" label="Prozessname" description="Geben Sie den Text für den Prozessnamen ein"/>

    </LANGINFOS>

  </CMS_INPUT_TEXT>

  <CMS_INPUT_TEXT name="sc_phone_number" hFill="yes" useLanguages="no">

    <LANGINFOS>

      <LANGINFO lang="*" label="Phone number"/>

      <LANGINFO lang="*" label="Telefonnummer"/>

    </LANGINFOS>

  </CMS_INPUT_TEXT>

</CMS_MODULE>

Die einfach Regel um zu überprüfen ob jeweils etwas in dem Feld steht:

<RULES>

          <ON_SAVE>

                    <WITH>

                              <NOT>

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

                              </NOT>

                    </WITH>

                    <DO>

                              <VALIDATION>

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

                                        <MESSAGE lang="*" text="No content provided!"/>

                                        <MESSAGE lang="DE" text="Es wurde kein Inhalt erfasst!"/>

                              </VALIDATION>

                    </DO>

          </ON_SAVE>

 

          <ON_SAVE>

                    <WITH>

                              <NOT>

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

                              </NOT>

                    </WITH>

                    <DO>

                              <VALIDATION>

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

                                        <MESSAGE lang="*" text="No content provided!"/>

                                        <MESSAGE lang="DE" text="Es wurde kein Inhalt erfasst!"/>

                              </VALIDATION>

                    </DO>

          </ON_SAVE>

</RULES>

Die Validierung auf dem Screen funktioniert, versuche ich jedoch das Formular im Java Client abzusenden bekomme ich aber diese Fehlermeldung "Unable to save the form as it contains incorrect input. Please correct this error."

Im Web Client kann ich das Formular absenden und das Script dahinter wird ausgeführt.

Stelle ich das zweite Feld auch auf sprachabhängig um so funktioniert es auch im Java Client.

Habe ich irgendetwas grundlegendes vergessen?

Vielen Dank für Euren Input.

Gruss,

Michel Magne

0 Kudos
1 Solution

Accepted Solutions
hoebbel
Crownpeak employee

Hallo Michel, hallo Stefan,

Kommando zurück.

Wenn man die GUI mit Sprachreitern anzeigt [showForm(true) oder showGui(true)], kann man die Pflichtfeldverletzung in den Eingabekomponenten beheben und es kommt zu keinem Fehler.

Also in meinen Augen kein Bug, sondern eher ein Templatefehler, so dass ich das Helpdesk Ticket und den internen Fehlerreport wieder geschlossen habe.

Sorry,

Holger

View solution in original post

0 Kudos
14 Replies
StefanSchulz
I'm new here

Moin,

um welche FirstSpirit Version handelt es sich?

Gruß

Stefan

0 Kudos

Guten Morgen Stefan,

Es handelt sich um die Version 5.0.425.60000.

Gruss,

Michel

0 Kudos

Danke, damit kann ich schon mal einen bereits gefixten Bug ausschließen.

Kannst du ein wenig mehr Details angeben? Konkret: was meinst du mit "Screen" und wie sieht das "Absenden" des Formulars aus?

Grüße,

Stefan

0 Kudos

Hallo Stefan,

Mit Screen meine ich diesen Bildschirm (hier im Java Client):

Screen_JavaClient.PNG

Mit Absenden verstehe ich wenn ich den Button OK drücke:

Screen_JavaClient_Fehler.PNG

Beim Web Client kann ich aber ohne Probleme das Script mit einem Klick auf Save starten:

Screen_WebClient.PNG

Gruss,

Michel

0 Kudos

Ok, wenn ich das richtig verstehe, öffnest du aus einem Skript heraus via showGui oder showForm das Skript-Formular, ist das so richtig? Wenn ja, dann stelle eine entsprechende Fehlermeldung (inkl. Screenshots, FS-Version, evtl. auch Script-Ausschnitte, Bezug auf diesen Thread) bitte beim HelpDesk ein, denn das sieht für mich nach einem Bug in der Formular-Anzeige aus.

Dank und Gruß,

Stefan

michel_magne
I'm new here

Ja genau, ich öffne aus dem Skript heraus mit

FormData form = context.showForm();

auf.

Vielen Dank erstmals für Deine Hilfe.

Sobald ich mehr weiss, werde ich es hier erwähnen.

Gruss,

Michel

0 Kudos

Eine andere Möglichkeit wäre ein Dialog innerhalb eines Arbeitsablaufes. Wofür wird denn das "useLanuages='yes'" benötigt?

Peter
0 Kudos

Hallo Peter,

Der Benutzer soll die Daten erfassen welche für die neu zu erstellenden Seiten/Strukturen benötigt werden.

Dabei wird es Felder geben, welche sprachunabhängig sind (hier die Telefonnummer). Damit der Benutzer nicht in jeder Sprache dieses Feld auszufüllen hat, habe ich dort die useLanguage auf "no" gesetzt.

Es ist aber gewollt, dass andere Felder sprachabhängig sind.

Gruss,

Michel

0 Kudos

Werden die Daten denn zukünftig mehrsprachig im Formular abgefragt, oder jeweils nur für eine Sprache? Wenn letzteres (wie in den Screenshots zu sehen), würde ein sprachunabhängiges Formular zumindest zunächst mal genügen.

Gruß,

Stefan

0 Kudos