Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
gregorw
Active Contributor
If you're using the SAP Menu in the SAP Fiori Launchpad you might be aware of the SAP Notes:

That ask you to run the report /UI2/EAM_BUILD_CACHE. If you have multiple languages installed that can be quite cumbersome as you have to execute the report in each of the installed languages. To get arround this issue I've created the following helper report that schedules a job in all installed languages:
*&---------------------------------------------------------------------*
*& Report ZBC_FLP_EAM_BUILD_CACHE
*&---------------------------------------------------------------------*
*& Wrap /UI2/EAM_BUILD_CACHE to execute for multiple languages
*&---------------------------------------------------------------------*
*& Created by Gregor Wolf
*&---------------------------------------------------------------------*
REPORT zbc_flp_eam_build_cache.

CONSTANTS prefix TYPE tbtcjob-jobname VALUE 'ZBC_FLP_EAM_BUILD_CACHE'.

DATA tt002 TYPE t002.
DATA languages TYPE TABLE OF t002.
DATA own_language TYPE spras.
DATA message TYPE string.

DATA: number TYPE tbtcjob-jobcount,
name TYPE tbtcjob-jobname,
print_parameters TYPE pri_params.

SELECT-OPTIONS s_langu FOR tt002-spras.

START-OF-SELECTION.

own_language = sy-langu.

SELECT * FROM t002
LEFT JOIN t002c ON t002~spras = t002c~spras
INTO CORRESPONDING FIELDS OF TABLE @languages
WHERE t002~spras IN @s_langu AND t002c~lainst = 'X'
ORDER BY t002~spras.

IF sy-subrc <> 0.
WRITE / 'No active languages installed'.
ENDIF.

LOOP AT languages ASSIGNING FIELD-SYMBOL(<language>).
WRITE: / 'Building EAM Cache for language: ', <language>-spras.
name = prefix && |_| && <language>-laiso.
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = name
IMPORTING
jobcount = number
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
IF sy-subrc = 0.
SUBMIT /ui2/eam_build_cache TO SAP-SPOOL
SPOOL PARAMETERS print_parameters
WITHOUT SPOOL DYNPRO
VIA JOB name NUMBER number LANGUAGE <language>-spras
AND RETURN.
IF sy-subrc = 0.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = number
jobname = name
strtimmed = 'X'
EXCEPTIONS
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
OTHERS = 8.
IF sy-subrc <> 0.
WRITE / 'There was a error scheduling the Job'.
ENDIF.
ELSE.
DATA(msg) = cl_abap_submit_handling=>get_error_message( ).
MESSAGE ID msg-msgid
TYPE 'I'
NUMBER msg-msgno
WITH msg-msgv1 msg-msgv2 msg-msgv3 msg-msgv4
INTO message.
WRITE / message.
WRITE / <language>-laiso.
ENDIF.
ELSE.
WRITE / 'Issue creating a job number'.
ENDIF.
ENDLOOP.

When you've executed this report you should see the following result in SM37:


 

 
Labels in this area