I_ProdAllocCharcCatalogPath

DDL: I_PRODALLOCCHARCCATALOGPATH SQL: IPACTLG_PATH Type: view BASIC Package: PROD_ALLOC_CHARC_CATALOG

Product Allocation Characteristic Catalog Path

I_ProdAllocCharcCatalogPath is a Basic CDS View that provides data about "Product Allocation Characteristic Catalog Path" in SAP S/4HANA. It reads from 1 data source (pactlg_path) and exposes 54 fields with key field ProdAllocCharcCtlgPathUUID. It has 16 associations to related views. Part of development package PROD_ALLOC_CHARC_CATALOG.

Data Sources (1)

SourceAliasJoin Type
pactlg_path pactlg_path from

Associations (16)

CardinalityTargetAliasCondition
[1..1] I_ProdAllocCharcCatalog _ProdAllocCharcCatalog $projection.ProdAllocCharcCatalogUUID = _ProdAllocCharcCatalog.ProdAllocCharcCatalogUUID
[0..*] I_ProdAllocCharcCtlgPathText _Text $projection.ProdAllocCharcCtlgPathUUID = _Text.ProdAllocCharcCtlgPathUUID
[0..*] I_ProdAllocCharcCtlgPathRef _ProdAllocCharcCtlgPathRef $projection.ProdAllocCharcCtlgPathUUID = _ProdAllocCharcCtlgPathRef.ProdAllocCharcCtlgPathUUID
[0..*] I_AllocCharcCtlgValGrpVal _AllocCharcCtlgValGrpVal $projection.ProdAllocCharcCtlgPathUUID = _AllocCharcCtlgValGrpVal.ProdAllocCharcCtlgPathUUID
[0..1] I_ProdAllocCharcCatalogType _ProdAllocCharcCatalogType $projection.ProdAllocCharcCatalogType = _ProdAllocCharcCatalogType.ProdAllocCharcCatalogType
[0..1] I_ProdAllocCharcCtlgUseType _ProdAllocCharcCtlgUseType $projection.ProdAllocCharcCatalogUseType = _ProdAllocCharcCtlgUseType.ProdAllocCharcCatalogUseType
[0..1] I_ProdAllocCharcCtlgCharcType _ProdAllocCharcCtlgCharcType $projection.ProdAllocCharcCatalogCharcType = _ProdAllocCharcCtlgCharcType.ProdAllocCharcCatalogCharcType
[0..1] I_ProdAllocCharcCtlgPathType _ProdAllocCharcCtlgPathType $projection.ProdAllocCharcCatalogPathType = _ProdAllocCharcCtlgPathType.ProdAllocCharcCatalogPathType
[0..*] I_ProdAllocCharcCatalogPath _NextLvlProdAllocCharcCtlgPath $projection.ProdAllocCharcCtlgPathIntID = _NextLvlProdAllocCharcCtlgPath.ProdAllocCharcCtlgParPathIntID
[0..1] I_ProdAllocCharcCatalogPath _ParentProdAllocCharcCtlgPath $projection.ProdAllocCharcCtlgParPathIntID = _ParentProdAllocCharcCtlgPath.ProdAllocCharcCtlgPathIntID
[0..*] I_DataElementLabelText _DataElementLabelText $projection.ABAPDataElement = _DataElementLabelText.ABAPDataElement
[0..*] I_PartnerFunctionText _PartnerFunctionText $projection.ProdAllocCharcCtlgPathSel = _PartnerFunctionText.PartnerFunction
[0..1] I_CharcValExistenceCheckType _CharcValExistenceCheckType $projection.CharcValExistenceCheckType = _CharcValExistenceCheckType.CharcValExistenceCheckType
[0..1] I_ProdAllocCharcCtlgPathRef _MainCharcCtlgPathRef _MainCharcCtlgPathRef.ProdAllocCharcCtlgPathUUID = $projection.ProdAllocCharcCtlgPathUUID and _MainCharcCtlgPathRef.ProdAllocCharcCatalogIsMain = 'X'
[0..1] I_UnitOfMeasure _CharacteristicUnitOfMeasure $projection.CharacteristicUnit = _CharacteristicUnitOfMeasure.UnitOfMeasure
[0..1] I_UnitOfMeasure _ValueGroupUnitOfMeasure $projection.CharacteristicValueGroupUnit = _ValueGroupUnitOfMeasure.UnitOfMeasure

Annotations (12)

NameValueLevelField
EndUserText.label Product Allocation Characteristic Catalog Path view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
AccessControl.authorizationCheck #NOT_REQUIRED view
AbapCatalog.sqlViewName IPACTLG_PATH view
AbapCatalog.compiler.compareFilter true view
ObjectModel.representativeKey ProdAllocCharcCtlgPathUUID view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MASTER view
ClientHandling.algorithm #SESSION_VARIABLE view
Search.searchable true view

Fields (54)

KeyFieldSource TableSource FieldDescription
KEY ProdAllocCharcCtlgPathUUID prodalloccharcctlgpathuuid
ProdAllocCharcCtlgPathIntID prodalloccharcctlgpathintid
ProdAllocCharcCatalogType prodalloccharccatalogtype
ProdAllocCharcCatalogUseType prodalloccharccatalogusetype
ProdAllocCharcCatalogUUID prodalloccharccataloguuid
ProdAllocCharcCtlgParPathIntID prodalloccharcctlgparpathintid
CharacteristicUnitPathIntID characteristicunitpathintid
ProdAllocCharcCatalogCharcType prodalloccharccatalogcharctype
ProdAllocCharcCatalogPathType prodalloccharccatalogpathtype
ClfnCharacteristicUseType clfncharacteristicusetype
CharcCatalogPathHierarchyType charccatalogpathhierarchytype
ABAPDataElement abapdataelement
ProdAllocCharcCtlgPathSelName prodalloccharcctlgpathselname
ProdAllocCharcCtlgPathSel prodalloccharcctlgpathsel
ProdAllocCharcCatalogPath prodalloccharccatalogpath
ProdAllocCharcCtlgAltvPath prodalloccharcctlgaltvpath
ProdAllocCharcCtlgLegacyTable prodalloccharcctlglegacytable
ProdAllocCharcCtlgLegacyPath prodalloccharcctlglegacypath
ProdAllocCharcValueHelp prodalloccharcvaluehelp
ProdAllocCharcValHelpTblField prodalloccharcvalhelptblfield
ProdAllocCharcValHelpTextLink prodalloccharcvalhelptextlink
ProdAllocCharcValHelpTxtTblFld prodalloccharcvalhelptxttblfld
ProdAllocCharcCtlgCharc prodalloccharcctlgcharc
ProdAllocCharcCtlgPathIsHidden prodalloccharcctlgpathishidden
ProdAllocCharcCtlgPathIsRoot prodalloccharcctlgpathisroot
CharcValExistenceCheckType charcvalexistencechecktype
ABAPDictionaryDataType abapdictionarydatatype
ABAPDictionaryDataTypeLength abapdictionarydatatypelength
ABAPDictionaryDataTypeDecimals abapdictionarydatatypedecimals
ABAPOutputLengthValue abapoutputlengthvalue
CharcValueIsCaseSensitive charcvalueiscasesensitive
CharcValueConversionRoutine charcvalueconversionroutine
CharcInternalID charcinternalid
CharacteristicUnit characteristicunit
CharacteristicValueGroupUnit characteristicvaluegroupunit
CharacteristicValueGroupType characteristicvaluegrouptype
CharcIsOnlyUsableInValueGroups charcisonlyusableinvaluegroups
CharcCatalogCharacteristicName charccatalogcharacteristicname
_ProdAllocCharcCatalog _ProdAllocCharcCatalog
_Text _Text
_ProdAllocCharcCtlgPathRef _ProdAllocCharcCtlgPathRef
_AllocCharcCtlgValGrpVal _AllocCharcCtlgValGrpVal
_ProdAllocCharcCatalogType _ProdAllocCharcCatalogType
_MainCharcCtlgPathRef _MainCharcCtlgPathRef
_ProdAllocCharcCtlgUseType _ProdAllocCharcCtlgUseType
_ProdAllocCharcCtlgCharcType _ProdAllocCharcCtlgCharcType
_ProdAllocCharcCtlgPathType _ProdAllocCharcCtlgPathType
_NextLvlProdAllocCharcCtlgPath _NextLvlProdAllocCharcCtlgPath
_ParentProdAllocCharcCtlgPath _ParentProdAllocCharcCtlgPath
_CharcValExistenceCheckType _CharcValExistenceCheckType
_DataElementLabelText _DataElementLabelText
_PartnerFunctionText _PartnerFunctionText
_CharacteristicUnitOfMeasure _CharacteristicUnitOfMeasure
_ValueGroupUnitOfMeasure _ValueGroupUnitOfMeasure
@EndUserText.label: 'Product Allocation Characteristic Catalog Path' //same as DDL description

@VDM.viewType: #BASIC
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@AccessControl.authorizationCheck: #NOT_REQUIRED  //or #NOT_REQUIRED #CHECK

@AbapCatalog.sqlViewName: 'IPACTLG_PATH'
@AbapCatalog.compiler.compareFilter:true
@ObjectModel.representativeKey: 'ProdAllocCharcCtlgPathUUID'
@ObjectModel.semanticKey:  [ 'ProdAllocCharcCatalogType',
                             'ProdAllocCharcCatalogUseType',
                             'ProdAllocCharcCtlgPathSelName',
                             'ProdAllocCharcCtlgPathSel',
                             'ProdAllocCharcCatalogPath' ]


@ObjectModel.usageType.sizeCategory: #S
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.dataClass:#MASTER
@ClientHandling.algorithm: #SESSION_VARIABLE

@Search.searchable: true

@Consumption.dbHints: [ 'NO_USE_HEX_PLAN' ]

define view I_ProdAllocCharcCatalogPath
  as select from pactlg_path

  association [1..1] to I_ProdAllocCharcCatalog       as _ProdAllocCharcCatalog         on  $projection.ProdAllocCharcCatalogUUID = _ProdAllocCharcCatalog.ProdAllocCharcCatalogUUID

  association [0..*] to I_ProdAllocCharcCtlgPathText  as _Text                          on  $projection.ProdAllocCharcCtlgPathUUID = _Text.ProdAllocCharcCtlgPathUUID

  association [0..*] to I_ProdAllocCharcCtlgPathRef   as _ProdAllocCharcCtlgPathRef     on  $projection.ProdAllocCharcCtlgPathUUID = _ProdAllocCharcCtlgPathRef.ProdAllocCharcCtlgPathUUID

  association [0..*] to I_AllocCharcCtlgValGrpVal     as _AllocCharcCtlgValGrpVal       on  $projection.ProdAllocCharcCtlgPathUUID = _AllocCharcCtlgValGrpVal.ProdAllocCharcCtlgPathUUID

  association [0..1] to I_ProdAllocCharcCatalogType   as _ProdAllocCharcCatalogType     on  $projection.ProdAllocCharcCatalogType = _ProdAllocCharcCatalogType.ProdAllocCharcCatalogType

  association [0..1] to I_ProdAllocCharcCtlgUseType   as _ProdAllocCharcCtlgUseType     on  $projection.ProdAllocCharcCatalogUseType = _ProdAllocCharcCtlgUseType.ProdAllocCharcCatalogUseType

  association [0..1] to I_ProdAllocCharcCtlgCharcType as _ProdAllocCharcCtlgCharcType   on  $projection.ProdAllocCharcCatalogCharcType = _ProdAllocCharcCtlgCharcType.ProdAllocCharcCatalogCharcType

  association [0..1] to I_ProdAllocCharcCtlgPathType  as _ProdAllocCharcCtlgPathType    on  $projection.ProdAllocCharcCatalogPathType = _ProdAllocCharcCtlgPathType.ProdAllocCharcCatalogPathType

  association [0..*] to I_ProdAllocCharcCatalogPath   as _NextLvlProdAllocCharcCtlgPath on  $projection.ProdAllocCharcCtlgPathIntID = _NextLvlProdAllocCharcCtlgPath.ProdAllocCharcCtlgParPathIntID

  association [0..1] to I_ProdAllocCharcCatalogPath   as _ParentProdAllocCharcCtlgPath  on  $projection.ProdAllocCharcCtlgParPathIntID = _ParentProdAllocCharcCtlgPath.ProdAllocCharcCtlgPathIntID

  association [0..*] to I_DataElementLabelText        as _DataElementLabelText          on  $projection.ABAPDataElement = _DataElementLabelText.ABAPDataElement

  association [0..*] to I_PartnerFunctionText         as _PartnerFunctionText           on  $projection.ProdAllocCharcCtlgPathSel = _PartnerFunctionText.PartnerFunction

  association [0..1] to I_CharcValExistenceCheckType  as _CharcValExistenceCheckType    on  $projection.CharcValExistenceCheckType = _CharcValExistenceCheckType.CharcValExistenceCheckType

  association [0..1] to I_ProdAllocCharcCtlgPathRef   as _MainCharcCtlgPathRef          on  _MainCharcCtlgPathRef.ProdAllocCharcCtlgPathUUID  = $projection.ProdAllocCharcCtlgPathUUID
                                                                                        and _MainCharcCtlgPathRef.ProdAllocCharcCatalogIsMain = 'X'
                                                                                        
  association [0..1] to I_UnitOfMeasure               as _CharacteristicUnitOfMeasure   on $projection.CharacteristicUnit = _CharacteristicUnitOfMeasure.UnitOfMeasure

  association [0..1] to I_UnitOfMeasure               as _ValueGroupUnitOfMeasure       on $projection.CharacteristicValueGroupUnit = _ValueGroupUnitOfMeasure.UnitOfMeasure
{
      // Key fields

      @ObjectModel.text.association: '_Text'
      @ObjectModel.readOnly: true
      @UI.hidden
  key prodalloccharcctlgpathuuid     as ProdAllocCharcCtlgPathUUID,

      // Fields

      @ObjectModel.readOnly: true
      //@ObjectModel.foreignKey.association: '_NextLvlProdAllocCharcCtlgPath'

      @UI.hidden
      prodalloccharcctlgpathintid    as ProdAllocCharcCtlgPathIntID,

      @ObjectModel.foreignKey.association: '_ProdAllocCharcCatalogType'
      @ObjectModel.mandatory: true
      @Search.defaultSearchElement: true
      prodalloccharccatalogtype      as ProdAllocCharcCatalogType,

      @ObjectModel.foreignKey.association: '_ProdAllocCharcCtlgUseType'
      //@ObjectModel.mandatory: true

      @Search.defaultSearchElement: true
      prodalloccharccatalogusetype   as ProdAllocCharcCatalogUseType,

      @ObjectModel.foreignKey.association: '_ProdAllocCharcCatalog'
      prodalloccharccataloguuid      as ProdAllocCharcCatalogUUID,

      //@ObjectModel.readOnly: true

      @UI.hidden
      prodalloccharcctlgparpathintid as ProdAllocCharcCtlgParPathIntID,

      @UI.hidden
      characteristicunitpathintid    as CharacteristicUnitPathIntID,

      @ObjectModel.foreignKey.association: '_ProdAllocCharcCtlgCharcType'
      @ObjectModel.mandatory: true
      prodalloccharccatalogcharctype as ProdAllocCharcCatalogCharcType,

      @ObjectModel.foreignKey.association: '_ProdAllocCharcCtlgPathType'
      @ObjectModel.mandatory: true
      prodalloccharccatalogpathtype  as ProdAllocCharcCatalogPathType,

      clfncharacteristicusetype      as ClfnCharacteristicUseType,
      
      charccatalogpathhierarchytype as CharcCatalogPathHierarchyType,

      @ObjectModel.text.association: '_DataElementLabelText'
      @UI.hidden
      // Is @UI.hidden because in the composite/union view either this description or

      // the description of the data element or the description of the partner

      // function shall be available (depending on which

      // one is filled), for this we will provide a new description field in the

      // consumption view which will be calculated by CASE-statement. This is also

      // the reason why it is a text-association, namely in order to be able to

      // retrieve the text of the data element.

      abapdataelement                as ABAPDataElement,

      prodalloccharcctlgpathselname  as ProdAllocCharcCtlgPathSelName,

      @ObjectModel.text.association: '_PartnerFunctionText'
      // In case of partner functions for business partners, we want to be able

      // to determine the partner function text. So either the text for the

      // current path is determined by data element, our own text table or

      // from the partner function text table.

      prodalloccharcctlgpathsel      as ProdAllocCharcCtlgPathSel,

      @ObjectModel.mandatory: true
      prodalloccharccatalogpath      as ProdAllocCharcCatalogPath,

      prodalloccharcctlgaltvpath     as ProdAllocCharcCtlgAltvPath,

      prodalloccharcctlglegacytable  as ProdAllocCharcCtlgLegacyTable,

      prodalloccharcctlglegacypath   as ProdAllocCharcCtlgLegacyPath,

      prodalloccharcvaluehelp        as ProdAllocCharcValueHelp,

      prodalloccharcvalhelptblfield  as ProdAllocCharcValHelpTblField,

      prodalloccharcvalhelptextlink  as ProdAllocCharcValHelpTextLink,

      prodalloccharcvalhelptxttblfld as ProdAllocCharcValHelpTxtTblFld,

      prodalloccharcctlgcharc        as ProdAllocCharcCtlgCharc,

      prodalloccharcctlgpathishidden as ProdAllocCharcCtlgPathIsHidden,

      prodalloccharcctlgpathisroot   as ProdAllocCharcCtlgPathIsRoot,

      @ObjectModel.foreignKey.association: '_CharcValExistenceCheckType'
      charcvalexistencechecktype     as CharcValExistenceCheckType,

      abapdictionarydatatype         as ABAPDictionaryDataType,

      abapdictionarydatatypelength   as ABAPDictionaryDataTypeLength,

      abapdictionarydatatypedecimals as ABAPDictionaryDataTypeDecimals,

      abapoutputlengthvalue          as ABAPOutputLengthValue,

      charcvalueiscasesensitive      as CharcValueIsCaseSensitive,

      charcvalueconversionroutine    as CharcValueConversionRoutine,

      charcinternalid                as CharcInternalID,

      @ObjectModel.foreignKey.association: '_CharacteristicUnitOfMeasure'
      @Semantics.unitOfMeasure: true
      characteristicunit             as CharacteristicUnit,

      @ObjectModel.foreignKey.association: '_ValueGroupUnitOfMeasure'
      @Semantics.unitOfMeasure: true
      characteristicvaluegroupunit   as CharacteristicValueGroupUnit,

      characteristicvaluegrouptype   as CharacteristicValueGroupType,

      charcisonlyusableinvaluegroups as CharcIsOnlyUsableInValueGroups,
      
      @ObjectModel.readOnly: true
      charccatalogcharacteristicname as CharcCatalogCharacteristicName,
      
      
      // Associations

      @ObjectModel.association.type: [#TO_COMPOSITION_PARENT,
                                      #TO_COMPOSITION_ROOT]
      _ProdAllocCharcCatalog,

      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _Text,

      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _ProdAllocCharcCtlgPathRef,

      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _AllocCharcCtlgValGrpVal,

      _ProdAllocCharcCatalogType,

      _MainCharcCtlgPathRef,

      _ProdAllocCharcCtlgUseType,

      _ProdAllocCharcCtlgCharcType,

      _ProdAllocCharcCtlgPathType,

      _NextLvlProdAllocCharcCtlgPath,

      _ParentProdAllocCharcCtlgPath,

      _CharcValExistenceCheckType,

      _DataElementLabelText,

      _PartnerFunctionText,
      
      _CharacteristicUnitOfMeasure,
      
      _ValueGroupUnitOfMeasure
}