Search the FirstSpirit Knowledge Base
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
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
Moin,
um welche FirstSpirit Version handelt es sich?
Gruß
Stefan
Guten Morgen Stefan,
Es handelt sich um die Version 5.0.425.60000.
Gruss,
Michel
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
Hallo Stefan,
Mit Screen meine ich diesen Bildschirm (hier im Java Client):
Mit Absenden verstehe ich wenn ich den Button OK drücke:
Beim Web Client kann ich aber ohne Probleme das Script mit einem Klick auf Save starten:
Gruss,
Michel
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
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
Eine andere Möglichkeit wäre ein Dialog innerhalb eines Arbeitsablaufes. Wofür wird denn das "useLanuages='yes'" benötigt?
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
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