2010-01-22 19 views
5

Ich weiß! Die "richtige" Art, STXL.CLUSTD zu lesen, ist die SAP-ABAP-Funktion. Aber es tut mir leid, wir leiden sehr unter Leistungsproblemen. Wir haben uns bereits entschieden, direkt in die Datenbank (Oracle) zu gehen, und wir haben noch keinen Plan, unsere Entscheidung rückgängig zu machen, da alles bisher viel besser läuft.Wie dekodiert man SAP-Text aus STXL.CLUSTD?

Wir sind jedoch auf dieses Problem gestoßen. Der Text im Feld STXL.CLUSTD wurde in einem unverständlichen Format gespeichert. Wir können keine Informationen über sein Kodierungsformat über Google finden. Kann mir jemand sagen, wie man Text von STXL.CLUSTD dekodiert?

Danke

+0

Ich glaube nicht, dass Ihr Leistungsproblem vom Aufruf von 'READ_TEXT' herrührt. Das Funktionsmodul ist ziemlich schnell. Außerdem werden in einer Sitzung wiederholt gelesene Texte gepuffert. Haben Sie eine "SAT" oder "SE30" Spur erstellt und die Topliste analysiert? – rplantiko

Antwort

9

Kurze Version: Sie nicht. Verwenden Sie den Funktionsbaustein READ_TEXT.

Lange Version: Sie betrachten eine so genannte Cluster-Tabelle. Details finden Sie unter http://help.sap.com/saphelp_47x200/helpdata/en/fc/eb3bf8358411d1829f0000e829fbfe/frameset.htm. Die Daten, die Sie sehen, sind eine interne Darstellung des Textes, die irgendwie damit zusammenhängen, wie der ABAP-Kernel die Daten intern verarbeitet. Diese Daten sind ohne die Metadaten nicht sinnvoll. Wenn Sie die ursprüngliche Struktur inkompatibel ändern, können die Daten nicht mehr gelesen werden. Oh, und habe ich erwähnt, dass die Daten keinen Verweis auf die Metadaten enthalten? Wenn Sie den Inhalt dieser Tabellen auch in ABAP lesen, müssen Sie die ursprüngliche Quelldatenstruktur kennen, sonst sind Sie verloren. Ohne die Metadaten und das Wissen, wie der Kernel diese Datentypen zur Laufzeit handhabt, wird es Ihnen schwer fallen, den Inhalt zu entschlüsseln.

Persönliche Meinung: Direkter Zugriff auf die Datenbank unterhalb des SAP R/3-Systems ist eine schlechte Idee, da dies nicht nur alle Sicherheitsmaßnahmen umgeht, sondern Sie auch sehr anfällig für alle strukturellen Änderungen der Datenbank macht. Der einzige wirkliche Grund für den direkten Zugriff auf die Datenbank ist nicht Mangel an Leistung, sondern Mangel an (ABAP) Wissen, und das sollte heilbar sein:

+0

vereinbart. Sie * nicht * Zugriff auf Datenbanktabellen und * niemals * eine Clustertabelle. –

+1

Okay. Ich gab auf. Ich werde versuchen, meinen Chef davon zu überzeugen, mehr Ressourcen in Sachen ABAP zu investieren. Danke – Sake

+0

Wir haben einen ABAP-Weg, um Cluster-Daten zu extrahieren, aber wir wollen Echtzeit-Datenreplikation verwenden, und dafür wäre der Zugriff auf die Daten in den Cluster-Tabellen der Schlüssel. Kennt also zufällig jemand, wie man VARDATA-Felder dekomprimiert? Welche Komprimierung verwendet SAP? –

0

Sie können definitiv Cluster und Pools lesen, ohne irgendeinen ABAP Code auszuführen oder aufzurufen RFCs oder BAPIs usw. ist ein sehr guter Ansatz, hoch performant und einfach zu bedienen.

Ich mag nicht Leute ihre Produkte in StackOverflow Auspeitschen, aber die Informationen, die Sie verwenden müssen ABAP für den Zugriff auf SAP-Daten ist seit über 7 Jahren veraltet.

Danke,

Bill MacLean

  • Ich habe gerade bemerkt dieses Thema und ich arbeite für Simplement. Snow_FFFF ist korrekt (BTW, dieser Benutzer ist nicht ich und ASFAIK ist niemand in unserer Firma). Das Data Liberator-Produkt entkoppelt und entpoolt seit 2009 Tabellen (und viele andere Dinge) für unsere Kunden.
+0

Willkommen bei SO Bill. Sie müssen Ihre Antworten nicht unterschreiben. Wenn Sie ein wenig mehr Ansehen haben, können Sie den Antworten anderer Personen Kommentare hinzufügen. –

+0

@Bill, gibt es einen SQL-Code, den Sie mit uns teilen können, um diese Cluster für Textinformationen zu lesen – Eralper

Verwandte Themen