Ich kenne mich in ABAP zu noch wenig aus, vorallem mit String Parsing...
Hat jemand eine Idee wie man elegant den folgenden String Parsen kann damit man als Resultat folgendes bekommt:
-->SELECT * FROM ADR2 WHERE CLIENT = 800 AND ADDRNUMBER = 0000006662 AND PERSNUMBER =
Das Log File sieht wie folgt aus. (beiliegend ist ein txt file mit dem Beispiel.
---------------- Ausschnitt aus einem Log File---------------------
&R/3 &RC&ADR2
&82&120&SAPLSZA0 /0000
181871/3/ADR2 /1635778560/200
10123142656&89&SELECT * FROM "ADR2" WHERE "CLIENT" = :A0 AND "
ADDRNUMBER" = :A1 AND "PERSNUMBER" = :A2
&3&CH&3&800&CH&10&000000
6662&CH&10& &
&R/3 &EX&0&+0&
(hier fängt ein neuer satzt an)
&R/3 &RC&ADR3
&84&120&SAPLSZA0 /0000
182051/3/ADR3 /1635778560/200
10123142656&89&SELECT * FROM "ADR3" WHERE "CLIENT" = :A0 AND "
ADDRNUMBER" = :A1 AND "PERSNUMBER" = :A2&3&CH&3&800&CH&10&000000
6662&CH&10& &
&R/3 &EX&0&+0&
(hier fängt ein neuer satzt an)
&R/3 &RC&ADRC
&79&120&SAPLSZA0 /0000
180934/3/ADRC /1627389952/200
10123142656&66&SELECT * FROM "ADRC" WHERE "CLIENT" = :A0 AND "
ADDRNUMBER" = :A1&2&CH&3&800&CH&10&0000006662&
&R/3 &EX&0&+0&
(hier fängt ein neuer satzt an)
-------------------------------------------------------------------
Das Muster ist so:
Ab &SELECT... -> ist das Statement
Zwischen "..." sind die Felder
Ab &3 -> hiesst es kommen 3 Werte
&CH&3&800 Character 3 stellig, wert 800
&CH&10&0000006662 Character 10 stellig, wert 0000006662
&CH&10& \ character 10 stellig ohne wert
&EX&0&+0& -> bedeutet Ende.
Vielen dank für jeden Hinweis
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.