Code: Alles auswählen.
UNASSIGN <f>.
*Feld sollte wie Wert von w_icon heissen z.B. C1
ASSIGN (w_icon) TO <f>.
CALL FUNCTION 'ICON_CREATE'
EXPORTING
name = 'ICON_LOCATION'
text = ' '
info = w_info
add_stdinf = 'X'
IMPORTING
result = w_icon
EXCEPTIONS
icon_not_found = 1
outputfield_too_short = 2
OTHERS = 3.
MOVE w_icon TO <f>.
ein ASSIGN kann einen Zeiger nur auf eine existente Variable setzen.Google hat geschrieben:Hallo Zusammen
Ich habe folgendes Problem.
Ich möchte, dass das Feld so heisst, wie der Inhalt der Variable w_icon. Allerdings bekomme ich dann immer einen Kurzdump, weil er es nicht assignen konnte. Was mach ich falsch??Code: Alles auswählen.
UNASSIGN <f>. *Feld sollte wie Wert von w_icon heissen z.B. C1 ASSIGN (w_icon) TO <f>. CALL FUNCTION 'ICON_CREATE' EXPORTING name = 'ICON_LOCATION' text = ' ' info = w_info add_stdinf = 'X' IMPORTING result = w_icon EXCEPTIONS icon_not_found = 1 outputfield_too_short = 2 OTHERS = 3. MOVE w_icon TO <f>.
Code: Alles auswählen.
DATA:
ld_var TYPE REF TO DATA.
FIELD-SYMBOLS:
<l_var> TYPE ANY.
CREATE DATA ld_var TYPE string.
ASSIGN ld_var->* TO <l_var>.
...
Code: Alles auswählen.
data w_icon TYPE icons-text.
*Field-Symbols
FIELD-SYMBOLS: <f> TYPE icons-text
.
Code: Alles auswählen.
LOOP AT i_white_ingame.
CASE screen-name.
WHEN i_white_ingame-pos.
MOVE i_white_ingame-pos TO w_icon.
MOVE i_white_ingame-stein TO w_info.
UNASSIGN <f>.
*Feld sollte wie Wert von w_icon heissen z.B. C1
ASSIGN (w_icon) TO <f>.
IF <f> IS ASSIGNED.
CALL FUNCTION 'ICON_CREATE'
EXPORTING
name = 'ICON_LOCATION'
text = ' '
info = w_info
add_stdinf = 'X'
IMPORTING
result = w_icon
EXCEPTIONS
icon_not_found = 1
outputfield_too_short = 2
OTHERS = 3.
MOVE w_icon TO <f>.
ENDIF.
ENDCASE.
ENDLOOP.