SAP PVSHI_PVCMP_READ Function Module for iPPE: Read Variants of Product Structure
PVSHI_PVCMP_READ is a standard pvshi pvcmp read SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for iPPE: Read Variants of Product Structure processing and below is the pattern details for this FM, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for pvshi pvcmp read FM, simply by entering the name PVSHI_PVCMP_READ into the relevant SAP transaction such as SE37 or SE38.
Function Group: PPEHI_CMP
Program Name: SAPLPPEHI_CMP
Main Program: SAPLPPEHI_CMP
Appliation area: C
Release date: 27-Oct-2003
Mode(Normal, Remote etc): Remote-Enabled
Update:

Function PVSHI_PVCMP_READ pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'PVSHI_PVCMP_READ'"iPPE: Read Variants of Product Structure.
EXPORTING
* I_MODE_ALL = 'X' "Ignore Errors
* I_MSG_HANDLING = 'A' "Message Handling
* I_CHANGENO_SPECIFIED = ' ' "Read Specified Change Statuses Only
TABLES
* COMPONENTVARIANTDATA = "iPPE/BAPI: Attributes of Product Structure Variant
* COMPONENTVARIANTEXTENSION = "iPPE/BAPI: Customer Enhancements - CMP Variant
* COMPONENTALTERNATIVEDATA = "iPPE/BAPI: Component Alternative
* COMPONENTALTERNATIVETEXT = "iPPE/BAPI: Alternative Text for Component
* COMPONENTALTLONGTEXTHEADER = "iPPE/BAPI: Header Long Text for the Alternative
* COMPONENTALTLONGTEXT = "iPPE/BAPI: Long Text for the Alternative
* COMPONENTRELATION = "iPPE/BAPI: Component Relationship
* ACTIVITYRELATION = "iPPE/BAPI: Activities Relationship
* ACTIVITYRELATIONCONSTRAINT = "iPPE / BAPI: Additional Constraints
* GENERICRELATION = "iPPE / BAPI: Relationships of Generic Engineering Node
* ADMINDATA = "Administrative Data for iPPE Objects
* COMPONENTVARIANTSHORTTEXT = "iPPE / BAPI: Short Text of the Variant
* RETURN = "Return Parameters
* COMPONENTVARIANTTEXTHEADER = "iPPE/BAPI: Header Long Text for Variant
* COMPONENTVARIANTTEXT = "iPPE/BAPI: Long Text for Variant
* DEPENDENCYDATA = "iPPE/BAPI: Object Dependencies - Basic Data
* DEPENDENCYSOURCES = "iPPE/BAPI: Object Dependencies - Source Code Relationship
* CONFIGURATIONINSTANCE = "iPPE/BAPI: Instances of Several Configurations
* CONFIGURATIONVALUE = "iPPE/BAPI: Values of a Configuration
* COMPONENTVARIANTCLASSDIFF = "iPPE/BAPI: Class Differentiation
IMPORTING Parameters details for PVSHI_PVCMP_READ
I_MODE_ALL - Ignore Errors
Data type: PPE_MODE_ALLDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_MSG_HANDLING - Message Handling
Data type: PPE_MESSAGE_OPTIONDefault: 'A'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_CHANGENO_SPECIFIED - Read Specified Change Statuses Only
Data type: PPE_CHANGENO_SPECIFIEDDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for PVSHI_PVCMP_READ
COMPONENTVARIANTDATA - iPPE/BAPI: Attributes of Product Structure Variant
Data type: BAPI1176_CMP_VARIANTDATAOptional: Yes
Call by Reference: Yes
COMPONENTVARIANTEXTENSION - iPPE/BAPI: Customer Enhancements - CMP Variant
Data type: BAPI_TE_PVCMPDOptional: Yes
Call by Reference: Yes
COMPONENTALTERNATIVEDATA - iPPE/BAPI: Component Alternative
Data type: BAPI1176_CMP_ALTDATAOptional: Yes
Call by Reference: Yes
COMPONENTALTERNATIVETEXT - iPPE/BAPI: Alternative Text for Component
Data type: BAPI1176_CMP_ALTTEXTOptional: Yes
Call by Reference: Yes
COMPONENTALTLONGTEXTHEADER - iPPE/BAPI: Header Long Text for the Alternative
Data type: BAPI_PPE_ALT_LONGTEXT_HDOptional: Yes
Call by Reference: Yes
COMPONENTALTLONGTEXT - iPPE/BAPI: Long Text for the Alternative
Data type: BAPI_PPE_ALT_LONGTEXTOptional: Yes
Call by Reference: Yes
COMPONENTRELATION - iPPE/BAPI: Component Relationship
Data type: BAPI1176_CMP_RELATIONOptional: Yes
Call by Reference: Yes
ACTIVITYRELATION - iPPE/BAPI: Activities Relationship
Data type: BAPI1179_ACT_RELATIONOptional: Yes
Call by Reference: Yes
ACTIVITYRELATIONCONSTRAINT - iPPE / BAPI: Additional Constraints
Data type: BAPI1179_ACT_CONSTRAINTOptional: Yes
Call by Reference: Yes
GENERICRELATION - iPPE / BAPI: Relationships of Generic Engineering Node
Data type: BAPI1197_GEN_RELATIONOptional: Yes
Call by Reference: Yes
ADMINDATA - Administrative Data for iPPE Objects
Data type: PVSHI_ADMINDATAOptional: Yes
Call by Reference: Yes
COMPONENTVARIANTSHORTTEXT - iPPE / BAPI: Short Text of the Variant
Data type: BAPI_PPE_VAR_SHORTTEXTOptional: Yes
Call by Reference: Yes
RETURN - Return Parameters
Data type: BAPIRET2Optional: Yes
Call by Reference: Yes
COMPONENTVARIANTTEXTHEADER - iPPE/BAPI: Header Long Text for Variant
Data type: BAPI_PPE_VAR_LONGTEXT_HDOptional: Yes
Call by Reference: Yes
COMPONENTVARIANTTEXT - iPPE/BAPI: Long Text for Variant
Data type: BAPI_PPE_VAR_LONGTEXTOptional: Yes
Call by Reference: Yes
DEPENDENCYDATA - iPPE/BAPI: Object Dependencies - Basic Data
Data type: BAPI1176_CMP_DEPDATAOptional: Yes
Call by Reference: Yes
DEPENDENCYSOURCES - iPPE/BAPI: Object Dependencies - Source Code Relationship
Data type: BAPI1176_CMP_DEPSOURCEOptional: Yes
Call by Reference: Yes
CONFIGURATIONINSTANCE - iPPE/BAPI: Instances of Several Configurations
Data type: BAPI1176_CMP_CUINSOptional: Yes
Call by Reference: Yes
CONFIGURATIONVALUE - iPPE/BAPI: Values of a Configuration
Data type: BAPI1176_CMP_CUVALOptional: Yes
Call by Reference: Yes
COMPONENTVARIANTCLASSDIFF - iPPE/BAPI: Class Differentiation
Data type: BAPI1176_CMP_CLASSDIFFOptional: Yes
Call by Reference: Yes
Copy and paste ABAP code example for PVSHI_PVCMP_READ Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the newer method of declaring data variables on the fly. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lv_i_mode_all | TYPE PPE_MODE_ALL, " 'X' | |||
| lt_componentvariantdata | TYPE STANDARD TABLE OF BAPI1176_CMP_VARIANTDATA, " | |||
| lt_componentvariantextension | TYPE STANDARD TABLE OF BAPI_TE_PVCMPD, " | |||
| lt_componentalternativedata | TYPE STANDARD TABLE OF BAPI1176_CMP_ALTDATA, " | |||
| lt_componentalternativetext | TYPE STANDARD TABLE OF BAPI1176_CMP_ALTTEXT, " | |||
| lt_componentaltlongtextheader | TYPE STANDARD TABLE OF BAPI_PPE_ALT_LONGTEXT_HD, " | |||
| lt_componentaltlongtext | TYPE STANDARD TABLE OF BAPI_PPE_ALT_LONGTEXT, " | |||
| lt_componentrelation | TYPE STANDARD TABLE OF BAPI1176_CMP_RELATION, " | |||
| lt_activityrelation | TYPE STANDARD TABLE OF BAPI1179_ACT_RELATION, " | |||
| lt_activityrelationconstraint | TYPE STANDARD TABLE OF BAPI1179_ACT_CONSTRAINT, " | |||
| lt_genericrelation | TYPE STANDARD TABLE OF BAPI1197_GEN_RELATION, " | |||
| lt_admindata | TYPE STANDARD TABLE OF PVSHI_ADMINDATA, " | |||
| lv_i_msg_handling | TYPE PPE_MESSAGE_OPTION, " 'A' | |||
| lt_componentvariantshorttext | TYPE STANDARD TABLE OF BAPI_PPE_VAR_SHORTTEXT, " | |||
| lt_return | TYPE STANDARD TABLE OF BAPIRET2, " | |||
| lv_i_changeno_specified | TYPE PPE_CHANGENO_SPECIFIED, " SPACE | |||
| lt_componentvarianttextheader | TYPE STANDARD TABLE OF BAPI_PPE_VAR_LONGTEXT_HD, " | |||
| lt_componentvarianttext | TYPE STANDARD TABLE OF BAPI_PPE_VAR_LONGTEXT, " | |||
| lt_dependencydata | TYPE STANDARD TABLE OF BAPI1176_CMP_DEPDATA, " | |||
| lt_dependencysources | TYPE STANDARD TABLE OF BAPI1176_CMP_DEPSOURCE, " | |||
| lt_configurationinstance | TYPE STANDARD TABLE OF BAPI1176_CMP_CUINS, " | |||
| lt_configurationvalue | TYPE STANDARD TABLE OF BAPI1176_CMP_CUVAL, " | |||
| lt_componentvariantclassdiff | TYPE STANDARD TABLE OF BAPI1176_CMP_CLASSDIFF. " |
|   CALL FUNCTION 'PVSHI_PVCMP_READ' "iPPE: Read Variants of Product Structure |
| EXPORTING | ||
| I_MODE_ALL | = lv_i_mode_all | |
| I_MSG_HANDLING | = lv_i_msg_handling | |
| I_CHANGENO_SPECIFIED | = lv_i_changeno_specified | |
| TABLES | ||
| COMPONENTVARIANTDATA | = lt_componentvariantdata | |
| COMPONENTVARIANTEXTENSION | = lt_componentvariantextension | |
| COMPONENTALTERNATIVEDATA | = lt_componentalternativedata | |
| COMPONENTALTERNATIVETEXT | = lt_componentalternativetext | |
| COMPONENTALTLONGTEXTHEADER | = lt_componentaltlongtextheader | |
| COMPONENTALTLONGTEXT | = lt_componentaltlongtext | |
| COMPONENTRELATION | = lt_componentrelation | |
| ACTIVITYRELATION | = lt_activityrelation | |
| ACTIVITYRELATIONCONSTRAINT | = lt_activityrelationconstraint | |
| GENERICRELATION | = lt_genericrelation | |
| ADMINDATA | = lt_admindata | |
| COMPONENTVARIANTSHORTTEXT | = lt_componentvariantshorttext | |
| RETURN | = lt_return | |
| COMPONENTVARIANTTEXTHEADER | = lt_componentvarianttextheader | |
| COMPONENTVARIANTTEXT | = lt_componentvarianttext | |
| DEPENDENCYDATA | = lt_dependencydata | |
| DEPENDENCYSOURCES | = lt_dependencysources | |
| CONFIGURATIONINSTANCE | = lt_configurationinstance | |
| CONFIGURATIONVALUE | = lt_configurationvalue | |
| COMPONENTVARIANTCLASSDIFF | = lt_componentvariantclassdiff | |
| . " PVSHI_PVCMP_READ | ||
ABAP code using 7.40 inline data declarations to call FM PVSHI_PVCMP_READ
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.| DATA(ld_i_mode_all) | = 'X'. | |||
| DATA(ld_i_msg_handling) | = 'A'. | |||
| DATA(ld_i_changeno_specified) | = ' '. | |||
Search for further information about these or an SAP related objects