05-02-2006 10:21 AM
REPORT ZZZZZZZ .
DATA : abaplist LIKE TABLE OF abaplist.
DATA : BEGIN OF itab OCCURS 0,
f(100) TYPE c,
END OF itab.
RANGES: r_datum FOR vepvg-ledat.
RANGES: r_vestl FOR vepvg-vstel.
RANGES: r_matnr FOR vbap-matnr.
r_datum-sign = 'I'.
r_datum-option = 'EQ'.
r_datum-low = '20060101'.
r_datum-high = '20060505'.
append r_datum.
*r_vestl-sign = 'I'.
*r_vestl-option = 'EQ'.
*r_vestl-low = .
**r_lgort-high = w_la_lgort.
*append r_lgort.
*r_matnr-sign = 'I'.
*r_matnr-option = 'EQ'.
*r_matnr-low = 'XXXXXX'.
*APPEND r_matnr.
SUBMIT RVV50R10C
WITH st_ledat IN r_datum
WITH st_vstel IN r_vestl
WITH st_matnr IN r_matnr
EXPORTING LIST TO MEMORY AND RETURN.
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = abaplist
EXCEPTIONS
OTHERS = 1.
CALL FUNCTION 'LIST_TO_ASCI'
TABLES
listasci = itab
listobject = abaplist
EXCEPTIONS
empty_list = 1
list_index_invalid = 2
OTHERS = 3.
<b>
why i dont get the values in itab, i get it in the screen but not in the itab</b>
05-02-2006 10:41 AM
hi rani
i didnn't get any thing abt ur doubt....
so why dont you try by using submit via seletion screen command ... where u can get submit values on selection screen
05-02-2006 10:44 AM
Are you sure if that report works if the same values are passed individually? May be there are no output for those values.
regards,
Ravi
05-02-2006 10:50 AM
yes it is sapstandard and i see the value taht i get in ALV but i want them in ITAB
05-02-2006 10:54 AM
Rani,
That is the error. The ALV output is never exported to memory, so your EXPORT LIST to MEMORY has not happened. Had it been classical report using WRITE statements, this would have worked.
Regards,
Ravi
Note : Please mark the helpful answers
05-02-2006 11:06 AM
05-02-2006 11:11 AM
Rani,
I am not sure if we can do that as its a ALV report.
Regards,
Ravi
05-02-2006 11:20 AM
I dont think this is possible Rani,
I guess you will have to change the second program to a classic report.
Regards,
Susmitha
05-02-2006 10:49 AM
Hay Rani
Itab not getting any values
itab-f = 'Hello world'.
append itab.
CALL FUNCTION 'LIST_TO_ASCI'
TABLES
listasci = itab
listobject = abaplist
EXCEPTIONS
empty_list = 1
list_index_invalid = 2
OTHERS = 3.
break-point 'UserName'.
loop at itab.
write : itab-f.
endloop.
Thanks & regards
Sreenivasulu P.
05-02-2006 10:56 AM
Hi Rani,
I have done a similar program and I am getting the output correctly.
Could you compare the two programs?
-
<b>* First report</b>
REPORT zimp2.
DATA : list LIKE TABLE OF abaplist WITH HEADER LINE.
DATA : BEGIN OF list_asc OCCURS 0,
msg(300) TYPE c,
END OF list_asc.
DATA : wa_c_filename(30) TYPE c.
RANGES: r_bukrs FOR vbkpf-bukrs.
RANGES: r_gjahr FOR vbkpf-gjahr.
RANGES: r_belnr FOR vbkpf-belnr.
r_bukrs-sign = 'I'.
r_bukrs-option = 'EQ'.
r_bukrs-low = '1000'.
APPEND r_bukrs.
r_gjahr-sign = 'I'.
r_gjahr-option = 'EQ'.
r_gjahr-low = '2006'.
APPEND r_gjahr.
r_belnr-sign = 'I'.
r_belnr-option = 'EQ'.
r_belnr-low = '1000000001'.
r_belnr-high ='1000000010'.
APPEND r_belnr.
SUBMIT zimp1 EXPORTING LIST TO MEMORY
WITH p_bukrs IN r_bukrs
WITH p_gjahr IN r_gjahr
WITH p_belnr IN r_belnr
AND RETURN.
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = list
EXCEPTIONS
not_found = 1.
CALL FUNCTION 'LIST_TO_ASCI'
EXPORTING
LIST_INDEX = -1 "LIST_INDEX SY-LSIND.
TABLES
listasci = list_asc
listobject = list.
LOOP AT list_asc.
WRITE : / list_asc.
ENDLOOP.
-
<b>* Second report<b></b></b>
REPORT ZIMP1 .
tables vbkpf.
data gt_vbkpf1 TYPE STANDARD TABLE OF vbkpf WITH HEADER LINE.
SELECT-OPTIONS:
p_bukrs FOR vbkpf-bukrs,
p_belnr FOR vbkpf-belnr,
p_gjahr FOR vbkpf-gjahr.
SELECT * FROM vbkpf INTO TABLE gt_vbkpf1
WHERE bukrs IN p_bukrs
AND ausbk IN p_bukrs
AND belnr IN p_belnr.
loop at gt_vbkpf1.
write : / gt_vbkpf1.
endloop.
*----
If the values you give in the selection screen for the second program works, the same values when passed to the second program via the first program should also give the same output.
Hope this helps.
Regards,
Susmitha
05-02-2006 10:56 AM
Hey Rani,
You can use <b>select-optios</b> instaed of using the ranges . Then it might run.
Regards,
Kunal
05-02-2006 10:57 AM
Hi,
can u increase the length of field in itab.
DATA : BEGIN OF itab OCCURS 0,
f(100) TYPE c,
END OF itab.
to
DATA : BEGIN OF itab OCCURS 0,
f(256) TYPE c,
END OF itab.
05-02-2006 10:59 AM
Rani,
This would not work if the second program was an ALV program.
Regards,
Susmitha.
05-02-2006 11:01 AM
HI
GOOD
CALL FUNCTION 'LIST_TO_ASCI'
TABLES
listasci = itab
listobject = abaplist
EXCEPTIONS
empty_list = 1
list_index_invalid = 2
OTHERS = 3.
AS PER YOUR QUERY HERE YOUR VALUE OF ITAB IS NULL BUT YOU R GETING THE VALUE.
HERE THE ITAB VALUE IS F WHOSE LENGTH IS 100 AND THIS HELP CONTAIN ALL THE VALUE THAT COMING IN THE OUTPUT SCREEN,SO INSTEAD OF SHOWING THE VALUES IT IS SHOWING F IN THE DEBUGGING MODE.
THANKS
MRUTYUN
05-02-2006 12:27 PM
Hey Rani,
you should use : <b>VIA SELECTION-SCREEN option of the SUBMIT statement</b>.
So you can try out this code . Just run this code :
Calling Program Report1
REPORT ZKUN_IMP1 .
DATA : list LIKE TABLE OF abaplist WITH HEADER LINE.
DATA : BEGIN OF list_asc OCCURS 0,
msg(300) TYPE c,
END OF list_asc.
DATA : wa_c_filename(30) TYPE c.
RANGES: r_bukrs FOR vbkpf-bukrs.
RANGES: r_gjahr FOR vbkpf-gjahr.
RANGES: r_belnr FOR vbkpf-belnr.
r_bukrs-sign = 'I'.
r_bukrs-option = 'EQ'.
r_bukrs-low = '1000'.
APPEND r_bukrs.
r_gjahr-sign = 'I'.
r_gjahr-option = 'EQ'.
r_gjahr-low = '2006'.
APPEND r_gjahr.
r_belnr-sign = 'I'.
r_belnr-option = 'EQ'.
r_belnr-low = '0002000001'.
r_belnr-high ='1000000010'.
APPEND r_belnr.
<b>
SUBMIT zkun_imp2 via selection-screen
WITH p_bukrs IN r_bukrs
WITH p_gjahr IN r_gjahr
WITH p_belnr IN r_belnr
EXPORTING LIST TO MEMORY
AND RETURN.</b>
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = list
EXCEPTIONS
not_found = 1.
CALL FUNCTION 'LIST_TO_ASCI'
EXPORTING
LIST_INDEX = -1 "LIST_INDEX SY-LSIND.
TABLES
listasci = list_asc
listobject = list.
LOOP AT list_asc.
WRITE : / list_asc.
ENDLOOP.
Called Program Report2
REPORT zkun_imp2 .
TABLES vbkpf.
DATA gt_vbkpf1 TYPE STANDARD TABLE OF vbkpf WITH HEADER LINE.
SELECT-OPTIONS:
p_bukrs FOR vbkpf-bukrs,
p_belnr FOR vbkpf-belnr,
p_gjahr FOR vbkpf-gjahr.
data : p_bukrs1 type vbkpf-bukrs,
p_belnr1 type vbkpf-belnr,
p_gjahr1 type vbkpf-gjahr.
p_bukrs1 = p_bukrs-low.
p_belnr1 = p_belnr-low.
p_gjahr1 = p_gjahr-low.
SELECT * FROM vbkpf INTO TABLE gt_vbkpf1
WHERE bukrs = p_bukrs1
AND gjahr = p_gjahr1
AND belnr = p_belnr1.
LOOP AT gt_vbkpf1.
WRITE : / gt_vbkpf1-bukrs.
ENDLOOP.
You will get the result ..
<b>Note :
1. Without the VIA SELECTION-SCREEN option of the SUBMIT statement, p_bukrs , p_belnr and p_gjahr would be filled accordingly in Report2 Zkun_imp2, but they would not be displayed.
</b>
Regards,
Kunal.
Message was edited by: Kunal Kumar
Message was edited by: Kunal Kumar