Seite 1 von 3

IF-Abfrage

Verfasst: 25.11.2018, 13:36
von Bob61
Ich habe Probleme mit der IF-Abfrage in Adobe und zwar mit den Anweisungen 1 und 2. In der Regel ist schon die Anweisung 2 falsch. In Excel und HTML dagegen funktioniert es.

Ich versuche für die u.a. Lehrprobe einen Script zu schreiben, der nach der gesetzten Unterschrift die festgelegten Felder
sperrt und gesperrt hält, wenn weiter andere Felder nach der Unterschrift bearbeitet werden. Ich bekomme es einfach nicht hin.
Hier brauche ich Eure Unterstützung

Bob 61

Re: IF-Abfrage

Verfasst: 26.11.2018, 11:18
von BAlheit
Was sind die Anweisungen 1 und 2?

Re: IF-Abfrage

Verfasst: 26.11.2018, 13:21
von Bob61
Für mein Problem sind mehrere IF-Abfragen erforderlich. In der Regel besteht die Syntax der IF-Abfrage aus if (Bedingung) Anweisung1; else Anweisung2.

if (v1 == "") { // ohne Eingaben
event.value = "" ;
this.getField("Anmerkung").value = ""
} else if (v1 <= 4.5 && v2 = 0) {
event.value = v1 ;
getField("Anmerkung").value = "nicht bestanden"

v2 = 0 weil hier eine Nachprüfung nicht erforderlich ist.
v1 steht für die Fachnote "LBN" und v2 für die Note der Nachprüfung "NNP"

Bei "event.valure = v1" zeigt Adobe schon Fehler an.

Ich bekomme es einfach nicht hin.

Bob61

Re: IF-Abfrage

Verfasst: 26.11.2018, 14:16
von BAlheit
Wo wird diese Berechnung ausgeführt? Welcher Fehler wird angezeigt?

Re: IF-Abfrage

Verfasst: 26.11.2018, 15:44
von Bob61
Für das o.a. Beispiel "Lehrproben" habe ich den Script nochmal neu geschrieben. Diesen wollte ich unter Validierung einfügen. Hier nochmal der gesamte Script. Entweder werden die die Anmerkungen (bestanden/ nicht bestanden) und die Note Nges nicht angezeigt, oder bricht bei "event.valure = lbn ab.


var lbn = this.getField("LBN").value, nnp = this.getField("NNP").value ;
this.getField("LBN").value = lbn ;
this.getField("NNP").value = nnp ;
if (lbn >= 4.5 && nnp >= 4.5) {
this.getField("Anmerkung").value = "" ;
}


if (lbn == "") { // ohne Eingaben
event.value = "" ;
this.getField("Anmerkung").value = ""
} else if (lbn >= 4.5 && nnp >= 4.5) { // beide vergeigt
event.value = lbn ;
this.getField("Anmerkung").value = "nicht bestanden"
this.getField("Nges").value = "LBN"
} else if (lbn <= 4.5 && nnp = 0) { // bestanden
event.value = lbn ;
this.getField("Anmerkung").value = "bestanden"
this.getField("Nges").value = "LBN"

} else if (lbn >= 4.5 && nnp <= 4,5) { // Nachprüfung bestanden
event.value = lbn ;
this.getField("Anmerkung").value = "bestanden"
this.getField("Nges").value = 4,499

}

Re: IF-Abfrage

Verfasst: 26.11.2018, 15:54
von BAlheit
Am besten die PDF-Datei mit dem Skript anhängen.

Re: IF-Abfrage

Verfasst: 26.11.2018, 22:19
von Bob61
Hallo,
wie bereits angesprochen bekomme ich den o.a. Script nicht in das angehangene PDF-Dokument eingefügt. Wenn ich dann versuche den angezeigten Fehler zu korrigieren, z.B. in der Zeile event.valure = lbn, dann wird das Einfügen fehlerfrei abgeschlossen, zeigt jedoch nicht die Note "Nges" und die Anmerkung an.


Gruß
Bob61

Re: IF-Abfrage

Verfasst: 27.11.2018, 10:48
von BAlheit
Wie und bei welchem Feld wird das Skript eingefügt?

Re: IF-Abfrage

Verfasst: 27.11.2018, 13:49
von Bob61
Hallo,
in Sachen JavaScript bin ich absoluter Anfänger und tue mich sehr schwer bei der Anwendung. Wenn der Script fehlerfrei funktioniert, hätte ich diesen im 1. Versuch in den Feldern "LBN", "NNP", "Nges" und "Anmerkung" unter Eigenschaften/ Validierung eingefügt. Da ich bisher bei Validierungen keine Probleme mit der Sperrung von Feldern durch die Unterschrift hatte.


Gruß
Bob61

Re: IF-Abfrage

Verfasst: 27.11.2018, 15:19
von BAlheit
Information für Anfänger:

Für Prüfung auf Gleichheit == verwenden, und nicht nur =.

Bei Dezimalzahlen ist der Punkt zu verwenden, und nicht das Komma.