Start of Content Area

Object documentationVirtualProviders with Function Modules  Locate the document in its SAP Library structure

Definition

A VirtualProvider with a user-defined function module that reads the data in the VirtualProvider for analysis and reporting purposes.

You have a number of options for defining the properties of the data source more precisely. According to these properties, the data manager provides various function module interfaces for converting the parameters and data. These interfaces have to be implemented outside the BI system.

Use

You use this VirtualProvider if you want to display data from non-BI data sources in BI without having to copy the dataset into the BI structures. The data can be local or remote. You can also use your own calculations to change the data before it is passed to the OLAP processor.

This function is used primarily in the SAP Strategic Enterprise Management (SEM) application.

In comparison to other VirtualProviders, this VirtualProvider is more generic. It offers more flexibility, but also requires a higher implementation effort.

Structure

You specify the type of the VirtualProvider when you create it. If you choose Based on Function Module as the type for your VirtualProvider, an extra Detail pushbutton appears on the interface. This pushbutton opens an additional dialog box, in which you define the services.

...

       1.      Enter the name of a function module that you want to use as the data source for the VirtualProvider. There are different default variants for the interface of this function module. One method for defining the correct variant, together with the description of the interfaces, is given at the end of this documentation.

       2.      You can choose options to support the selection conditions. You do this by selecting the Convert Restrictions option. These conversions only change the transfer table in the user-defined function module. The conversions do not change the result of the query because the restrictions that the function module does not process are checked later in the OLAP processor.

Options:

     No support: If this option is selected, no restrictions are passed to the function module.

     Global selection conditions only: If this option is selected, only global restrictions (FEMS = 0) are passed to the function module. Other restrictions (FEMS > 0) that are created, for example, by setting restrictions on columns in queries, are deleted.

     Hierarchies: If this option is switched on, the relevant InfoProvider supports hierarchy restrictions. This is only possible if the InfoProvider also supports SIDs.

     Do not transform selection conditions: If this option is switched on, all selection conditions are passed to the function module, without being converted first.

       3.      Pack RFC: This option packs the parameter tables in BAPI format before the function module is called and unpacks the data table that is returned by the function module after the call is performed. Since this option is only useful with a remote function call, you have to define a logical system that is used to determine the target system for the remote function call, if you select this option.

       4.      SID support: If the data source of the function module can process SIDs, you should select this option.
If this is not possible, the characteristic values are read from the data source and the data manager determines the SIDs dynamically. In this case, wherever possible, restrictions that are applied to SID values are converted automatically into the corresponding restrictions for the characteristic values.

       5.      With navigation attributes: If this option is selected, navigation attributes and restrictions applied to navigation attributes are passed to the function module.
If this option is not selected, the navigation attributes are read in the data manager once the user-defined function module has been executed. In this case, in the query, you need to have selected the characteristics that correspond to these attributes. Restrictions applied to the navigation attributes are not passed to the function module in this case.

       6.      Internal format (key figures): In SAP systems a separate format is often used to display currency key figures. The value in the internal format is different from the correct value in that the decimal places are shifted. You use the currency tables to determine the correct value for this internal representation.
If this option is selected, the OLAP processor incorporates this conversion into the calculation.

       7.      Data quality settings

     Data is delivered immediately: If you do not select the Pack RFC option, the function module interface contains parameter i_th_sfc with a numeric column ORDERBY or SORT. If this figure is not initial, it indicates the required sorting sequence of the field in the result. Choose the Sorted data is delivered option if the VirtualProvider delivers the data in the specified sequence.

     “Exact” data is delivered: Choose the “Exact” data is delivered option, if the VirtualProvider always exactly observes all filters specified on the interface.  In some cases, the VirtualProvider omits filters and returns a superset of the requested data.

Dependencies

If you use a remote function call, SID support has to be switched off and the hierarchy restrictions have to be expanded.

Different variants are allowed for the interface of the user-defined function module. These variants depend on the options you have chosen for the VirtualProvider:

     If Pack RFC is switched on, choose variant 1

     If SID Support is switched off, choose variant 2

     Otherwise, choose variant 3

 

Description of the Interfaces for User-Defined Function Modules

Variant 1:

Syntax

This graphic is explained in the accompanying text

This variant is the most general and the most straightforward. It is described in the documentation for function module BAPI_INFOCUBE_READ_REMOTE_DATA.

Variant 2:

Syntax

This graphic is explained in the accompanying text

Variant 3:

Caution

SAP advises against using this interface.

The interface is intended for internal use only and is only mentioned here for completeness.

Note that the structures used in the interface may be changed by SAP.

Syntax

This graphic is explained in the accompanying text

 

 

End of Content Area