Lokaler Typ ENUM in DDIC nachstellen

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

Lokaler Typ ENUM in DDIC nachstellen

Beitrag von Romaniac (Specialist / 225 / 65 / 28 ) »
Hallo zusammen,

Ich rufe aus einem RFC-FB im BW4HANA einen Query auf, dazu gibt es einen Blog in der SAP Community
https://community.sap.com/t5/technology ... p/13570280

Die verwendete Methode definiert für eine Importstruktur ein Feld vom Typ ENUM. Jetzt möchte ich diese Methodenschnittstelle über den FB nach aussen anbieten, in einem RFC-Baustein kann man aber keine Referenzen auf Attribute einer Klasse eintragen ( TYPE CL_LBA_ABS_QUERY=>TN_T_COLUMNS_REQ ), also muss eine Stuktur im DDIC angelegt werden. Hier kann ich den Typ ENUM aber nicht nachbilden, Domänen mit Festwerten haben eine Fixe Länge, ENUM Komponenten sind per Default Numerisch (0 - n), aber die Länge der angelegten Struktur mit der Festwertdomäne ist <> der Länge in der lokal definierten Struktur, damit erzeugt <struc_local> = <struc_ddic> einen Fehler "Komponenten nicht konvertierbar".

Ich habe als Lösung das betroffene Feld aus der DDIC Struktur entfernt und mit corresponding dann übergeben, das geht, aber nur weil das ENUM Feld nicht versorgt werden muss in meinem Fall. Trotzdem kann das nicht die Lösung sein, wie kann man einen Wert in das Feld vom Typ ENUM setzen?

Ich habe die Strukturen in dem PDF zusammengefasst.
Struktur mit ENUM.pdf
Bin für jeden Tipp dankbar,

Gruß Wolfgang
Geht nicht gibts nicht

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


Re: Lokaler Typ ENUM in DDIC nachstellen

Beitrag von a-dead-trousers (Top Expert / 4463 / 227 / 1199 ) »
Ich glaube da wirst du nicht um eine Art von Mapping herumkommen.
Mein naiver Ansatz (da ich kein 7.51 zum Ausprobieren habe) wäre das ENUM als Struktur abzubilden wo alle Komponenten vom Typ ABAP_BOOL sind. In der Schnittstelle kannst du dann sowas in der Form machen:

Code: Alles auswählen.

* Import
case abap_true.
  when external-total-initial.
    internal-total = nc_s_total-initial.
  when external-total-on.
    internal-total = nc_s_total-on.
  ...
endcase.

* Export
case internal-total.
  when nc_s_total-initial.
    external-total-initial = abap_true.
  when nc_s_total-on.
    external-total-on = abap_true.
  ...
endcase.
lg ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Lokaler Typ ENUM in DDIC nachstellen

Beitrag von Romaniac (Specialist / 225 / 65 / 28 ) »
Hallo adt,

ich habe schon alle Datentypen ausprobiert, boolean, Char11(für den längsten Wert "conditional"), INT1-INT4, die Strukturlänge ist immer <> der lokal angelegten Struktur mit 140 Zeichen.

Wie geschrieben, ich muss die Werte zwar nicht verändern, aber ich muss für die Zuweisung eigene Strukturen anlegen und diese ENUM Felder jeweils auslassen.

Die Werte in einem ENUM sind Referenzen auf eine Klasse ohne einen Defaultwert, hab noch nicht verstanden was das dann für Werte sind
CASE <l_s_requested_column>-total.
WHEN nc_s_total-on.
l_r_visibility = cl_bics_visibility=>n_cr_visible.
WHEN nc_s_total-off.
l_r_visibility = cl_bics_visibility=>n_cr_hidden.
WHEN nc_s_total-conditional.
l_r_visibility = cl_bics_visibility=>n_cr_conditional.
WHEN OTHERS.
IF n_is_cds_based EQ abap_true.
l_r_visibility = cl_bics_visibility=>n_cr_hidden.
ELSE.
l_r_visibility = cl_bics_visibility=>n_cr_default.
ENDIF.
ENDCASE.

N_CR_HIDDEN Static Attribute Public Type Ref To CL_BICS_VISIBILITY
N_CR_VISIBLE_FORCE Static Attribute Public Type Ref To CL_BICS_VISIBILITY
N_CR_VISIBLE Static Attribute Public Type Ref To CL_BICS_VISIBILITY

Gruß Wolfgang
Geht nicht gibts nicht

Seite 1 von 1

Vergleichbare Themen

2
Antw.
3088
Views
ALV OO / Vorzeichen verschwindet bei lokaler Datei
von Kali » 18.09.2013 09:10 • Verfasst in ABAP Objects®
8
Antw.
7598
Views
Redefinition Methode in lokaler Klasse
von olli-x » 30.01.2007 14:11 • Verfasst in ABAP Objects®
5
Antw.
7576
Views
Komplette Klasse in Lokaler datei sichern
von SwordMaster » 11.04.2007 14:21 • Verfasst in ABAP Objects®
1
Antw.
639
Views
Datei-Browser bei lokaler Speicherung von Excel-Dateien
von cecslucas » 16.09.2019 18:39 • Verfasst in ABAP® für Anfänger
2
Antw.
2360
Views
Dynpro DDIC
von Icke0801 » 17.08.2018 17:12 • Verfasst in ABAP® Core

Über diesen Beitrag



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

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.