cancel
Showing results for 
Search instead for 
Did you mean: 

dump while assigning range tables to attribute of view

Former Member
0 Kudos

Hi Experts,

I am developing a webdynpro application and customized saving selection screen variants in DB.

I have a view to display list of variants available.

This is a table view to display list of variants and on selection and clicking ok, the view has to retrieve the select options stored in DB and fire an outbound plug back to selection screen by passing range tables.

Selection screen inbound plug will take these and set the select options accordingly.

In list of variants view, once user selects the variant, i have retrieved the range tables of select options but i am getting dump while assigning it to a field symbol.

what could be the problem


data: R_EBELN type range of EBELN.

*some code to retrieve R_ebeln range table data.

  field-symbols : <LF_EBELN> type ANY TABLE.

  assign WD_THIS->RT_EBELN->* to  <LF_EBELN>.
  <LF_EBELN> = R_EBELN.

WD_THIS->FIRE_OP_TO_SEL_SCREEN_PLG(
    RT_EBELN =    WD_THIS->RT_EBELN ).

here WD_THIS->RT_EBELN type ref to data.

I am getting short dump at * assign WD_THIS->RT_EBELN->* to <LF_EBELN>.*

I am getting sy-subrc = 4.

what could be the problem. Any help/clue is highly appreciated.

Thanks,

Ajay

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Waiting for expert's feedback on this observation.

Former Member
0 Kudos

HI,

Try to give as

field-symbols : <LF_EBELN> type TABLE.

Always check wether fieldsymbols is assigned or not to avoid dumps

if wd_this->rt_ebeln is assigned.
assign WD_THIS->RT_EBELN->* to  <LF_EBELN>.
endif.

Regards,

Lekha.

Former Member
0 Kudos

Hi Lekha,

Thanks for your inputs.

I tried it changing to TYPE TABLE already. Still the same.

I am still having the same problem as SY_SUBRC on assign is 4.

What could be the problem.

Regards,

Ajay

PS: we can not check if wd_this->rt_ebeln is assigned as wd_this->rt_ebeln is not a field symbol.

I got the syntax error while trying to do that.

Guess you intended to say If <LF_EBLEN> IS ASSIGNED.

Edited by: ajay matam on Sep 17, 2009 2:51 PM

Former Member
0 Kudos

Hi,

Have you checked the stanard compoent WDR_TEST_SELECT_OPTIONS method name -ONACTIONTC_PREDEF_RANGETAB

of MAIN_VIEW.

Hope you will get more clarifications from there.

Regards,

Lekha.

Former Member
0 Kudos

Hi Lekha,

Thanks. I checked it and my way of assignment is exactly same as that is mentioned in that example.

Only difference is that the object here i am assigning is the attribute of the view which is type ref data.

I checked it by changing the <fs> type ty_range

where ty_range type range of ebeln.

still the same problem. what could be the problem.

Thanks,

Ajay

Former Member
0 Kudos

Hi,

I changed the code as below.


types: TY_RANGE type range of EBELN.
field-symbols : <LF_EBELN> type any table.
data: R_EBELN type range of EBELN.
data: LO_EBELN type ref to DATA.

create data LO_EBELN type TY_RANGE.

assign LO_EBELN->* to  <LF_EBELN>.
*  assign WD_THIS->RT_EBELN->* to  <LF_EBELN>.
if <LF_EBELN> is assigned.
    <LF_EBELN> = R_EBELN.
endif.

And its working fine now.

But at this juncture i wanted to know why assign WD_THIS->RT_EBELN->* to <LF_EBELN> is not working ?

when attribute RT_EBELN is type ref to DATA.

Thanks for your help.

Regards,

Ajay