Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Runtime Error: GETWA_NOT_ASSIGNED

walkerist79
Participant
0 Likes
1,286

I was trying to select from table SCARR, SPFLI using specific parameters. When something is selected, it should be transferred from internal table to ALV.

Here's my code:

REPORT ABC MESSAGE-ID MSG_TEST.
*TABLES
TABLES: SPFLI,
SCARR.
*PARAMETER DECLARATION
SELECTION-SCREEN BEGIN OF BLOCK b1.
PARAMETERS: p_carrid TYPE scarr-carrid DEFAULT 'AA',
p_connid TYPE spfli-connid DEFAULT '0017'.
SELECTION-SCREEN END OF BLOCK b1.
START-OF-SELECTION.
TYPES: BEGIN OF i_tab,
carrid TYPE spfli-carrid,
connid TYPE spfli-connid,
countryfr TYPE spfli-countryfr,
countryto TYPE spfli-countryto,
END OF i_tab.
DATA: lv_carrid TYPE scarr-carrid,
lv_connid TYPE spfli-connid,
i_spfli TYPE STANDARD TABLE OF i_tab,
i_fieldcat TYPE slis_t_fieldcat_alv.
START-OF-SELECTION.
SELECT SINGLE CARRID
FROM SCARR
INTO @lv_carrid
WHERE carrid = @p_carrid.
IF sy-subrc <> 0.
MESSAGE E001.
STOP.
ENDIF.
END-OF-SELECTION.
START-OF-SELECTION.
SELECT CARRID,
CONNID,
COUNTRYFR,
COUNTRYTO
FROM SPFLI
INTO TABLE @i_spfli
WHERE carrid = @p_carrid
AND connid = @p_connid.
IF sy-subrc <> 0.
MESSAGE I001.
STOP.
ENDIF.
*PASSING OF SELECTED VALUES INTO ALV
i_fieldcat = VALUE #( ( fieldname = 'p_carrid' seltext_l = 'Airline Code')
( fieldname = 'p_connid' seltext_l = 'Flight Connection')
( fieldname = 'spfli_countryfr' seltext_l = 'Country From' )
( fieldname = 'spfli_countryto' seltext_l = 'Country To')
).
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
it_fieldcat = i_fieldcat
TABLES
t_outtab = i_spfli
EXCEPTIONS
program_error = 1
others = 2.
IF sy-subrc <> 0.
MESSAGE |An Error Occured!| TYPE 'E'.
ENDIF.
END-OF-SELECTION.
1 ACCEPTED SOLUTION
Read only

anujawani242683
Active Participant
1,208

Hi Wane,

Please try below code. It's working. I changed field names in fieldcatelog. You need to pass same field name which you have used in structure.

TABLES: SPFLI,
SCARR.
*PARAMETER DECLARATION
SELECTION-SCREEN BEGIN OF BLOCK b1.
PARAMETERS: p_carrid TYPE scarr-carrid DEFAULT 'AA',
p_connid TYPE spfli-connid DEFAULT '0017'.
SELECTION-SCREEN END OF BLOCK b1.
START-OF-SELECTION.
TYPES: BEGIN OF i_tab,
carrid TYPE spfli-carrid,
connid TYPE spfli-connid,
countryfr TYPE spfli-countryfr,
countryto TYPE spfli-countryto,
END OF i_tab.
DATA: lv_carrid TYPE scarr-carrid,
lv_connid TYPE spfli-connid,
i_spfli TYPE STANDARD TABLE OF i_tab,
i_fieldcat TYPE slis_t_fieldcat_alv.
START-OF-SELECTION.
SELECT SINGLE CARRID
FROM SCARR
INTO @lv_carrid
WHERE carrid = @p_carrid.
IF sy-subrc <> 0.
* MESSAGE E001.
STOP.
ENDIF.
END-OF-SELECTION.
START-OF-SELECTION.
SELECT CARRID,
CONNID,
COUNTRYFR,
COUNTRYTO
FROM SPFLI
INTO TABLE @i_spfli
WHERE carrid = @p_carrid
AND connid = @p_connid.
IF sy-subrc <> 0.
* MESSAGE I001.
STOP.
ENDIF.
*PASSING OF SELECTED VALUES INTO ALV
i_fieldcat = VALUE #( ( fieldname = 'CARRID' seltext_l = 'Airline Code')
( fieldname = 'CONNID' seltext_l = 'Flight Connection')
( fieldname = 'COUNTRYFR' seltext_l = 'Country From' )
( fieldname = 'COUNTRYTO' seltext_l = 'Country To')
).
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = 'X'
it_fieldcat = i_fieldcat
TABLES
t_outtab = i_spfli
EXCEPTIONS
program_error = 1
others = 2.
IF sy-subrc <> 0.
MESSAGE |An Error Occured!| TYPE 'E'.
ENDIF.
END-OF-SELECTION.

Regards,

Anuja Kawadiwale

3 REPLIES 3
Read only

anujawani242683
Active Participant
1,209

Hi Wane,

Please try below code. It's working. I changed field names in fieldcatelog. You need to pass same field name which you have used in structure.

TABLES: SPFLI,
SCARR.
*PARAMETER DECLARATION
SELECTION-SCREEN BEGIN OF BLOCK b1.
PARAMETERS: p_carrid TYPE scarr-carrid DEFAULT 'AA',
p_connid TYPE spfli-connid DEFAULT '0017'.
SELECTION-SCREEN END OF BLOCK b1.
START-OF-SELECTION.
TYPES: BEGIN OF i_tab,
carrid TYPE spfli-carrid,
connid TYPE spfli-connid,
countryfr TYPE spfli-countryfr,
countryto TYPE spfli-countryto,
END OF i_tab.
DATA: lv_carrid TYPE scarr-carrid,
lv_connid TYPE spfli-connid,
i_spfli TYPE STANDARD TABLE OF i_tab,
i_fieldcat TYPE slis_t_fieldcat_alv.
START-OF-SELECTION.
SELECT SINGLE CARRID
FROM SCARR
INTO @lv_carrid
WHERE carrid = @p_carrid.
IF sy-subrc <> 0.
* MESSAGE E001.
STOP.
ENDIF.
END-OF-SELECTION.
START-OF-SELECTION.
SELECT CARRID,
CONNID,
COUNTRYFR,
COUNTRYTO
FROM SPFLI
INTO TABLE @i_spfli
WHERE carrid = @p_carrid
AND connid = @p_connid.
IF sy-subrc <> 0.
* MESSAGE I001.
STOP.
ENDIF.
*PASSING OF SELECTED VALUES INTO ALV
i_fieldcat = VALUE #( ( fieldname = 'CARRID' seltext_l = 'Airline Code')
( fieldname = 'CONNID' seltext_l = 'Flight Connection')
( fieldname = 'COUNTRYFR' seltext_l = 'Country From' )
( fieldname = 'COUNTRYTO' seltext_l = 'Country To')
).
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = 'X'
it_fieldcat = i_fieldcat
TABLES
t_outtab = i_spfli
EXCEPTIONS
program_error = 1
others = 2.
IF sy-subrc <> 0.
MESSAGE |An Error Occured!| TYPE 'E'.
ENDIF.
END-OF-SELECTION.

Regards,

Anuja Kawadiwale

Read only

0 Likes
1,208

Hi Wane,

In above code I have added I_INTERFACE_CHECK = 'X' in REUSE_AV_GRID_DISPLAY FM to check the error you can comment it once code is working. Also I comment message also in my code you can uncomment it.

Read only

Sandra_Rossi
Active Contributor
0 Likes
1,208

Don't use REUSE_ALV_GRID_DISPLAY. It's error prone and is deprecated.

Instead, use CL_SALV_TABLE.