Seite 1 von 2

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 12.05.2014, 08:34
von Peter_Neumann
Liebe acronauten,

in einem Formular sollen verschiedene Fragen erscheinen. Je nachdem wie die einzelnen Fragen beantwortet werden, erscheinen weitere Fragen oder ein Hinweis/ eine Handlungsanweisung. Die Fragen habe ich als Dropdown-Listen eingebaut. Über eine if-Anweisung wir der jeweils zutreffende Fragenkatalog aufgebaut. Bei den ersten drei Fragen funktioniert das auch wie gewünscht. Nun habe ich noch eine vierte Frage (Dropdown-Liste eingebaut). Hier wird eine Fehlermeldung "Der eingegebene Wert für Dropdown-Liste ist ungültig" ausgegeben. Der Code in der if-Bedingung wird dann trotzdem korrekt ausgeführt. Bei den ersten Fragen hatte ich diese Situation auch kurzzeitg. Habe dann die Werte für die Elementwerte der Dropdow-Liste noch einmal gelöscht und neu festgelegt. Bei der letzten Frage hilft dies leider nicht. Wer kann mir helfen, und erklären, wie man den Fehler beseitigen kann?  

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 12.05.2014, 15:05
von nele_sonntag
Hallo Peter,

das Script ist im validate eher ungünstig angebracht. :) Denn dieses erwartet ein true, um "reibungslos" zu funktionieren.

Lege Deine Scripte ins Exit-event und dann sollte alles reibunsglos funktionieren.

LG Mandy

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 13.05.2014, 11:57
von Peter_Neumann
Hallo, Mandy,

vielen Dank für deinen Lösungsvorschlag. Ich habe bewusst das validate-event gewählt, da dies erneut ausgeführt wird, sobald sich ein Wert ändert. Dieses Verhalten benötige ich. da das Formular von verschiedenen Personen bearbeitet wird und deshalb ein speicherbares Formular wird. Aus diesem Grund muss ich sicherstellen, dass beim erneuten Öffnen das gleiche Teilergebnis in Bezug auf den sich ergebenden Fragenkatalog ergibt. Wenn eine Frage nicht noch einmal angefasst wird, wird das Exit-event nicht noch einmal ausgeführt.
Ich habe nicht verstanden, warum das Script im validate-event bei den ersten drei Fragen funktioniert, nur bei der letzten nicht. Vom Prinzip ist der Code ja gleich.

VG Peter    

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 13.05.2014, 13:26
von nele_sonntag
Hallo Peter,

trotzdem ist das validate so nicht korrekt benutzbar. :) Dafür müsstest Du Dein Skript umschreiben, bspw. eine Funktion, sodass diese true zurückgibt.

Was du bspw. tun kannst, ist, es in's Exit zu packen und im initialize (also nach dem Öffnen) explizit mit einer Scriptzeiel das exit-Event ausführen zu lassen.

Code: Alles auswählen

Seite1.execEvent("exit");
Warum das andere funktioniert kann ich jetzt nicht schauen, vlt. später nach der Arbeit.

LG Mandy

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 13.05.2014, 13:28
von nele_sonntag
IÜ startet Dein PDF mit einem PopUp bevor der User überhaupt etwas eingibt, siehe Schaubild der Prozessereignisse. :(

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 13.05.2014, 13:42
von nele_sonntag
Er mag Dein Scripting in 4 nicht. Nimmst Du

Code: Alles auswählen

if (this.rawValue == 0)
    {
    Hinweis.presence = "visible";
    Hinweis.rawValue = "Hinweistext 4.1 erscheint, es werden keine weiteren Fragen gestellt und dokumentiert";
    xfa.host.messageBox ("Frage 4 Ja-Zweig = 0 durchlaufen");
    }
if (this.rawValue == 1)
    {
    Hinweis.presence = "visible";
    Hinweis.rawValue = "Hinweistext 4.2 erscheint, es werden keine weiteren Frage gestellt und dokumentiert";
    DL_Frage4.presence = "visible";
    xfa.host.messageBox ("Frage 4 Nein-Zweig = 1 durchlaufen"); 
    }
dann funktioniert's.

Im Übrigen liefern eine Dropdown, wie man mit

Code: Alles auswählen

app.alert(this.rawValue);
app.alert(typeof(this.rawValue));
sieht, einen String. Korrekterweise solltest Du also auf "1" und "0" abfragen.

Nichtdesotrotz bekommst Du Deinen ersten Alert bevor der User etwas tut, entweder du fängst das per Script ab oder Du nimmst oben genannte Variante.

LG Mands

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 13.05.2014, 18:07
von Peter_Neumann
Hallo, Mandy,

vielen Dank für deine Unterstützung. Ich habe wieder etwas dazu gelernt. :) Deine Lösung mit dem exit-event hat mich überzeugt. Das Schaubild habe ich allerdings noch nicht verstanden. Wo sieht man da, dass bereits vor der ersten Benutzeraktivität ein Fenster aufgeht? Muss ich mir sicher noch einmal in Ruhe ansehen :shock: 

VG Peter

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 14.05.2014, 11:27
von nele_sonntag
Der Benutzer hat erst Zugriff auf die Felder nach dem docReady. Die einzelnen Erklärungen zu den Events kannst Du Dir in der Hilfe anschauen.

LG Mandy

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 15.05.2014, 06:33
von armine
Hallo Peter,

wie Mandy angeregt hat, steckt nun die Kontrolle in einer Funktion und die schaut in einer Tabelle nach dem Rechten. Bei einem "Ja" gibt es eine neue Frage (so lange es Fragen im hinterlegten Array gibt), sonst ist Schluss mit der Fragerei.
Weitere Aktionen bei einem "Nein" könntest du in einer weiteren Funktion (z.B. mittels switch/case) hinterlegen.

Dropdown-Lliste liefert ungültigen Wert im validate-event

Verfasst: 16.05.2014, 10:31
von Peter_Neumann
Hallo, Armine,
hallo, Mandy,
vielen Dank für eure professionelle Unterstützung und eure Mühe! Ihr habt mir hier einen Lösungsweg mit Beispiel aufgezeigt, der mir weiter hilft.

VG Peter