[gelöst]Feldinhalt nach einem bestimmten Zeichen durchsuchen

7. März 2013 15:31

Hallo,

wir verwenden noch die native Datenbank. Ich möchte jetzt gerne ein Feld in einer Tabelle nach einem bestimmten Inhalt durchsuchen. Als Beispiel geht es darum, dass in einem Report ein bestimmtes Datumsformat angezeigt werden soll, wenn in einer bestimmten Tabelle "Abrechnungsperioden" in einem Feld ein "m" eingetragen ist.

Welche Funktion muss man da verwenden um den Feldinhalt zu durchsuchen?

Vielen Dank im Voraus!

Gruß

Re: Feldinhalt nach einem bestimmten Zeichen durchsuchen

7. März 2013 15:55

:greenarrow: STRPOS

Re: Feldinhalt nach einem bestimmten Zeichen durchsuchen

7. März 2013 15:58

Bitte etwas genauer. Möchtest du in eine Tabelle auf alle Datensätze filtern, die in einem Feldwert ein bestimmtes Zeichen oder eine Zeichenfolge enthalten? Dann wäre STRPOS wahrscheinlich das Richtige für dich.

Re: Feldinhalt nach einem bestimmten Zeichen durchsuchen

7. März 2013 16:14

Sorry, ich muss dazusagen, dass es sich bei dem Feld, das ich nach dem "m" durchsuchen möchte um ein Feld vom Typ "DateFormula" handelt. Wenn in diesem Feld "m" eingetragen ist, soll im Report "Verkaufsrechnung" ein bestimmter Text ausgegeben werden.

Re: Feldinhalt nach einem bestimmten Zeichen durchsuchen

7. März 2013 16:54

Das geht wohl nur zeilenweise: die DateFormula in einen String umwandeln und dann nachschauen, ob ein M drin vorkommt.

[gelöst]Re: Feldinhalt nach einem bestimmten Zeichen durchsu

7. März 2013 17:42

Alles klar...vielen Dank für die Tips. Ich probiere es mal aus.

Re: Feldinhalt nach einem bestimmten Zeichen durchsuchen

8. März 2013 07:46

Mit der Kombination aus FORMAT und STRPOS sollte es direkt funktionieren:
Code:
IF STRPOS(FORMAT(DeinDateFormulaFeld),'M') > 0 THEN BEGIN
  
[...]
END; 

Wichtig: STRPOS ist case-sensitiv! Da es in einer DateFormula nur Großbuchstaben gibt, würde eine Suche nach einem Kleinbuchstaben immer 0 ergeben.

Re: Feldinhalt nach einem bestimmten Zeichen durchsu

7. Mai 2013 09:27

Hallo,

vielen Dank nochmal...es funktioniert einwandfrei.