Ich habe eigentlich eine recht einfache Aufgabe, finde aber keine sinnvolle/ansprechende Lösung.
Fachlich:
Der Anwender gibt eine Sachkontonummer ein - z.B. 31470000
Hierzu soll die zugehörige Finanzposition an bestimmten Stellen immer gleich sein - also 61473333 (Stellen 2,3,4 gleich). Diese Stellen sollen customizibar sein, so dass vielleicht auch die Stellen 4 und 5 gleich sind usw. - Kundeneinstellung.
Es gibt bereits eine Customizingtabelle, in der der Kunde ein Sachkonto-Range (hier 30000000 - 39999999 ) pflegen kann und da via reg.Ausdruck geprüft wird, ob die FiPos einem bestimmten Muster entspricht. Im konkreten Beispiel könnte man das über den reg.Ausdruck lösen, wenn man die Range z.B. für 31470000 - 34179999 definiert und den Reg.Ausdruck mit ^6421[0-9]{4}. Für die Stellenprüfung 2-4 wären also 999 Customizingeinträge erforderlich, wenn man nur 3 Stellen prüft - das wird nix.
Meine Idee ein Customizingfeld, in der der Anwender per Nomenklatur einträgt, welche Stellen gleich sein soll:
30000000 - 39999999 -> .===*
(1. Zeichen beliebig; 2-4 gleich; der Rest beliebig)
Im Grund eine ähnlich Syntax wie beim reg.Ausdruck, nur dass ich hier die Gleicheitszeichen ergänze.
Richtig schön ist das allerdings nicht....
Jemand ein Idee wie man das in der Programmierung vielleicht besser löst?
z.B. ob es in ABAP was gibt, mit dem man nur bestimmte Stellen vergleichen kann?
in etwa if ????( String1, String, '.===*')
-> Dann könnte ich diese Nomenklatur customizbar machen....
Vorweg: Inzwischen habe ich eine andere Lösung. Die Prüfung auf die Gleichheit der Stellen, gab es bereits für eine andere Anwendung beim Kunden. Diese rufe ich einfach auf. Dort ist die Prüfung "hart" codiert.
--
Trotzdem: So etwas ähnliches wie in der Tabelle TKKAZ habe ich ja schon. Je nach bestimmten Schlüsselfelder, wird ein Maske gepflegt, die dann genau ein Feld prüft.
Ich wollte aber zwei Felder an bestimmen vergleichen. Was verglichen werden soll, sollte customizibar sein.