‎2008 Jul 21 11:41 AM
hi friends,
how we can use this FM
RS_REFRESH_FROM_SELECTOPTION with some example.
Thanks,
Aruna
‎2008 Jul 21 1:20 PM
Hi Arun,
Just for an interest, Did you try the code what I pasted. Does it helped you?
Thanks & Regards,
Nagaraj Kalbavi
‎2008 Jul 21 11:45 AM
Hi,
You can use the function module RS_REFRESH_FROM_SELECTOPTIONS to read the contents of the parameters and selection options of the current program into an internal table seltab with the structure RSPARAMS .
Check this link :
http://members.tripod.com/sap_abap/submit_i.htm
Regards
Adil
‎2008 Jul 21 11:48 AM
Hi Arun,
Check this code, I developed this code to generate PDF from ABAP List output. I have provided a PDF button in the List output screen by clicking on it report will ask for the print paranmeters and PDF form will be generated.
The use of this function module is it will store the current selection screen input.
Now I will come to the point. To generate spool number by your user button we use this function module. The use of this function module is especially in the case of submit command where you want to submit your report again with all the data which is previously entered by the user.
REPORT Z_CREATE_PDF_ABAPLIST NO STANDARD PAGE HEADING.
PF-status containing a PDF button in the report Output to generate
PDF form
SET PF-STATUS 'Z_PDF'.
-
*Table Declarations
-
TABLES: MARA, MARC, MAKT.
-
Internal Table Declarations
-
DATA: BEGIN OF TS_MARA OCCURS 0,
MATNR LIKE MARA-MATNR,
MTART LIKE MARA-MTART,
MATKL LIKE MARA-MATKL,
LVORM LIKE MARA-LVORM,
WERKS LIKE MARC-WERKS,
MAKTX LIKE MAKT-MAKTX,
END OF TS_MARA.
-
Selection Screen Parameters
-
SELECTION-SCREEN BEGIN OF BLOCK B1.
SELECT-OPTIONS: S_MATNR FOR MARA-MATNR OBLIGATORY,
S_WERKS FOR MARC-WERKS OBLIGATORY.
SELECTION-SCREEN END OF BLOCK B1.
-
TOP-OF-PAGE.
-
write: 40 'Generating PDF from List Output' color 1 intensified on.
skip 1.
write: /1 'Date :', SY-DATUM,
/1 'User ID :', SY-UNAME,
/1(112) SY-ULINE.
-
START-OF-SELECTION.
-
Perform for Basic Selection
PERFORM GET_MARA.
Perform to Display Data
PERFORM DISPLAY_MARA.
-
AT USER-COMMAND.
-
User Command to generate PDF Form
AT USER-COMMAND.
CASE SY-UCOMM.
WHEN 'PDF'.
DATA: L_PARAMS TYPE PRI_PARAMS,
L_VALID TYPE STRING,
W_SPOOL_NR LIKE TSP01-RQIDENT.
TO GET PRINT PARAMETERS
CALL FUNCTION 'GET_PRINT_PARAMETERS'
IMPORTING
OUT_PARAMETERS = L_PARAMS
VALID = L_VALID.
IF SY-SUBRC <> 0.
ENDIF.
Internal table for Selection Screen
DATA: BEGIN OF I_RSPARAMS OCCURS 0.
INCLUDE STRUCTURE RSPARAMS.
DATA: END OF I_RSPARAMS.
Store the current selection screen details
CALL FUNCTION 'RS_REFRESH_FROM_SELECTOPTIONS'
EXPORTING
CURR_REPORT = SY-REPID
IMPORTING
SP =
TABLES
SELECTION_TABLE = I_RSPARAMS
EXCEPTIONS
NOT_FOUND = 1
NO_REPORT = 2
OTHERS = 3
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
SUBMIT TO GET THE SPOOL NUMBER
SUBMIT Z_CREATE_PDF_ABAPLIST WITH SELECTION-TABLE I_RSPARAMS
TO SAP-SPOOL
SPOOL PARAMETERS L_PARAMS
WITHOUT SPOOL DYNPRO
AND RETURN.
SELECT THE RECENTLY CREATED SPOOL
SELECT MAX( RQIDENT ) INTO W_SPOOL_NR FROM TSP01
WHERE RQCLIENT = SY-MANDT
AND RQOWNER = SY-UNAME.
*REPORT TO GENERATE SPOOL NUMBER FOR PDF CONVERT
SUBMIT RSTXPDF5 WITH SPOOLNO = W_SPOOL_NR
WITH DSTDEVIC = 'LOCL' AND RETURN .
IF SY-SUBRC EQ 0.
CLEAR W_SPOOL_NR.
SELECT THE RECENTLY CREATED SPOOL FOR PDF
SELECT MAX( RQIDENT ) INTO W_SPOOL_NR FROM TSP01
WHERE RQCLIENT = SY-MANDT
AND RQOWNER = SY-UNAME.
*REPORT TO DOWNLOAD PDF SPOOL TO GUI
SUBMIT RSTXPDFT5 WITH SPOOLID = W_SPOOL_NR
AND RETURN.
ENDIF.
ENDCASE. &----
*& Form GET_MARA
&----
text
-
--> p1 text
<-- p2 text
-
FORM GET_MARA .
CLEAR : TS_MARA.
REFRESH: TS_MARA.
To select Materials based on Selection Criteria
SELECT A~MATNR A~MTART A~MATKL A~LVORM B~WERKS INTO CORRESPONDING
FIELDS OF TABLE TS_MARA FROM MARA AS A
INNER JOIN MARC AS B ON A~MATNR EQ B~MATNR
WHERE A~MATNR IN S_MATNR
AND B~WERKS IN S_WERKS.
LOOP AT TS_MARA.
SELECT SINGLE * FROM MAKT WHERE MATNR EQ TS_MARA-MATNR
AND SPRAS EQ SY-LANGU.
MOVE MAKT-MAKTX TO TS_MARA-MAKTX.
MODIFY TS_MARA INDEX SY-TABIX.
ENDLOOP.
ENDFORM. " GET_MARA
&----
*& Form DISPLAY_MARA
&----
text
-
--> p1 text
<-- p2 text
-
FORM DISPLAY_MARA .
CLEAR : TS_MARA.
WRITE: /1 '|', 2(18) 'Material Number' COLOR 7,
21 '|', 22(5) 'Plant ' COLOR 7,
28 '|', 29(13) 'Material Type ' COLOR 7,
42 '|', 43(14) 'Material Group ' COLOR 7,
57 '|', 58(13) 'Deletion Flag ' COLOR 7,
71 '|', 72(40) 'Description ' COLOR 7,
112 '|'.
WRITE: /1(112) SY-ULINE.
LOOP AT TS_MARA.
WRITE: /1 '|', 2(18) TS_MARA-MATNR,
21 '|', 22(5) TS_MARA-WERKS,
28 '|', 29(13) TS_MARA-MTART,
42 '|', 43(14) TS_MARA-MATKL,
57 '|', 58(13) TS_MARA-LVORM,
71 '|', 72(40) TS_MARA-MAKTX,
112 '|'.
WRITE: /1(112) SY-ULINE.
ENDLOOP.
ENDFORM. " DISPLAY_MARA
Hope it helps.
Thanks & Regards,
Nagaraj Kalbavi
‎2008 Jul 21 11:48 AM
Hi,
just doing a simple "Where used" search of the fm:
include: BEN49F01
form: GOTO_SELECTION_SCREEN
*&---------------------------------------------------------------------*
*& Form GOTO_SELECTION_SCREEN
*&---------------------------------------------------------------------*
form goto_selection_screen.
*
data: seltab like rsparams occurs 5,
repid like rsvar-report.
*
repid = sy-repid.
call function 'RS_REFRESH_FROM_SELECTOPTIONS'
exporting
curr_report = repid
tables
selection_table = seltab
exceptions
not_found = 1.
if sy-subrc = 0.
submit (sy-repid) via selection-screen
with selection-table seltab.
else.
leave program.
endif.
*
endform. " GOTO_SELECTION_SCREEN
Best regards.
‎2008 Jul 21 1:20 PM
Hi Arun,
Just for an interest, Did you try the code what I pasted. Does it helped you?
Thanks & Regards,
Nagaraj Kalbavi
‎2008 Jul 21 3:52 PM
Hi nagaraj,
Yes I tried your code.It helped me.
thanks for ur cooperation.
Thanks,
Aruna