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 mit 2 Eingangsparametern für C#-Newbies

.NET-Heater mit 2 Eingangsparametern für C#-Newbies 3 Jahre 9 Monate her #1214

  • Thomas
  • Thomass Avatar
  • Offline
  • New Member
  • Beiträge: 4
Hallo!

ich möchte einen .NET-Heater mit 2 Eingangsparametern füttern (ein dezimaler Verkaufspreis und eine ganzzahlige Warengruppennummer)

Ziel ist, bei einer Artikel-Liste, bestimmten Artikeln einen Minimal- und Maximalbestand zuzuweisen.

Beispiel: Allen Weißweinen (=Artikelgruppe "2000"), die preislich zwischen 9,50 und 15 EUR liegen, soll auf der WRITE-Seite ein minimaler Lagerbestand von 12 und ein maximaler Lagerbestand von 60 zugeordnet werden.
READ:                   WRITE:
ARTIKELNR               ARTIKELNR                 
ARTIKELGRUPPE           ARTIKELGRUPPE 
VERKAUFSPREIS           VERKAUFSPREIS
                        MINIMALBESTAND
                        MAXIMALBESTAND

Ich habe mir einen Code zusammengegoogelt, aber als C#-Newbie bekomme ich die IF-Bedingung nicht hin. Und zudem plagt mich das Gefühl, dass ich da eigentlich komplett falsch rangehe ;)

Der .NET-Heater soll natürlich nicht nur diese eine Bedingung abarbeiten, sondern ca. 30 Bedingungen (Champagner über 50 EUR etc etc)

Dankbar für Hilfe!

Grüße,
Thomas

string sNr = String.Empty;

public object DoWork()
{
	if (InValues.Length > 0)
	{
		object VK = InValues[0].GetValue();  // Verkaufspreis
		object AG = InValues[1].GetValue();   // Artikelgruppe
		


			if (VK > 9.5 && VK < 15 && AG =="2000")
                return "ahoi";
	}

	return sNr;
}
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: .NET-Heater mit 2 Eingangsparametern für C#-Newbies 3 Jahre 9 Monate her #1215

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Administrator
  • Beiträge: 1099
Hallo Herr Goldhahn,

dafür benötigen Sie kein Skript! Viel dynamischer und eleganter geht das über eine CVS Ersetzungsliste über den String Replace Heater.

Sie benötigen dazu eine separate CSV Textdatei mit folgendem Aufbau.

Artikelgruppe;PreisVon;PreisBis;MinLager;MaxLager

In diese CSV Datei tragen sie alle Ihre Ersetzungen ein.
Dann benötigen Sie 4 String Replace Heater um die einzelnen Werte zur Artikelgruppe aus der CSV Ersetzungsdatei auszulesen.
Ich habe Ihnen dazu ein kleines Beispiel erstellt, siehe Anlage csv_listenersetzung.zip

Im folgenden werden die im Beispiel vorhandenen Heater von oben nach unten erklärt.
  • Der erste String Replace Heater holt aus der CSV Ersetzungsdatei den PreisVon (=2. CSV Spalte) heraus und speichert diesen in einem Parameter $PMIN$ ab. Wird die Artikelgruppe nicht in der CSV Liste gefunden wird der aktuelle Datensatz dann noch über die IF-THEN-ELSE Bedingung und dem Filter Heater gefiltert.
  • Der zweite String Replace Heater holt aus der CSV Ersetzungsliste den PreisBis (=3. CSV Spalte) und speichert diesen im Parameter $PMAX$.
  • Der dritte und vierte String Replace Heater holen jeweils den Minimalen und Maximalen Lagerbestand aus der CSV Liste (= 4. bzw. 5. CSV Spalte). Die Werte werden jeweils direkt der den WRITE Feldern zugeordnet.
  • Der letzte Heater bildet die Bedingung. Hierzu wird ein weiterer IF-THEN-ELSE Heater verwendet, der als Eingangsparameter den Artikelpreis erhält. Für die Bedingung werden nun die zwei Parameter $PMIN$ und $PMAX$ verwendet. Hier wird geprüft ob der Preis zwischen PreisMin und PreisMax liegt, trifft die Bedingung nicht zu wird der Datensatz gefiltert.

Anhang csv_listenersetzung.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.

Aw: .NET-Heater mit 2 Eingangsparametern für C#-Newbies 3 Jahre 9 Monate her #1216

  • Thomas
  • Thomass Avatar
  • Offline
  • New Member
  • Beiträge: 4
Hallo Herr Stark,

fantastisch! :laugh:

Funktioniert perfekt.

Vielen Dank für die ausführliche Lösung!


Grüße,

Thomas
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Moderatoren: FlowHeater-Team
Ladezeit der Seite: 0.080 Sekunden