Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
5352119c
Advisor
Advisor
865

REASON


The where-used functionality for sap objects in customer cloud systems is generally not supported. Therefore, the where-used is generally probably not supported in that system .

The where-used lists are based on index data stored in tables - the "Update Navigation Index" option fixes it for an individual program if that program's index entries are corrupted in some way.

( path : Utilities->Update Navigation Index)

 

Solution


If there are lots of items incorrect and the where-used for SAP objects is required in this system for some reason, you have two tools to fix the where-used list problem. There are 2 programs for this - SAPRSEUC to rebuild customer object indexes (Y & Z) and SAPRSEUB to rebuild SAP object indexes. As mentioned, rebuilding the index table content is a very time-consuming operation. Consider it may run for a day for customer objects, and might more days or a week for SAP standard objects. you'd better Schedule reports in background job to fix it .

But If there are many DDLS objects missing in the where-used result, please run the report SDDIC_DDLS_INDEX_ALL_SOURCES to rebuild the RIS indices for all active DDLS objects .These actions should only be executed in a customer development system., maybe you can according to the Note:2833335 - DDLS object missing in the where-used result list - SAP ONE Support Launchpad

Customization


If you just want to rebuild some specific DDLS, you could add the DDL that you need into table 'DDL_OBJECTS'.

Logic in the report SDDIC_DDLS_INDEX_ALL_SOURCES:

step1 ,get all DDL sources from the table DDDLSRC, just rebuild customer object indexes (Y & Z) when you input 'CUS' at select-screen


get DDL sources


step2, Get CDS View Sources: cl_ddls_where_used=>usage_finder->resolve( i_ddlname ), the ddl sources are saved in the table ddddlsrc . Then, they will be converted into Standard table



Class: CL_WB_DDLS_RIS_INDEXER, Method: IF_WB_DDLS_RIS_INDEXER~WRITE_USAGE_REFERENCES, insert into table 'ddls_ris_index'

1 Comment