Ansicht
Dokumentation

PVSHI_PVCMP_MAINTAIN - iPPE: Variante der Produktstruktur pflegen

PVSHI_PVCMP_MAINTAIN - iPPE: Variante der Produktstruktur pflegen

CL_GUI_FRONTEND_SERVICES - Frontend Services   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Mit dem Funktionsbaustein PVSHI_PVCMP_MAINTAIN können Sie Varianten der Produktstruktur bearbeiten. Sie können diesen Baustein sowohl zum Anlegen als auch zum Bearbeiten von Varianten verwenden. Außerdem können Sie Alternativen an Varianten (Baukastenalternativen) pflegen. Weiterhin werden Beziehungen zwischen Variante und Alternativen an Varianten (Baukastenbeziehungen) und Zuordnungen zu Aktivitäten der Prozessstruktur gepflegt.

Die Identifikation der Variante und des Knotens, an dem sie eingetragen werden soll, sowie ihrer Änderungsnummer, muss dem Baustein in der Tabelle COMPONENTVARIANTDATA (u.a.) mitgegeben werden. Dabei wird der interne Bezeichner (VARIANT_ID) benutzt.

Alle Daten, die zu der Variante gehören, können den entsprechenden Tabellen mitgegeben werden. In den abhängigen Tabellen muss dieselbe VARIANT_ID den entsprechenden Daten zugeordnet werden.

Pflege des Beziehungswissens:

Den Tabellen, die das Beziehungswissen enthalten (DEPENDENCYDATA , DEPENDENCYSOURCES), muss die Klassenzuordnung der Variante (COMPONENTVARIANTCLASSDIFF) mitgegeben werden, die sie über ihren Knoten erhält. Wenn eine Produktklassendifferenzierung/-zuordnung gepflegt werden soll, muss entsprechend diese Klassenzuordnung eingetragen werden. Die Klasse wird über den externen Bezeichner Klassenart und Klassennummer identifiziert. Das gleiche gilt für die Pflege der Produktklassendifferenzierung. Falls Sie Beziehungswissen auch in Kundennotation pflegen wollen, müssen Sie zusätzlich zur SAP-Notation die Kundennotation in der Tabelle DEPENDENCYSOURCES übergeben und hierbei dem Feld DEPENDENCY_ADV_EDIT den Wert 'X' zuweisen. Zur Befüllung der Tabellen des Beziehungswissens sei auf die Dokumentation der Beziehungswissen-API verwiesen, außerdem auf das angefügte Beispielcoding.

Wird dem Parameter I_GENERATE_SAP_SYNTAX der Wert 'X' zugewiesen, genügt es, das Beziehungswissen nur in Kundensyntax zu übergeben. Die SAP-Syntax und die Konfiguration werden in diesem Fall automatisch erzeugt.

Konfigurationspflege:

Den Tabellen zur Pflege des Seiteneinstiegs muss (analog zur Pflege des Beziehungswissens) eine Klasse mitgegeben werden. Zur Befüllung der Tabellen des Beziehungswissens (CONFIGURATIONINSTANCE, CONFIGURATIONVALUE) sei auf die Dokumentation der Konfigurations-API verwiesen, außerdem auf das angefügte Beispielcoding.

Wird an den Funktionsbaustein für eine Variante nur das Beziehungswissen, nicht aber die Konfiguration übergeben, so wird in ERP-Systemen der Seiteneinstieg automatisch generiert.

Hat der Parameter I_GENERATE_SAP_SYNTAX den Wert 'X', so wird der Inhalt der Tabellen-Parameter CONFIGURATIONINSTANCE und CONFIGURATIONVALUE ignoriert, und der Seiteneinstieg stattdessen automatisch generiert.

Unterschiede in der Funktionsweise des Bausteins, abhängig vom Wert des Parameters I_DELTA_FLAG:

  • Wert ' ' (Komplettpflege):
  • Attribute, die nicht an den Baustein übergeben werden, werden gelöscht! Wird z.B. nur die Tabelle COMPONENTVARIANTDATA befüllt, so werden die entsprechenden Varianten angelegt bzw. geändert. Bereits vorhandenes Beziehungswissen oder Texte dieser Varianten werden gelöscht. Bevor Sie eine Variante ändern, empfiehlt es sich daher, mit dem Funktionsbaustein PVSHI_PVCMP_READ die Attribute dieser Variante zu lesen.

Um einen Variante, eine Alternative oder eine Beziehung zu löschen, muss der entsprechende interne Bezeichner im Tabellen-Parameter COMPONENTVARIANTDATA, COMPONENTALTERNATIVEDATA bzw. COMPONENTRELATION übergeben werden und das Feld DELETE_FLG bzw. DELETE_NONHIST_FLG den Wert 'X' erhalten. Wird zusätzlich das Feld DEEP_DELETE_FLG mit dem Wert 'X' belegt, werden auch alle Referenzen von anderen iPPE-Objekten auf das zu löschende Objekt mitgelöscht.
  • Wert 'X' (Deltapflege):
  • Mit dem Wert 'X' im Parameter I_DELTA_FLAG legen Sie fest, dass der Baustein im Delta-Modus arbeitet. Das bedeutet, dass der Baustein zuerst alle vorhandenen Daten zu den übergebenen IDs liest und dann nur die ändert, die über die zugehörige Änderungsleiste als zu übertragende Daten gekennzeichnet wurden. (Der Name der Änderungsleiste unterscheidet sich von dem Namen der Originaltabelle durch das Suffix X). Die Daten, die nicht über die Änderungsleiste gekennzeichnet wurden, werden nicht geändert.

Wenn Sie z.B. nur den Kurztext einer Variante ändern wollen, reicht es aus die ID der Variante in der Tabelle COMPONENTVARIANTDATA im Feld VARIANT_ID anzugeben und in der Tabelle COMPONENTVARIANTSHORTTEXT die Schlüsselfelder (VARIANT_ID, CHANGE_NO, APPLICATION_TYPE, LANGU_ISO) und den geänderten Text im Feld TEXT einzutragen. Außerdem muss in der entsprechenden Änderungsleiste COMPONENTVARIANTSHORTTEXTX ebenfalls der Schlüssel gefüllt sein und das Kennzeichen TEXT gesetzt sein.
  • Pflege des Beziehungswissens:

Das Beziehungswissen in den Tabellen DEPENDENCYDATA und DEPENDENCYSOURCES kann nur als Ganzes für eine Kombination der Schlüsselfelder (VARIANT_ID, CHANGE_NO, CLASS_NUM und CLASS_TYPE)geändert werden. Sie können für eine Kombination der Schlüsselfelder entweder das komplette neue Beziehungwissen übergeben oder das komplette alte Beziehungwissen unverändert übernehmen.
Wenn Sie das Beziehungswissen für eine Schlüsselkombination ändern oder neu anlegen wollen, müssen Sie die Steuerstruktur CONFIGURATIONDEPENDENCYUPD mit den gefüllten Schlüsselfeldern VARIANT_ID, CHANGE_NO, CLASS_NUM und CLASS_TYPE und dem gesetzten Kennzeichen DEPENDENCY_UPD_FLG übergeben, damit die neuen Daten übernommen werden.
Sie können das Beziehungswissen für eine Schlüsselkombination löschen, wenn Sie das Kennzeichen DELETE_FLG in der entsprechenden Zeile der Tabellle DEPENDENCYDATA setzen.
  • Konfigurationspflege:

Die Konfiguration in den Tabellen CONFIGURATIONINSTANCE und CONFIGURATIONVALUE kann nur als Ganzes für eine Kombination der Schlüsselfelder (VARIANT_ID, CHANGE_NO, CLASS_NUM und CLASS_TYPE) geändert werden. Sie können für eine Kombination der Schlüsselfelder entweder eine komplette neue Konfiguration übergeben oder eine komplette alte Konfiguration unverändert übernehmen.
Wenn Sie die Konfiguration für eine Schlüsselkombination ändern oder neu anlegen wollen, müssen Sie die Steuerstruktur CONFIGURATIONDEPENDENCYUPD mit den gefüllten Schlüsselfeldern VARIANT_ID, CHANGE_NO, CLASS_NUM und CLASS_TYPE und dem gesetzten Kennzeichen CONFIGURATION_UPD_FLG übergeben, damit die neuen Daten übernommen werden.
Sie können die Konfiguration für eine Schlüsselkombination löschen, wenn Sie das Kennzeichen DELETE_FLG in der entsprechenden Zeile der Tabellle CONFIGURATIONINSTANCE setzen. Beachten Sie dabei, dass die Konfiguration neu generiert wird, wenn Sie nicht auch das entsprechende Bezeihungswissen zum Löschen markiert haben.

Beispiel

Hinweise

Kundenerweiterungen

Die Kundenerweiterungen an der Variante werden durch die Tabelle COMPONENTVARIANTEXTENSION gepflegt. Sie enthält die Werte der kundenspezifischen Felder. Die Zuordnung zu der entsprechenden Variante erfolgt durch den internen Bezeichner VARIANT_ID.

Im Fall des Delta-Modus müssen Sie zusätzlich zum Kunden-Include CI_PVCMPD ein Include CI_PVCMPDX anlegen, das die gleichen Felder beinhaltet. Diese Felder müssen den Komponententyp BAPIUPDATE haben.

Langtext:

Der Langtext der Variante wird durch die Tabelle COMPONENTVARIANTTEXTHEADER (Formatanweisungen des Langtextes zu einem Änderungsstand der Variante) und COMPONENTVARIANTTEXT (jeweils eine Langtextzeile) gepflegt. Dabei sei auf das angefügte Beispielcoding verwiesen.

Weiterführende Informationen





Parameter

ACTIVITYRELATION
ACTIVITYRELATIONCONSTRAINT
COMPONENTALTERNATIVEDATA
COMPONENTALTERNATIVEDATAX
COMPONENTALTERNATIVETEXT
COMPONENTALTERNATIVETEXTX
COMPONENTALTLONGTEXT
COMPONENTALTLONGTEXTHEADER
COMPONENTALTLONGTEXTHEADERX
COMPONENTALTLONGTEXTX
COMPONENTRELATION
COMPONENTVARIANTCLASSDIFF
COMPONENTVARIANTCLASSDIFFX
COMPONENTVARIANTDATA
COMPONENTVARIANTDATAX
COMPONENTVARIANTEXTENSION
COMPONENTVARIANTEXTENSIONX
COMPONENTVARIANTSHORTTEXT
COMPONENTVARIANTSHORTTEXTX
COMPONENTVARIANTTEXT
COMPONENTVARIANTTEXTHEADER
COMPONENTVARIANTTEXTHEADERX
COMPONENTVARIANTTEXTX
CONFIGURATIONDEPENDENCYUPD
CONFIGURATIONINSTANCE
CONFIGURATIONVALUE
DEPENDENCYDATA
DEPENDENCYSOURCES
I_CREATE_FLG
I_DELTA_FLG
I_GENERATE_SAP_SYNTAX
I_MODE_ALL
I_MSG_HANDLING
RETURN

Ausnahmen

Funktionsgruppe

PPEHI_CMP

General Material Data   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 13661 Date: 20240523 Time: 050036     sap01-206 ( 203 ms )