Prüfen von Pflichtfeldern

Grundsätzliche Themen zur Bedienung, Erstellung von Formularen, Datenbankanbindung und Beispiele ...
Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Prüfen von Pflichtfeldern

Beitrag von nele_sonntag » 23.08.2010, 14:58

Der Dank gebührt Walde, der das online unter Muster eingestellt hat. Von selbst wäre ich da nicht drauf gekommen. Glücklicherweise habe ich noch rudimentäre Programmierkenntnisse und kann es verstehen, halbwegs erklären und mir meistens anpassen :-))

Aber danke, nehme das Kompliment trotzdem gern an :-)))

LG Mandy

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Prüfen von Pflichtfeldern

Beitrag von nele_sonntag » 23.08.2010, 15:02

Ich würde unter OBJEKT - WERT Benutzereingabe wieder auf optional zurückstellen.

Benutzeravatar
zora_red
Beiträge: 73
Registriert: 17.08.2010, 08:27

Prüfen von Pflichtfeldern

Beitrag von zora_red » 23.08.2010, 15:10

ja das mach ich so, damit ich die prüfung beim öffnen des formulars und nach verlassen des feldes los bin!

hiermit auch noch herzlichen dank an walde! also ist auch er LCD-Meister :dude:

programmieren geht zwar (php, java), aber von javascript hab ich bislang null ahnung! so sachen wie if und else versteh ich zwar, aber wenns dann ins detail geht bin ich blank..... wird schon noch besser werden, wenn ich mich öfter damit beschäftige!

Benutzeravatar
zora_red
Beiträge: 73
Registriert: 17.08.2010, 08:27

Prüfen von Pflichtfeldern

Beitrag von zora_red » 24.08.2010, 13:10

Fürs Drucken heißt der Code

Code: Alles auswählen

xfa.host.print(1, "0", (xfa.host.numPages -1).toString(), 0, 1, 0, 0,  0);
und fürs Speichern wie?

Benutzeravatar
zora_red
Beiträge: 73
Registriert: 17.08.2010, 08:27

Prüfen von Pflichtfeldern

Beitrag von zora_red » 24.08.2010, 13:12

ah funktioniert mit dem gleichen code...

Benutzeravatar
zora_red
Beiträge: 73
Registriert: 17.08.2010, 08:27

Prüfen von Pflichtfeldern

Beitrag von zora_red » 24.08.2010, 13:21

Ok, danke Mandy! Das funktioniert soweit. Die Fehlermeldung wird für die richtigen Felder an der richtigen Stelle erzeugt.

Eins noch:
Wenn ich die Fehlermeldung mit Ok bestätige, wird die Datei trotzdem gespeichert bzw. man kann danach weiter auf Drucken gehen. Muss ich da noch was ändern?

Code: Alles auswählen

Formular1::preSave - (JavaScript, client)

 var Valid = true;
 var Sammelmeldung = "";
 
 if(xfa.resolveNode("Formular1.#pageSet[0].Seite1.Teilformular1.TF_re1").rawValue == "Organisatorische Einheit")
 {
  Valid = false;
  Sammelmeldung = Sammelmeldung + "- Organisatorische Einheit" + "\n";
 } 

 if(xfa.resolveNode("Formular1.#pageSet[0].Seite1.Teilformular1.TF_re2").rawValue == "Vorname Name")
 {
  Valid = false;
  Sammelmeldung = Sammelmeldung + "- Vorname Name" + "\n";
 } 
 
 if(xfa.resolveNode("Formular1.#pageSet[0].Seite1.Teilformular1.TF_re3").rawValue == "vorname.nachname@hswt.de")
 {
  Valid = false;
  Sammelmeldung = Sammelmeldung + "- vorname.nachname@hswt.de" + "\n";
 } 

 if(Valid){
  xfa.host.print(1, "0", (xfa.host.numPages -1).toString(), 0, 1, 0, 0, 0);
 }
 else{
    app.alert("Folgende Felder wurden nicht ausgefüllt.\n\n" + Sammelmeldung + "\nBitte füllen Sie diese Felder vor Versand der E-Mail vollständig aus.",1);
 }
 

Code: Alles auswählen

Formular1::prePrint - (JavaScript, client)

  var Valid = true;
 var Sammelmeldung = "";
 
 if(xfa.resolveNode("Formular1.#pageSet[0].Seite1.Teilformular1.TF_re1").rawValue == "Organisatorische Einheit")
 {
  Valid = false;
  Sammelmeldung = Sammelmeldung + "- Organisatorische Einheit" + "\n";
 } 

 if(xfa.resolveNode("Formular1.#pageSet[0].Seite1.Teilformular1.TF_re2").rawValue == "Vorname Name")
 {
  Valid = false;
  Sammelmeldung = Sammelmeldung + "- Vorname Name" + "\n";
 } 
 
 if(xfa.resolveNode("Formular1.#pageSet[0].Seite1.Teilformular1.TF_re3").rawValue == "vorname.nachname@hswt.de")
 {
  Valid = false;
  Sammelmeldung = Sammelmeldung + "- vorname.nachname@hswt.de" + "\n";
 } 

 if(Valid){
  xfa.host.print(1, "0", (xfa.host.numPages -1).toString(), 0, 1, 0, 0, 0);
 }
 else{
    app.alert("Folgende Felder wurden nicht ausgefüllt.\n\n" + Sammelmeldung + "\nBitte füllen Sie diese Felder vor Versand der E-Mail vollständig aus.",1);
 }

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Prüfen von Pflichtfeldern

Beitrag von nele_sonntag » 25.08.2010, 10:12

Nun ja, Du müsstest das ganze in eine IF-Abfrage setzen. Wenn die Sachen nicht ausgefüllt sind, drucke (speicher) nicht, ansonsten darfst Du drucken.

Benutzeravatar
zora_red
Beiträge: 73
Registriert: 17.08.2010, 08:27

Prüfen von Pflichtfeldern

Beitrag von zora_red » 25.08.2010, 11:46

reicht es nicht, diesen Befehl in den else-Zweig ganz am Ende zu setzen? müsste nur wissen wie die befehle heißen, daran scheiterts eher *schäm*

Code: Alles auswählen

xfa.host.donotprint
xfa.host.donotsave

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Prüfen von Pflichtfeldern

Beitrag von nele_sonntag » 25.08.2010, 11:59

Musst Dich nicht schämen.
Ich kenne bspw. diese zwei Befehle nicht :-)

Ich würde es so machen. Nach Deinen Felderabfragen.

Code: Alles auswählen

//wenn der Wert der Variablen Valid wahr ist (das ist er nur, wenn alle  von Dir aufgeführten Felder ausgefüllt sind, dann
if(Valid){

    //DRUCKE
   xfa.host.print(1, "0", (xfa.host.numPages -1).toString(), 0, 0, 0, 0, 0);
   //UND BEI DEM SPEICHER-BUTTON den SPEICHERBEFEHL

//oder
else{

    //gebe diese Meldung aus
    app.alert("Folgende Felder wurden nicht ausgefüllt.nn" +   Sammelmeldung + "nBitte füllen Sie diese Felder vor Versand der E-Mail   vollständig aus.",1);
}
 
Oh Shit,
hab wieder nicht richtig gelesen. Bei Print haste es ja so gemacht. Und das geht nicht?? Beim speichern haste auch den Printbefehl drinstehen. Das müsstest Du ändern.

LG Mandy


Benutzeravatar
zora_red
Beiträge: 73
Registriert: 17.08.2010, 08:27

Prüfen von Pflichtfeldern

Beitrag von zora_red » 25.08.2010, 12:02

ok :d

so wie du vorschlägst hab ichs schon. dann kommt aber nach der fehlermeldung dennoch die möglichkeit zu speichern oder drucken. das will ich vermeiden und muss also doch weiter nach diesen befehlen recherchieren...

wo hast du den druckbefehl gefunden?

Antworten