Dynamischer Daten Import / Export

datenbank

weil Einfach - produktiver ist
Mit der Freeware Version können bis zu 10.000 Datensätze verarbeitet werden!
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
Willkommen im FlowHeater Support Forum!

Hier werden Fragen zum Umgang mit dem FlowHeater beantwortet.

THEMA: NET Heater - Problem mit dem Code

NET Heater - Problem mit dem Code 5 Jahre 6 Monate her #399

  • BUG!
  • BUG!s Avatar
  • Offline
  • New Member
  • Beiträge: 8
Hallo zusammen,

Ich habe ein Problem mit dem .NET Heater.

Ich benutze den .NET Heater um Berechnungen durchzuführen. Mein Code lautet wie folgt.
Public Function DoWork() As Object

  Dim b as Double
  b = InValues(0).GetDouble()
 
Select b

Case 0.01 TO 1.99
	DoWork = (b * 1.36) * 5.50
	Exit Select

Case 2.00 TO 2.99
     DoWork = (b * 1.36) * 5.40
	Exit Select

Case 3.00 TO 3.99
      DoWork = (b * 1.36) * 4.75
	Exit Select

Case 4.00 TO 4.99
      DoWork = (b * 1.36) * 4.75
	Exit Select

Case 5.00 TO 5.99
      DoWork = (b * 1.36) * 4.00
	Exit Select

Case 6.00 TO 6.99
      DoWork = (b * 1.36) * 3.75
	Exit Select

Case 7.00 TO 7.99
      DoWork = (b * 1.36) * 3.50
	Exit Select

Case 8.00 TO 8.99
      DoWork = (b * 1.36) * 3.20
	Exit Select

Case 9.00 TO 9.99
      DoWork = (b * 1.36) * 3.00
	Exit Select

Case 10.00 TO 19.99
      DoWork = (b * 1.36) * 2.80
	Exit Select

Case 20.00 TO 29.99
      DoWork = (b * 1.36) * 1.75
	Exit Select

Case 30.00 TO 39.99
      DoWork = (b * 1.36) * 1.75
	Exit Select

Case 40.00 TO 49.99
      DoWork = (b * 1.36) * 1.50
	Exit Select

Case 50.00 TO 69.99
      DoWork = (b * 1.36) * 1.50
	Exit Select

Case 70.00 TO 79.99
      DoWork = (b * 1.36) * 1.50
	Exit Select

Case 80.00 TO 89.99
      DoWork = (b * 1.36) * 1.48
	Exit Select

Case 90.00 TO 99.99
      DoWork = (b * 1.36) * 1.47
	Exit Select

Case 100.00 TO 149.99
      DoWork = (b * 1.36) * 1.46
	Exit Select

Case 150.00 TO 199.99
      DoWork = (b * 1.36) * 1.35
	Exit Select

Case 200.00 TO 249.99
	DoWork = (b * 1.36) * 1.44
	Exit Select

Case 250.00 TO 300.00
	DoWork = (b * 1.36) * 1.25
	Exit Select

Case Else
	b = 100000
	DoWork = b
	Exit Select

End Select
End Function

Problem:
Werte ab Hundert, Beipiel: 145 werden bei folgender CASE Abfrage verarbeitet:
Case 10.00 TO 19.99
      DoWork = (b * 1.36) * 2.80
	Exit Select

Werte bis hundert werden einwandfrei bearbeitet.

Der Eingangswert wird als Double (Dezimal) geliefert.

Irgendeine Idee woran das liegen könnte?

Readseite: MS SQL
Writeseite: TEXT
Flowheaterversion: 2.x

Vielen Dank

Gruß
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: NET Heater - Problem mit dem Code 5 Jahre 6 Monate her #402

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Administrator
  • Beiträge: 1099
Ich kann keinen Fehler an Ihrem Skript feststellen. Schauen Sie sich mal das angepasste Beispiel im Anhang an. Hier habe ich lediglich den Return Wert ersetzt so dass besser ersichtlich ist welcher CASE Zweig eigentlich gezogen wird.

Das gleiche Skript habe ich auch gegen einen SQL Server auf der READ Seite mit dem SQL Datentyp DECIMAL (18,2) getestet. Funktioniert!

Welchen Datentyp verwenden Sie für das Feld auf der READ Seite? Evtl. ist das Feld bei Ihnen als Text (char/varchar) definiert und beim umwandeln geht was verloren? Dann stimmen Ihre Formateinstellungen auf der READ Seite nicht mit dem übergebenen Wert(en) überein.

Für eine weitere Analyse posten Sie bitte mal Ihre Definition sowie Beispieldaten für das Feld als CSV Datei. Hinweis: Die Daten Bitte als ZIP Archiv anfügen.

Anhang VB_DOT_NET_SELECT_CASE.zip nicht gefunden

Anhang:
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.
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Moderatoren: FlowHeater-Team
Ladezeit der Seite: 0.081 Sekunden