Skip to main content
Weil einfach - produktiver ist

Der Daten Spezialist

Konvertieren Sie die Daten mühelos zwischen verschiedenen Formaten ohne Programmierkenntnisse dank Visual Designer. Effizient und super einfach.
Flowheater Download

IF-Then-Else - Anfängerfrage - Berechnung wenn Wert < X

Mehr
3 Jahre 11 Monate her #3928 von Anton Schober
Hallo Herr Stark,

ich wende mich heute an Sie, da ich bei beigefügter Datei nicht weiterkomme. Wie muss ich denn verfahren, wenn bei den drei angegebenen Berechnungen noch ein Zusatz mit eingebracht werden soll?

Beispiel:
Wenn der EK kleiner als 5,00 EUR ist, soll zu Beginn der Berechnung noch ein Aufschlag von 3,00 EUR erfolgen.
Wenn der EK kleiner als 10,00 EUR aber größer als 5,00 EUR ist, soll zu Beginn der Berechnung noch ein Aufschlag von 2,00 EUR erfolgen.
Wenn der EK kleiner als 20,00 EUR aber größer als 10,00 EUR ist, soll zu Beginn der Berechnung noch ein Aufschlag von 1,00 EUR erfolgen.
Wenn der EK größer als 20,01 EUR ist, soll kein Aufschlag mehr erfolgen.

Welche Parameter muss ich dort noch zum If-Then-Else angeben??

Vielen Dank für Ihre Hilfe!
Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
3 Jahre 11 Monate her #3929 von FlowHeater-Team
Hallo Herr Schober,

Sie benötigen dazu verschachtelte IF-THEN-ELSE Bedingungen. Sie beginnen rechts mit dem kleinsten Wert den Sie abfragen möchten in Ihrem Fall <= 5. Wenn dies zutrifft, dann geben Sie den Wert + 3 zurück ansonsten den Wert der nächsten Bedingung. Hier prüfen Sie dann <= 10. Wenn das zutrifft geben Sie den Wert + 2 zurück ansonsten den Wert der nächsten Bedingung, usw. Mit der letzten Bedingung (>20) geben Sie im ELSE (SONST) Zweig den Wert ohne weitere Berechnung zurück. Vor dem Zuweisen in das CSV Ausgabefeld können natürlich mit dem Wert weitere Berechnungen durchgeführt werden.

Ich habe Ihr Beispiel mal dementsprechend angepasst, siehe Anlage.

Alternativ dazu würde es die Möglichkeit geben das Ganze mit nur einem .NET Script Heater und einem kleinen Skript zu erledigen. Wurde ebenfalls im Beispiel implementiert. Erfordert aber etwas Programmierkenntnisse, kann aber leicht an weitere Bedürfnisse angepasst werden.




Hier das C# Skript
Code:

Code:
public object DoWork() {  // Prüfen ob überhaupt ein Parameter übergeben wurde  if (InValues.Length != 1)  throw new Exception("1 Eingangsparameter erwartet!");  // Eingangswert holen  object o = InValues[0].GetDecimal();  // prüfen ob der Wert in eine Zahl umgewandelt werden konnte  if (o == null)  throw new Exception("Wert konnte nicht zu einer Zahl umgewandelt werden!");    decimal d = (decimal)o;  // Vergleiche durchführen und berechnete Werte zurückgeben  if (d < 5)  {  return d + 3;  }  else if (d < 10)  {  return d + 2;  }  else if (d < 20)  {  return d + 1;  }  else  {  return d;  } }

Dateianhang:

Dateiname: verschacht...gung.zip
Dateigröße:11 KB

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
3 Jahre 11 Monate her #3930 von Anton Schober
Hallo Herr Stark,

vielen Dank für Ihre prompte und unbürokratische Hilfe!! Das Script funktioniert einwandfrei und es lässt sich damit wunderbar weitere Berechnungen durchführen. Nochmals vielen Dank und bleiben Sie gesund... 

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
3 Jahre 1 Monat her - 3 Jahre 1 Monat her #4225 von Oliver Barz
Hallo Herr Stark,

ich würde mich hier gern einmal ranhängen, denn meine Aufgabe ist ähnlich.

wenn EK > 5 dann berechne EK*2.
wenn EK <=5 dann pauschal 35

Die erste If Else bekomme ich hin, aber bei der zweiten  Bedingung komme ich einfach nicht weiter.

VG Oliver Barz

Edit: Habe die, oder zumindest eine Lösung ausfindig machen können.
Ich habe für die zweite Bedingung den Round Heater genommen und auf 35 aufrunden lassen.

Danke.
Anhänge:
Letzte Änderung: 3 Jahre 1 Monat her von Oliver Barz.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
3 Jahre 1 Monat her #4226 von FlowHeater-Team
Hallo Herr Barz,

dafür wird keine verschachtelte WENN-DANN-SONST Bedingung benötigt, hierfür reicht eine Bedingung über einen IF-THEN-ELSE Heater .
Hier wird geprüft ob der EK größer „>“ 5 ist. Wenn JA (TRUE) wird das Ergebnis aus der Berechnung über den Multiplikation Heater zurückgegeben. Falls die Bedingung nicht zutrifft wird der statische Wert 35 über den X-Value Heater zurückgeliefert, siehe Screenshot.

Im Anhang finden Sie ein kleines Beispiel dazu.



Dateianhang:

Dateiname: wenn-dann-...gung.zip
Dateigröße:6 KB

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Ladezeit der Seite: 0.290 Sekunden
FlowHeater Logo

FlowHeater - Der Daten Spezialist

Effiziente Datenintegration und Transformation mit FlowHeater - Ihre Lösung für nahtlosen Datentransfer.

Rechtliches

Support & Kontakt

Kontaktinformation

Telefon:
0951 / 99339792

E-Mail:
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein.


Copyright © 2009-2024 by FlowHeater GmbH. Alle Rechte vorbehalten.