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

F4 Help

Former Member
0 Likes
610

Hi,

i am making one function module in SE37.

During selection of file i want F4 help.

So pls tell me where i have to give the F4 help.

I am writing my code here itself.

FUNCTION Z_SALES_DOWNLOAD.

*"----


""Local interface:

*" IMPORTING

*" VALUE(V_VBELN) TYPE VBELN_VA

*" VALUE(FILENAME) TYPE RLGRAP-FILENAME

*" TABLES

*" IT_VBAK STRUCTURE VBAK

*" IT_AFKO STRUCTURE AFKO

*" IT_VBAP STRUCTURE VBAP

*"----


TYPES:BEGIN OF STRUCT_RESULT,

VBELN TYPE VBELN_VA,

POSNR TYPE POSNR_VA,

AUDAT TYPE AUDAT,

AUFNR TYPE AUFNR,

END OF STRUCT_RESULT.

DATA:IT_RESULT TYPE STANDARD TABLE OF STRUCT_RESULT,

WA_RESULT LIKE LINE OF IT_RESULT.

TYPES: BEGIN OF download_types,

s1(20) ,

s2(20) ,

s3(20) ,

s4(20) ,

END OF download_types.

DATA: itab_download TYPE STANDARD TABLE OF download_types,

wa_download LIKE LINE OF itab_download.

*CALL FUNCTION 'F4_FILENAME'

  • EXPORTING

  • PROGRAM_NAME = SYST-CPROG

  • DYNPRO_NUMBER = SYST-DYNNR

  • FIELD_NAME = 'V_FILE'

    • IMPORTING

  • FILE_NAME = 'V_FILE'

.

*DATA:v_file LIKE rlgrap-filename ."sgarg

*v_file = 'C:\Documents and Settings\DamarDPR\Desktop\sales.xls'.

IF NOT V_VBELN IS INITIAL.

SELECT * FROM VBAK INTO TABLE IT_VBAK WHERE VBELN = V_VBELN.

IF NOT IT_VBAK[] IS INITIAL.

SELECT * FROM AFKO INTO TABLE IT_AFKO FOR ALL ENTRIES IN IT_VBAK

WHERE AUFNR = IT_VBAK-AUFNR.

SELECT * FROM VBAP INTO TABLE IT_VBAP FOR ALL ENTRIES IN IT_VBAK

WHERE VBELN = IT_VBAK-VBELN.

ENDIF.

LOOP AT IT_VBAK.

READ TABLE IT_VBAK WITH KEY IT_VBAK-VBELN.

MOVE IT_VBAK-VBELN TO WA_RESULT-VBELN.

MOVE IT_VBAK-AUDAT TO WA_RESULT-AUDAT.

  • MODIFY TABLE IT_RESULT FROM WA_RESULT.

  • CLEAR WA_RESULT.

  • ENDLOOP.

READ TABLE IT_VBAP WITH KEY IT_VBAK-VBELN.

MOVE IT_VBAP-POSNR TO WA_RESULT-POSNR.

*

  • LOOP AT IT_AFKO.

READ TABLE IT_AFKO WITH KEY IT_VBAK-VBELN.

MOVE IT_VBAK-AUFNR TO WA_RESULT-AUFNR.

  • MODIFY TABLE IT_RESULT FROM WA_RESULT.

  • CLEAR WA_RESULT.

  • ENDLOOP.

  • LOOP AT IT_VBAP.

APPEND WA_RESULT TO IT_RESULT.

  • MODIFY TABLE IT_RESULT FROM WA_RESULT.

CLEAR WA_RESULT.

ENDLOOP.

ENDIF.

*loop at itab_download into wa_download.

wa_download-s1 = 'SalesOrder'.

wa_download-s2 = 'Item'.

wa_download-s3 = 'DueDate'.

wa_download-s4 = 'ProductionOrder'.

insert wa_download into table itab_download.

clear wa_download.

*endloop.

loop at it_result into wa_result.

wa_download-s1 = wa_result-vbeln.

wa_download-s2 = wa_result-posnr.

wa_download-s3 = wa_result-audat.

wa_download-s4 = wa_result-aufnr.

append wa_download to itab_download.

clear wa_download.

endloop.

******sandeep****

*

*CALL FUNCTION 'WS_FILENAME_GET'

  • EXPORTING

  • DEF_FILENAME = v_file

    • DEF_PATH = ' '

    • MASK = ' '

  • MODE = 'S'

  • TITLE = 'Select File'

  • IMPORTING

  • FILENAME = v_file

    • RC =

    • EXCEPTIONS

    • INV_WINSYS = 1

    • NO_BATCH = 2

    • SELECTION_CANCEL = 3

    • SELECTION_ERROR = 4

    • OTHERS = 5

  • .

*IF SY-SUBRC <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

*ENDIF.

******sandeep**

CALL FUNCTION 'WS_DOWNLOAD'

EXPORTING

  • BIN_FILESIZE = ' '

  • CODEPAGE = ' '

FILENAME = filename

FILETYPE = 'DAT'

  • MODE = ' '

  • WK1_N_FORMAT = ' '

  • WK1_N_SIZE = ' '

  • WK1_T_FORMAT = ' '

  • WK1_T_SIZE = ' '

  • COL_SELECT = ' '

  • COL_SELECTMASK = ' '

  • NO_AUTH_CHECK = ' '

  • IMPORTING

  • FILELENGTH =

TABLES

DATA_TAB = itab_download

  • FIELDNAMES = itab_download

  • EXCEPTIONS

  • FILE_OPEN_ERROR = 1

  • FILE_WRITE_ERROR = 2

  • INVALID_FILESIZE = 3

  • INVALID_TYPE = 4

  • NO_BATCH = 5

  • UNKNOWN_ERROR = 6

  • INVALID_TABLE_WIDTH = 7

  • GUI_REFUSE_FILETRANSFER = 8

  • CUSTOMER_ERROR = 9

  • OTHERS = 10

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDFUNCTION.

5 REPLIES 5
Read only

Former Member
0 Likes
584

Hi Sandeep,

WS_FILENAME_GET is a good FM to get F4 help for a file.

After selection-screen event u can code : the following command:-

<b>at selection-screen on value-request for p_file.

perform browse_presentation_server using p_file. </b>

within the subroutine u can call the above mentioned FM.

Reward points if helpful.

Shaily

Read only

0 Likes
584

Hi Shally,

We can't write events in Function Module.

Thats why i am facing problem.

Pls suggest me another method.

Thanks .

Read only

0 Likes
584

Hi Sandeep,

U can call the subroutine existing in another program within the same FM.

like:-

perform sub_routine(pgm_name) using p_file.

or

perform sub_routine in pgm_name using p_file if found.

Just try this once.

Shaily

Read only

Former Member
0 Likes
584

Hi

i can't be possible

you can see any sandard SAP function modules

there is no F4 facility available

the events level is not possible in FM

rewad if usefull

Read only

Former Member
0 Likes
584

Hi Sandeep,

Try this FM once.

<b>F4IF_INT_TABLE_VALUE_REQUEST</b>

Shaily