Problem bei ASSIGN COMPONENT mit dynamischer Typisierung

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

Problem bei ASSIGN COMPONENT mit dynamischer Typisierung

Beitrag von Luca2501 (ForumUser / 1 / 1 / 0 ) »
Hallo,
Ich habe das Problem, dass ich bei einem ASSIGN COMPONENT ... CASTING am Ende eine Typisierung und Angabe der Dezimalstellen mitgeben muss, da der Report sonst die Typisierung falsch erkennt. Mein Problem ist nun, dass wenn ich den Typen bei CASTING dynamisch mitgeben will (also laut F1 Hilfe in Klammern), ich anschließend kein DECIMALS Zusatz anhängen kann... kann mir da jemand helfen, wie ich beide Zusätze (dynamisch) angeben kann?

Beispiel, wie es am Ende aussehen soll:
ASSIGN COMPONENT <ls_field_info>-fieldname OF STRUCTURE <ls_struct> TO <lf_comp> CASTING TYPE (<ls_field_info>-type) DECIMALS (<ls_field_info>-decimals).

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


Re: Problem bei ASSIGN COMPONENT mit dynamischer Typisierung

Beitrag von black_adept (Top Expert / 3943 / 105 / 886 ) »
Moin Luca,
das was du willst geht mit dem normalen ASSIGN nicht.
ASSIGN...CASTING sollte man nur im äußersten Notfall machen wenn es anders halt nicht anders geht ( z.b. Von Integer auf RAW (Hex) ) und wenn man genau weiß was man tut. Wenn du jetzt nicht tausende Kombinationen von Typ Decimals hast sondern nur eine begrenzte Auswahl ( 10-20 ) lege dir für jede Möglichkeit ein passend typisierters Feldsymbol an und mach dann das ASSIGN ... CASTING in das passende Feldsymbol.
Ansonsten sollte doch die Quellstruktur immer passend typisiert sein, so dass du mit einem normalen ASSIGN INTO <fs> in ein untypisiertes Feldsymbol doch dafür sorgen können, dass das <fs> nach dem ASSIGN völlig korrekt typisiert ist. Du sagst ja dass das bei dir nicht passt - arbeitest du evtl. mit Währungsfeldern?
Schreib doch mal etwas zum Umfeld wo du das genau brauchst, so dass wir dir besser helfen können.
Ansonsten nur der folgende Weg: Erstelle dir eine passende Datenreferenz - entweder mit CREATE DATA ... TYPE oder mit den RTTI-Klassen und dereferenziere das dann in ein Feldsymbol in welches du dann das ASSIGN CASTING machen kannst.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

19
Antw.
6486
Views
Dynamisch - ASSIGN COMPONENT
von 1337 » 26.11.2013 09:33 • Verfasst in ABAP® für Anfänger
10
Antw.
4003
Views
Fehler bei Dynamische Assign Component
von Anita57 » 19.08.2013 11:54 • Verfasst in ABAP® für Anfänger
1
Antw.
1179
Views
Fehler bei Dynamische Assign Component
von Anita57 » 19.08.2013 11:54 • Verfasst in ABAP® für Anfänger
1
Antw.
2335
Views
Field-symbols Assign-Component
von vincent_36 » 01.12.2005 18:28 • Verfasst in ABAP® Core
10
Antw.
4585
Views
Problem: Unterprogramm und Parameter(typisierung)
von MacLeod » 25.01.2012 16:31 • Verfasst in ABAP® Core

Aktuelle Forenbeiträge

PDF-Anzeige unter EDGE
vor 4 Tagen von jocoder 2 / 68
Etikettendruck mit SmartForms
vor einer Woche von a-dead-trousers 2 / 68

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.

Aktuelle Forenbeiträge

PDF-Anzeige unter EDGE
vor 4 Tagen von jocoder 2 / 68
Etikettendruck mit SmartForms
vor einer Woche von a-dead-trousers 2 / 68

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Wochen von Lucyalison 1 / 129
Group Items auf einer Filterbar
vor 4 Wochen von Bright4.5 1 / 164