SAP® Documentation

Single view

BW_BADI_F4 - BAdI: Restricting the Value Help in the Variables Screen

ABAP Short Reference   BAL_S_LOG - Application Log: Log header data  
This documentation is copyright by SAP AG.
SAP E-Book

You can use this BAdI to restrict input help for entry variables in the variable screen.

The BAdI is filter-dependent. Create a separate implementation for each required InfoObject.

The BAdI is designed for multiple use.

Restricting input help without using hierarchies

To restrict input help for flat object lists without using hierarchies, use method Get_Restriction_Flat.

Method GET_RESTRICTION_FLAT

I_VNAMVariable
I_IOBJNMInfoObject
I_T_VAR_RANGETable of entries on the variable screen
I_T_COMPIDTable of participating queries
C_T_RANGERange table with other restrictions
C_INFOPROVInfoProvider
C_F4_ModeF4 mode

Entry parameters I_VNAM and I_IOBJNM return the names of the variables and InfoObject affected for the F4 help. I_T_VAR_RANGE returns additional values from the variable screen entered before the call. These are returned in a range table that does not, however, return any information about variables that cannot be entered. I_T_COMPID is a list of participating BI queries.

If there is a single InfoProvider, entry and return parameter C_INFOPROV contains the InfoProvider for the participating queries, and can be overwritten in the implementation. This is especially useful if you have just one MultiProvider as this allows you to restrict the input help to one of the physical InfoProviders, provided that you also set the F4 mode to #D# (input help from dimension tables). The mode can only be set to #D# in conjunction with physical InfoProviders, as dimension values are otherwise not available. If you reference a VirtualProvider that is based on a data transfer process, you always need to set mode #M# (input help from master data).

Return table C_T_RANGE is a range table of additional restrictions that can be used in the implementation. These restrictions are identical to restrictions that the system makes in the standard setting. It is therefore not possible to add to the list.

The following restrictions are permitted in C_T_RANGE:

  • Restrictions for InfoObject I_IOBJNM itself (for example, using a specified range)
  • Restrictions to groups of InfoObjects (for example, restriction of the fiscal year variant for fiscal years)
  • Restrictions by the InfoObject#s navigation attributes.

For technical reasons, pure display attributes cannot be used.

You can also make a restriction to physical InfoProviders. In this case, the input help is restricted to the specified physical InfoProviders. Field IOBJNM in table C_T_RANGE then has to be set to 0INFOPROV. If you are using a MultiProvider with physical InfoProviders with mode #D# (input help from dimension tables), the input help is built from all participating physical InfoProviders.

Entry and return parameter C_F4_MODE describes the retrieval method for the F4 help:

  • In mode #M#, the input help is built from the master data.
  • In mode #D#, the input help is built from the dimension tables of physical InfoProviders.

The choice of method is therefore always dependent on the choice of InfoProvider.

Restricting input help using hierarchies

To restrict input help for flat object lists using hierarchies, use method Get_Restriction_Node.

Method GET_RESTRICTION_NODE

I_VNAMVariable
I_IOBJNMInfoObject
I_T_VAR_RANGAETable of entries on the variable screen
I_T_COMPIDTable of participating queries
C_T_HIERARCHYTable of possible hierarchies
C_T_NODETable with node restrictions
C_INFOPROVInfoProvider
C_F4_ModeF4 mode

On the whole, this method is the same as method GET_RESTRICTION_FLAT. Instead of a C_T_RANGE, the additional node restrictions can be submitted using table C_T_NODE.

C_T_HIERARCHY contains the hierarchies that can be used based on the existing query restrictions. If this table contains multiple entries, the system uses the first hierarchy in the standard setting. In a BAdI implementation, specific entries can be removed, in order to select the required hierarchy.

Table C_T_NODE can be filled with individual nodes, in order to restrict the hierarchy to the corresponding subtrees. For nodes, the column NIOBJNM has to contain the corresponding InfoObject. For leaves, the NIOBJNM must be initial. The column NODENAME has to contain the full concatenated value, which includes the compoundings. Note however that all hierarchy elements above and below the restricted nodes remain visible in the input help.
Example: A hierarchy has the root node 'root'. The direct descendants of this root node are 'node 1' (with the leaves 'leaf 1.1' and 'leaf 1.2') and 'node 2' (with the leaves 'leaf 2.1' and 'leaf 2.2'). If a restriction is made in the BAdI to 'node 1', the following hierarchy elements will be visible in input help: Nodes 'root' and 'node 1' and leaves 'leaf 1.1' and 'leaf 1.2'. Additional restrictions (because of the user's authorization for example) can of course change this result accordingly.
For non-unique hierarchies, the following applies: The restriction provided by the BAdI is always active on the level of hierarchy leaves. If a leaf is used in several branches of the hierarchy, all these branches will be displayed.
Example: A hierarchy has the root node 'root'. The direct descendants of this root node are 'node 1' (with the leaves 'leaf 1.1' and 'leaf 1.2') and 'node 2' (with the leaves 'leaf 2.1' and 'leaf 2.2') and 'node 3' (with the leaves 'leaf 1.1' and 'leaf 3.1'). The leaf 'leaf 1.1' is the child of 'node 1' and 'node 3'. If a restriction is made in the BAdI to 'node 1', the following hierarchy elements will be visible in input help: Nodes 'root' and 'node 1' and leaves 'leaf 1.1' and 'leaf 1.2' and 'node 3' and leaf 'leaf 1.1' again. Additional restrictions (because of the user's authorization for example) can of course change this result accordingly.

All other parameters are the same for Get_Restriction_Node as described above for method Get_Restriction_Flat.

C_F4_Mode

For more information about implementing BAdIs for the enhancement concept, see the SAP Library for SAP NetWeaver, under BAdIs # Embedding in the Enhancement Framework.

C_F4_Mode






CPI1466 during Backup   Vendor Master (General Section)  
This documentation is copyright by SAP AG.

Length: 7858 Date: 20181216 Time: 050707     sap01-206 ( 100 ms )

Our Service

Looking for Support? Questions?

The

Consolut

Callback-Service

Leave us your contact details and we will call you back. Panels marked with * are mandatory.