‎2007 Jul 16 1:53 PM
Hi,
Can anyone tell me how to create selection screen in BDC and what is the use of RLGRAP?
Regards,
Hema
‎2007 Jul 16 2:03 PM
Hi
If you are creating your BDC program from the SHDB recording then a default selection screen will be created automatically..
You can create your own selection screen with a file name like RLGRAP_FILENAME like
PARAMETERS : V_FNAME LIKE RLGRAP-FILENAME.
and you can assign F4 help also for this, so that you can assign a filename
<b>Reward points for useful Answers</b>
Regards
Anji
‎2007 Jul 16 2:06 PM
hi,
plz refer this code:
PARAMETERS: p_file(1024) TYPE c OBLIGATORY. " this is file for upload
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
PERFORM filename_f4 CHANGING p_file.
FORM filename_f4 USING e_filename TYPE c.
DATA: r_file TYPE REF TO cl_gui_frontend_services.
DATA: action_code TYPE i.
DATA: rc TYPE i.
DATA: failed TYPE boolean.
CREATE OBJECT r_file.
REFRESH t_filenames.
IF NOT e_filename IS INITIAL.
APPEND e_filename TO t_filenames.
ELSE.
CALL METHOD r_file->file_open_dialog
CHANGING
file_table = t_filenames
user_action = action_code
rc = rc
EXCEPTIONS
OTHERS = 1.
IF sy-subrc <> 0.
failed = 'X'.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
IF rc <= 0.
failed = 'X'.
ENDIF.
ENDIF.
ENDIF.
CHECK failed IS INITIAL.
CHECK NOT t_filenames IS INITIAL.
READ TABLE t_filenames INTO e_filename INDEX 1.
ENDFORM. " FILENAME_F4
it may be useful, Reward
by,
ganesh
‎2007 Jul 16 2:13 PM
when you create BDC program through Recording of the transcation code ...
automatically the include program was created in the Recording program which is
<b>
include BDCRECX1</b>
this program holds the selection screen parameters which is defualted with some parameters in the seletion screen .the below is the selection-screen parameters with in the <b>include BDCRECX1</b>
*SELECTION-SCREEN BEGIN OF LINE.
* PARAMETERS SESSION RADIOBUTTON GROUP CTU. "create session
* SELECTION-SCREEN COMMENT 3(20) TEXT-S07 FOR FIELD SESSION.
* selection-screen position 45.
* PARAMETERS CTU RADIOBUTTON GROUP CTU DEFAULT 'X'. "call transaction
* SELECTION-SCREEN COMMENT 48(20) TEXT-S08 FOR FIELD CTU.
*SELECTION-SCREEN END OF LINE.
PARAMETERS: SESSION NO-DISPLAY,
CTU NO-DISPLAY DEFAULT 'X'.
*SELECTION-SCREEN BEGIN OF LINE.
* SELECTION-SCREEN COMMENT 3(20) TEXT-S01 FOR FIELD GROUP.
* selection-screen position 25.
* PARAMETERS GROUP(12). "group name of session
* SELECTION-SCREEN COMMENT 48(20) TEXT-S05 FOR FIELD CTUMODE.
* selection-screen position 70.
* PARAMETERS CTUMODE LIKE CTU_PARAMS-DISMODE DEFAULT 'N'.
* "A: show all dynpros
* "E: show dynpro on error only
* "N: do not display dynpro
*SELECTION-SCREEN END OF LINE.
PARAMETERS: GROUP(12) NO-DISPLAY,
CTUMODE NO-DISPLAY DEFAULT 'N'.
*SELECTION-SCREEN BEGIN OF LINE.
* SELECTION-SCREEN COMMENT 3(20) TEXT-S02 FOR FIELD USER.
* selection-screen position 25.
* PARAMETERS: USER(12) DEFAULT SY-UNAME. "user for session in batch
* SELECTION-SCREEN COMMENT 48(20) TEXT-S06 FOR FIELD CUPDATE.
* selection-screen position 70.
* PARAMETERS CUPDATE LIKE CTU_PARAMS-UPDMODE DEFAULT 'L'.
* "S: synchronously
* "A: asynchronously
* "L: local
*SELECTION-SCREEN END OF LINE.
PARAMETERS: USER(12) NO-DISPLAY DEFAULT SY-UNAME,
CUPDATE LIKE CTU_PARAMS-UPDMODE DEFAULT 'L' NO-DISPLAY.
*SELECTION-SCREEN BEGIN OF LINE.
* SELECTION-SCREEN COMMENT 3(20) TEXT-S03 FOR FIELD KEEP.
* selection-screen position 25.
* PARAMETERS: KEEP AS CHECKBOX. "' ' = delete session if finished
* "'X' = keep session if finished
* SELECTION-SCREEN COMMENT 48(20) TEXT-S09 FOR FIELD E_GROUP.
* selection-screen position 70.
* parameters E_GROUP(12). "group name of error-session
*SELECTION-SCREEN END OF LINE.
PARAMETERS: KEEP NO-DISPLAY,
E_GROUP(12) NO-DISPLAY.
*SELECTION-SCREEN BEGIN OF LINE.
* SELECTION-SCREEN COMMENT 3(20) TEXT-S04 FOR FIELD HOLDDATE.
* selection-screen position 25.
* PARAMETERS: HOLDDATE LIKE SY-DATUM.
* SELECTION-SCREEN COMMENT 51(17) TEXT-S02 FOR FIELD E_USER.
* selection-screen position 70.
* PARAMETERS: E_USER(12) DEFAULT SY-UNAME. "user for error-session
*SELECTION-SCREEN END OF LINE.
PARAMETERS: HOLDDATE LIKE SY-DATUM NO-DISPLAY,
E_USER(12) DEFAULT SY-UNAME NO-DISPLAY.
*SELECTION-SCREEN BEGIN OF LINE.
* SELECTION-SCREEN COMMENT 51(17) TEXT-S03 FOR FIELD E_KEEP.
* selection-screen position 70.
* PARAMETERS: E_KEEP AS CHECKBOX. "' ' = delete session if finished
* "'X' = keep session if finished
*SELECTION-SCREEN END OF LINE.
PARAMETERS: E_KEEP NO-DISPLAY.
*SELECTION-SCREEN BEGIN OF LINE.
* SELECTION-SCREEN COMMENT 51(17) TEXT-S04 FOR FIELD E_HDATE.
* selection-screen position 70.
* PARAMETERS: E_HDATE LIKE SY-DATUM.
*SELECTION-SCREEN END OF LINE.
*
*SELECTION-SCREEN SKIP.
PARAMETERS: E_HDATE LIKE SY-DATUM NO-DISPLAY.
*SELECTION-SCREEN BEGIN OF LINE.
* SELECTION-SCREEN COMMENT 1(33) TEXT-S10 FOR FIELD NODATA.
* PARAMETERS: NODATA DEFAULT '/' LOWER CASE. "nodata
*SELECTION-SCREEN END OF LINE.
PARAMETERS: NODATA DEFAULT '/' LOWER CASE NO-DISPLAY.
*SELECTION-SCREEN BEGIN OF LINE.
* SELECTION-SCREEN COMMENT 1(33) FOR FIELD SMALLLOG.
* PARAMETERS: SMALLLOG as checkbox. "' ' = log all transactions
* "'X' = no transaction logging
*SELECTION-SCREEN END OF LINE.
PARAMETERS: SMALLLOG NO-DISPLAY.
<b>so only we have add the File path in the selection-screen</b>
<b>RLGRAP</b> is a database structure which has the field like parameter for File Path .
Field name as -> <b>FILENAME</b> .
Example code :
PARAMETERS: p_file TYPE rlgrap-filename.
* At selection screen
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
field_name = 'P_FILE'
IMPORTING
file_name = p_file.reward points if it is usefull .....
Girish