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.
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.
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.
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
This variant is the most general and the most straightforward. It is described in the documentation for function module BAPI_INFOCUBE_READ_REMOTE_DATA.
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.