Page tree
Skip to end of metadata
Go to start of metadata

When an RSDRI_INFOPROV_READ function is called within another RSDRI_INFOPROV_READ, then the error message DBMAN 882: Nested call of RSDRI_INFOPROV_READ

Sample scenarios:

  • Virtual cube (based on RSDRI_INFOPROV_READ) reads out of other virtual cube (RSDRI_INFOPROV_READ)
  • Export data source based on virtual cube

Workaround 1: Using CL_RSDRI_INFOPROV and method 'read'

This is already mentioned in the long text of DBMAN 882:

"...Diagnosis

The function module RSDRI_INFOPROV_READ is being called up in nested form. This is not allowed. The module RSDRI_INFOPROV_READ has a static                                                              reference to an object of the class CL_RSDRI_INFOPROV. When it is called in nested form, a new reference cannot be created without destroying the existing reference.

Procedure

Instead of using module RSDRI_INFOPROV_READ, use the class CL_RSDRI_INFOPROV. The read method of class CL_RSDRI_INFOPROV is identical to the module RSDRI_INFOPROV_READ.

..."

Workaround 2: Using RSDRI_INFOPROV_READ_RFC with DESTINATION 'NONE'

 When calling the function a new roll area a new reference is created and can be used. Then the virtual cube can also be used in a nested RSDRI call.

A very simplified sample of such a call is visible in this screenshot:

 

 

  • No labels