on 2022 Jan 10 8:39 AM
Hello Experts,
I need a table where we can find list of the all Info-objects/Field which are mapped to a composite provider.
There are 5 ADSO under this composite provider so I also need to know the field is coming from which ADSO>
Is there any table from where I can find these information. I am using SAP BW 7.4 version.
Please help.
Thanks
Ipsita
Request clarification before answering.
Hi Ipsita,
please have a look at this post:
https://blogs.sap.com/2016/03/04/mapping-of-infoprovider-fields-in-compositeprovider/
If this report is not enough, you can adopt it to your needs.
Regards,
Jörg
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hello experts,
can anyone help me on this topic.
Thanks,
Ipsita
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Pleae try the code in the link
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Gaurav,
I have used that code:
But I am getting the screen attached below:
And it is not giving me designed result also.
Code:
************************************************************************
* DATA DECLARATION
***********************************************************************
TYPES: BEGIN OF ty_output,
infoprovider TYPE rsdodsobject,
source TYPE rsdiobjnm,
target TYPE rsohcprcolnm,
END OF ty_output.
DATA: l_hcpr_xml_def TYPE xstring,
lt_xml_info TYPE TABLE OF smum_xmltb INITIAL SIZE 0,
lt_return TYPE STANDARD TABLE OF bapiret2,
lt_output TYPE STANDARD TABLE OF ty_output,
l_cvalue TYPE char255,
l_offset TYPE i,
l_output TYPE ty_output.
************************************************************************
* ALV REFERENCES
***********************************************************************
DATA: go_alv TYPE REF TO cl_salv_table,
go_columns TYPE REF TO cl_salv_columns,
go_funcs TYPE REF TO cl_salv_functions,
go_ex TYPE REF TO cx_root.
FIELD-SYMBOLS: fs_xml_info TYPE smum_xmltb.
************************************************************************
* SELECTION SCREEN DETAILS
************************************************************************
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
PARAMETERS: p_cp TYPE rsohcprnm.
SELECTION-SCREEN END OF BLOCK blk1.
************************************************************************
* DATA PROCESSSING
************************************************************************
* Select XML definition of CompositeProvider
SELECT SINGLE xml_ui
FROM rsohcpr
INTO l_hcpr_xml_def
WHERE hcprnm = p_cp
AND objvers = 'A'.
IF sy-subrc NE 0.
MESSAGE 'No valid or inactive CompositeProvider or CompositeProvider not of type HCPR' TYPE 'I'.
EXIT.
ELSE.
* Parse XML string to XML table
CALL FUNCTION 'SMUM_XML_PARSE'
EXPORTING
xml_input = l_hcpr_xml_def
TABLES
xml_table = lt_xml_info
return = lt_return.
* Internal table with mapping
LOOP AT lt_xml_info ASSIGNING fs_xml_info.
IF fs_xml_info-cname = 'entity'.
l_cvalue = fs_xml_info-cvalue.
SEARCH l_cvalue FOR 'composite'.
l_offset = sy-fdpos.
l_offset = l_offset - 1.
TRY.
l_output-infoprovider = fs_xml_info-cvalue(l_offset). "CompositeProvider
CATCH cx_sy_range_out_of_bounds.
l_output-infoprovider = fs_xml_info-cvalue.
ENDTRY.
ELSEIF
fs_xml_info-cname = 'targetName'.
l_output-target = fs_xml_info-cvalue.
ELSEIF
fs_xml_info-cname = 'sourceName'.
l_output-source = fs_xml_info-cvalue.
APPEND l_output TO lt_output.
ENDIF.
ENDLOOP.
* Output to ALV
TRY.
cl_salv_table=>factory(
IMPORTING
r_salv_table = go_alv
CHANGING
t_table = lt_output ).
" set column optimized
go_columns = go_alv->get_columns( ).
go_columns->set_optimize( ).
" set functions
go_funcs = go_alv->get_functions( ).
go_funcs->set_all( ).
go_alv->display( ).
CATCH cx_salv_msg INTO go_ex.
MESSAGE go_ex TYPE 'E'.
ENDTRY.
ENDIF.1.png
Hello Experts,
Is there any way to convert the XML file to a Table.
In the mentioned blog , there is no information how to use SMUM_XML_PARSE
Mapping of InfoProvider fields in CompositeProvider | SAP Blogs
Requesting for your help
Thanks,
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello gaurav,
In the blog, there is no information how to use SMUM_XML_PARSE
Mapping of InfoProvider fields in CompositeProvider | SAP Blogs.
can you please help on that.
Thanks,
Ipsita
Hi Ipsita,
from what I see in the BW/4 2.0 based system this information is always determined in the runtime. Thus I do not think it is not stored persistently in any of DB tables. What you can do is to run t-code RSOHCPR (CompositeProvider Support). Put your CompProv in there and hit "Display XML" button on tool-bar. You get an pop-up window where you see all IOs that particular CompProv has; plus at the end of the XML there is a list of the underlaying objects (e.g. ADSO) plus their IOs that are mapped into the CompProv. I think this is the closed where you can get.
cheers
m./
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ipsita,
check table RSOOBJXREF that is a storage of objects that are included in BW infoprov like aDSO, CompProv etc.
In your case as you are looking for all objects in the particular CompProv put a filter on field TLOGO = HCPR. As an output you will get a list of IOs used in the CompProv.
cheers
m./
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
89 | |
11 | |
9 | |
8 | |
7 | |
5 | |
4 | |
4 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.