13. Juli 2010 16:23
Hallo zusammen,
ich bitte um dringende Hilfe für folgende Herausforderung:
Es soll ein String in Navision abgefragt werden. Dazu folgendes Beispiel:
Formel (Typ:Text) = "%1>%2"
Feld 1 (Record=Purchase Receipt Line (121), Feld: Expected Receipt Date, Typ:Datum)
Feld 2 (Record=Purchase Receipt Line (121), Feld: Posting Date, Typ:Datum)
Der String wird aus den oben genannten Felder zusammengebaut in:
Stringvariable "14.07.2010>12.07.2010"
Im Anschluss soll der Text auf TRUE oder FALSE geprüft werden. In diesem Falle soll TRUE rauskommen und eine Verarbeitung starten.
Das ist der Ansatz. Jetzt die Herausforderung: Die Felder können individuell aus 3 versch. Tabellen ausgewählt werden, müssen allerdings vom gleichen Datentyp sein. Der Datentyp ist i.d.R ein Decimal, Code oder Date. Über das Feld "Formel" kann eine beliebige Formel eingegeben werden wie z.B. "(%1>%2)AND(%1<>0D)".
Dann werden die %1 bis %X durch die Inhalte der ausgewählten Felder ersetzt.
Am Ende ensteht immer ein String der geprüft werden soll.
Leider bin ich nicht fündig geworden, wie das in Navision umgesetzt werden kann. Eine Art Parser wie in C# oder C++ konnte ich nicht finden und im Standard konnte ich leider auch nichts ableiten.
Mir fällt spontan nur eine eigen geschriebene Funktion ein, die alle Eventualitäten abfängt und daraus einen Ausdruck baut, der abgefragt werden kann oder ein Boolean zurück liefert.
Hat jemand eine Idee wie das umgesetzt werden kann, oder bereits einen String to Boolean Parser geschrieben?
Vielen Dank für Eure Hilfe!
Zuletzt geändert von Navision_Link am 14. Juli 2010 13:13, insgesamt 1-mal geändert.