Seite 1 von 3

Einfache if-then-Abfrage

Verfasst: 24.05.2011, 14:34
von thebrave
Ich habe jetzt schon einige Versuche hinter mich gebracht eine einfache if-Abfrage mit LSD zu probieren. Leider bisher ohne Erfolg.
Wenn „errechneter Wert“ VG größer ist als „zweiter errechneter Wert“ G, dann  Ausgabetext „fiktiver Wert“, sonst Ausgabetext „tatsächlicher Wert“.
Gedacht habe ich mir einfach:
if (FeldVG > FeldG) then
   “fiktiver Wert“
else
   “tatsächlicher Wert“
endif
Aber das Feld bleibt leer. Laut Syntaxüberprüfung ist sogar die Zeile „else“ nicht korrekt. Wo liegt mein Denkfehler?

Schon mal Danke vorab
thebrave

Einfache if-then-Abfrage

Verfasst: 24.05.2011, 20:23
von Merklin
Hallo thebrave,

könnte es so gehen?

VG Merklin

Einfache if-then-Abfrage

Verfasst: 25.05.2011, 05:55
von thebrave
Bisher hatte ich mit deinem Vorschlag leider keinen Erfolg. Aber möglicherweise ist der nicht komplex genug. Ich hab mal mein Beispiel angehängt.

Wie man sieht werden die ersten beiden Werte eingegeben.

Die Dropdownliste hat dann die Aufgabe zwei weitere Felder auszufüllen. Einmal mit einem Text und der zweite Wert ist errechnet. Das dritte numerische ist für die if-then-Abfrage irrelevant. Die if-then-Abfrage soll nun folgendes ausgeben:


- Wenn der eingegebene Wert  im Numerischen Feld 2 größer ist als
- der errechnete Wert aus dem Numerischen Feld 4,
- soll er den Ausgabetext „fiktiver Wert“ in Textfeld 3 schreiben,
- ansonsten „tatsächlicher Wert“.


Ich hoffe das geht überhaupt, sonst hab ich die ganze Sache falsch aufgerollt…


Einfache if-then-Abfrage

Verfasst: 25.05.2011, 06:03
von nele_sonntag
Nun ja, das ist kein Hexenwerk :-) Ich schaue mal grad.

Einfache if-then-Abfrage

Verfasst: 25.05.2011, 06:09
von nele_sonntag

Code: Alles auswählen

if(NF_1.rawValue > NF_4.rawValue){
Textfeld_3.rawValue = "fiktiver Wert";
}else{
Textfeld_3.rawValue = "tatsächlicher Wert";
}
Jetzt nur noch Deine Namen anpassen und in das gewünschte Ereignis des gewünschten Feldes hinterlegen.

Hoffe, das hilf dir weiter?

LG Mandy

Einfache if-then-Abfrage

Verfasst: 25.05.2011, 06:35
von thebrave
Hm, möglicherweise ist es das. Aber wo genau muss das hinterlegt werden, damit das auch wirklich funktioniert? Bisher funktionieren die Ausgabetexte nur wenn ich keine Werte als Referenz nehme. Kannst du deine Lösung vielleicht mal in mein Beispiel einbauen? Das wär echt super :)

Einfache if-then-Abfrage

Verfasst: 25.05.2011, 06:48
von nele_sonntag
Bin grad auf Arbeit und hab nicht so viel Zeit :-( Muss ich schauen.

Einfache if-then-Abfrage

Verfasst: 25.05.2011, 06:51
von nele_sonntag
Warum nicht einfach in das EXIT von NF 2??

Code: Alles auswählen

if(this.rawValue > NumerischesFeld4.rawValue){

Textfeld3.rawValue = "fiktiver Wert";

}else{

Textfeld3.rawValue = "tatsächlicher Wert";

}

Einfache if-then-Abfrage

Verfasst: 25.05.2011, 06:56
von nele_sonntag
Ah, sehe gerade, dass Deine Berechnung (funktioniert die denn korrekt?) im Dropdown liegt (würde ich besser ins CHANGE-Event des DD legen und dann vielleicht das Vergleichsskript ins EXIT des DD..und den Wert des DD mit "xfa.event.newText" auslesen.

Denn er zeigt nur bei test1 etwas an und immer das gleiche??

Einfache if-then-Abfrage

Verfasst: 25.05.2011, 07:01
von nele_sonntag
Ja, so funktioniert's.