Lange Texte und transparente Tabellen

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

Lange Texte und transparente Tabellen

Beitrag von Sersch (ForumUser / 4 / 2 / 0 ) »
Gruß Gott,

ich beschäftige mich momentan mit einer Datenübernahme aus MySQL nach SAP,
leider finde ich keine Lösung für die Speicherung der Textfelder die teilweise bis zu 10.000 Zeichen lang werden können, in der SAP DDIC.

MYSQL
[FELD1] blob oder longtext

DDIC
[FELD1] keine Ahnung

Bin dankbar für jeden Tipp und jede Idee.
VG
Sersch

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Lange Texte und transparente Tabellen

Beitrag von casman (Specialist / 420 / 1 / 63 ) »
Hi Sersch,

da gibt es sicher mehrere Möglichkeiten. Siehe ABAP-Hilfe:
LCHR
Beliebig lange Zeichenfolgen mit mindestens 256 Zeichen. Felder dieses Typs müssen bei transparenten Tabellen am Ende stehen und ein voranstehendes Längenfeld vom Typ INT2 besitzen. Beim INSERT oder UPDATE in ABAP-Programmen muß dieses Längenfeld mit der tatsächlich gewünschten Länge gefüllt werden. Felder dieses Typs können nicht in der WHERE-Bedingung eines SELECT-Statements verwendet werden.

LRAW
Beliebig lange uninterpretierte Byte-Folge mit Mindestlänge 256. Felder dieses Typs müssen bei transparenten Tabellen am Ende stehen und ein voranstehendes Längenfeld vom Typ INT2 besitzen. Beim INSERT oder UPDATE in ABAP-Programmen muß dieses Längenfeld mit der tatsächlich gewünschten Länge gefüllt werden. Felder dieses Typs können nicht in der WHERE-Bedingung eines SELECT-Statements verwendet werden.

RAWSTRING
Uninterpretierte Byte-Folge variabler Länge. Im Dictionary kann zu diesem Typ eine Länge (mindestens 256 Zeichen) angegeben werden. Dieser Datentyp kann in Typen (Datenelementen, Strukturen, Tabellentypen) und Domänen verwendet werden. Binärdaten vom Typ RAWSTRING können auf der Datenbank abgelegt werden. Hier gibt es allerdings Einschränkungen, die in den Ausführungen zum ABAP-Schlüsselwort 'STRING' beschrieben sind. String-Felder können nicht im Schlüssel von Tabellen, nicht in Indizes und nicht in der WHERE-Bedingung eines SELECT-Statements benutzt werden. Im ABAP wird der Dictionary-Typ RAWSTRING auf den ABAP-Typ XSTRING abgebildet, der als Referenz auf einen Speicherbereich variabler Größe realisiert ist.

STRING
Zeichenfolge mit variabler Länge. Im Dictionary kann zu diesem Typ eine Länge (mindestens 256 Zeichen) angegeben werden. Eine Verwendung in Datenbanktabellen ist möglich. Einschränkungen sind in den Ausführungen zum ABAP-Schlüsselwort 'STRING' beschrieben. String-Felder können nicht im Schlüssel von Tabellen, nicht in Indizes und nicht in der WHERE-Bedingung eines SELECT-Statements benutzt werden. Im ABAP wird der Dictionary-Typ STRING auf den ABAP-Typ STRING abgebildet, der als Referenz auf einen Speicherbereich variabler Größe realisiert ist.
Es kommt also erstmal drauf an, ob du den Text plain sehen willst oder ob du auch Binärdaten speichern darfst/kannst. Ich persönlich tendiere meist zu RAWSTRING. STRING in RAWSTRING und anders herum kannst du mit Hilfe von CL_ABAP_CONV_IN_CE und CL_ABAP_CONV_OUT_CE.

Folgende Benutzer bedankten sich beim Autor casman für den Beitrag:
Sersch


Re: Lange Texte und transparente Tabellen

Beitrag von Sersch (ForumUser / 4 / 2 / 0 ) »
casman,

vielen Dannk für eine schnelle und kompetente Hilfe :up: :up: :up:

VG
Sersch

Re: Lange Texte und transparente Tabellen

Beitrag von casman (Specialist / 420 / 1 / 63 ) »
Hi Sersch,

gerne...

Achte aber drauf, dass oben die Datentypen bezeichnet sind. Du musst halt jetzt im DDIC schauen, welche Datenelement diese Datentypen beinhalten oder dir eigene Datenelemente anlegen.

Bsp: Datentyp RAWSTRING -> unter anderem genutzt im Datenelement XSTRINGVAL

Grüße
CASMAN

Re: Lange Texte und transparente Tabellen

Beitrag von Sersch (ForumUser / 4 / 2 / 0 ) »
Hi casman,

Aktivierungsprotokoll:

TABL ZPRODUKTDATEN wurde nicht aktiviert
Tabelle enthält mehr als 3 lange Stringfelder

(brauche 8 Felder)

soll ich mit mehreren Tabellen arbeiten oder hier gibt's auch eine Lösung?

Danke
VG
Sersch

Re: Lange Texte und transparente Tabellen

Beitrag von casman (Specialist / 420 / 1 / 63 ) »
Servus,

daran kannst du leider nichts ändern -> OSS Note 1354957:
Symptom

Die Aktivierung einer Tabelle mit mehr als drei LOB-Spalten scheitert.
Eine LOB-Spalte hat den Dictionary-Datentyp STRING oder RAWSTRING.

Ursache und Voraussetzungen

Für die von SAP unterstützten Datenbankplattformen wird eine gemeinsame Obergrenze der Anzahl an LOB-Spalten in einer Tabelle eingehalten. Diese Obergrenze war ursprünglich bis zu 3 LOB-Spalten je Tabelle.
In neueren Releases wurde die Grenze auf 16 LOB-Spalten je Tabelle erhöht. Diese Erhöhung wurde dann auch für neuere Support Packages der Releases SAP_BASIS 7.0 und SAP_BASIS 7.0 EHP1 möglich.
Beachten Sie, daß eine Tabelle mit mehr als 3 LOB-Spalten nur in SAP-Systeme transportiert werden kann, die ebenfalls zumindest die in diesem Hinweis genannten Support Packages oder eines der Nachfolgereleases nutzen.
Du brauchst also dann wohl 3 Tabellen, die du miteinander verknüpfst. Alternativ könnte es vielleicht Sinn machen (je nach erwarteter Datenmenge), die Tabelle quasi zu transponieren, also sowas:
MANDT KEY FELDNAME FELDWERT

Folgende Benutzer bedankten sich beim Autor casman für den Beitrag:
Sersch


Re: Lange Texte und transparente Tabellen

Beitrag von Sersch (ForumUser / 4 / 2 / 0 ) »
Alles klar, VIELEN DANK!

VG
Sersch

Seite 1 von 1

Vergleichbare Themen

15
Antw.
8044
Views
Lange Texte im Tabellenpflegegenerator
von DeathAndPain » 10.01.2019 14:35 • Verfasst in ABAP® für Anfänger
1
Antw.
1839
Views
Transparente Tabelle in andere Transparente Kopieren
von shayanoronaldo » 04.05.2023 15:37 • Verfasst in ABAP® für Anfänger
1
Antw.
1981
Views
Texte mit Platzhaltern mit internen Tabellen ersetzen
von Foppa » 12.08.2009 18:14 • Verfasst in ABAP® Core
17
Antw.
14754
Views
SAPMV45A USEREXIT Itab Pos.Texte / Head Texte
von Luigi91 » 31.01.2014 09:31 • Verfasst in ABAP® für Anfänger
1
Antw.
3390
Views
Konvertierug vom datentyp char der länge 4 in char der länge
von ratoshuan » 28.06.2006 11:33 • Verfasst in ABAP® Core

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

RFC vs. ODATA
vor 9 Stunden von DeathAndPain 8 / 818
FUBA 'HR_INFOTYPES_OPERATION'
vor 10 Stunden von DeathAndPain 2 / 201
Frage zur redefinierten Methode
vor 2 Tagen von ralf.wenzel 12 / 1200

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.