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

Leerzeichenentferner mit .NET ohne Abbruch

Mehr
9 Jahre 10 Monate her #1655 von Rabe
Hallo,

ich verwende den .NET Doppelte-Leerzeichen-Entferner aus diesem Thema

https://flowheater.de/forum/allgemein/286-vielfache-leerzeichen-aus-string-entfernen

Alles funktioniert soweit einwandfrei. Falls jedoch kein Eingangswert anliegt, bricht das Script mit der Fehlermeldung ab und Flowheater arbeitet nicht weiter.

Da ich nicht mit .NET Programmierung keine Erfahrung habe und nach vielen eigenen Versuchen nicht weiter komme...

Wie muss die Formulierung lauten damit das Script nur bei <> leer anspricht und ansonsten die Bearbeitung ohne Fehler beendet und dann FlowHeater weiter arbeitet.

Danke.

public object DoWork()
{
if (InValues.Length != 1)
throw new Exception("ein Eingangsparameter erwartet!");
string value = (string)InValues[0].GetString();
while (value.IndexOf(" ") >= 0)
{
// solange 2 Leerzeichen ersetzen bis keine 2 aufeinanderfolgende mehr gefunden werden!
value = value.Replace(" ", " ");
}
return value;
}

Bitte Anmelden um der Konversation beizutreten.

Mehr
9 Jahre 10 Monate her - 9 Jahre 10 Monate her #1656 von FlowHeater-Team
FlowHeater-Team antwortete auf Leerzeichenentferner mit .NET ohne Abbruch
Hallo Herr Rabe,

ein Abbruch konnte in dem Skript eingentlich nur vorkommen wenn der Eingangswert den Wert DBNULL. Hier das Skript, das auch mit solchen Werten zurechtkommt.

Code:
public object DoWork() { if (InValues.Length != 1) throw new Exception("ein Eingangsparameter erwartet!"); object o = InValues[0].GetString(); if (o == null) return ""; string value = o.ToString(); while (value.IndexOf(" ") >= 0) { // solange 2 Leerzeichen ersetzen bis keine 2 aufeinanderfolgende mehr gefunden werden! value = value.Replace(" ", " "); } return value; }

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.
Letzte Änderung: 9 Jahre 10 Monate her von FlowHeater-Team.

Bitte Anmelden um der Konversation beizutreten.

Mehr
9 Jahre 10 Monate her #1659 von Rabe
Hallo Herr Stark,

danke für die Antwort. Mit dem "neuen" Script arbeitet Flowheater nun alle Datensäte ab welche keinen Eingangswert haben, läuft aber bei Sätzen mit Werten ins Nirwana und lässt sich nur über den Taskmanager stoppen.

Was ich noch vergessen hatte zu erwähnen... Das erste Script bricht mit der Meldung "object reference not set to an instance of an object" ab.

Noch Ideen?

Danke & Grüße.
Lutz Rabe

Bitte Anmelden um der Konversation beizutreten.

Mehr
9 Jahre 10 Monate her #1660 von FlowHeater-Team
FlowHeater-Team antwortete auf Leerzeichenentferner mit .NET ohne Abbruch
Hallo Herr Rabe,

das Skript läuft bei mir ohne Problem. Im Anhang finden Sie ein kleines Beispiel dazu.

Evtl. liegt es bei Ihnen an einer weiteren Verarbeitung?

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 um der Konversation beizutreten.

Mehr
9 Jahre 10 Monate her #1663 von Rabe
Mit der Kopie aus Ihrem Beispiel funktioniert es jetzt. Danke.

Bitte Anmelden um der Konversation beizutreten.

Ladezeit der Seite: 0.284 Sekunden

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.