I_ChgRecdRefProdStrucVarTP_2

DDL: I_CHGRECDREFPRODSTRUCVARTP_2 SQL: ICHGRECREFPSVTP2 Type: view TRANSACTIONAL

Change Record Obj Ref Prod Str Var(API)

I_ChgRecdRefProdStrucVarTP_2 is a Transactional CDS View that provides data about "Change Record Obj Ref Prod Str Var(API)" in SAP S/4HANA. It reads from 1 data source (I_ChgRecdRefProdStrucVarBsc) and exposes 21 fields with key field ChangeRecordReferenceUUID.

Data Sources (1)

SourceAliasJoin Type
I_ChgRecdRefProdStrucVarBsc reference_psv from

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName ICHGRECREFPSVTP2 view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.serviceQuality #C view
EndUserText.label Change Record Obj Ref Prod Str Var(API) view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #TRANSACTIONAL view
AccessControl.personalData.blocking #NOT_REQUIRED view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view

Fields (21)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID ChangeRecordReferenceUUID
Classasklasse_dendasClass
ProdStrucNodeDescription _variant ProdStrucNodeDescription
ProdStrucVariantDescription _variant ProdStrucVariantDescription
Material _variant Material
ProductStructureNodeType _variant ProductStructureNodeType
_ChangeRecordAPITP _ChangeRecordAPITP
ChangeRecordUUID ChangeRecordUUID
ChangeRecord ChangeRecord
ChangeRecordReferenceType ChangeRecordReferenceType
ChangeRecordReferenceSubtype ChangeRecordReferenceSubtype
ChangeRecordReference ChangeRecordReference
ParentChangeRecordRefUUID ParentChangeRecordRefUUID
IsMainReference IsMainReference
CreatedByUser CreatedByUser
CreationDateTime CreationDateTime
LastChangedByUser LastChangedByUser
LastChangeDateTime LastChangeDateTime
ChangeRecordItemRelevance ChangeRecordItemRelevance
ChangeRecordVirtualRefInd ChangeRecordVirtualRefInd
ChangeRecordRefObjectUUID ChangeRecordRefObjectUUID
@AbapCatalog.sqlViewName: 'ICHGRECREFPSVTP2'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED



@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.serviceQuality: #C
@EndUserText.label: 'Change Record Obj Ref Prod Str Var(API)'
@ClientHandling.algorithm: #SESSION_VARIABLE

@VDM.viewType: #TRANSACTIONAL
@ObjectModel: {
semanticKey: ['ProductStructureNodeName','Class','ProductStructureVariantName','ProdStrucVariantChangeNumber']
//                writeDraftPersistence: 'PLMCRREFPSV_D',

//                createEnabled,

//                deleteEnabled,

//                updateEnabled

              }
@AccessControl.personalData.blocking: #NOT_REQUIRED
@VDM.lifecycle.contract.type:#SAP_INTERNAL_API
define view I_ChgRecdRefProdStrucVarTP_2
  as select from           I_ChgRecdRefProdStrucVarBsc   as reference_psv
    left outer to one join I_ProductStructureVariantNode as _variant on  reference_psv.ChgRecRefInternalKey1 = _variant.ProductStructureVariantName
                                                                     and reference_psv.ChgRecRefInternalKey2 = _variant.ProductStructureNodeName
                                                                     and ( reference_psv.ChgRecRefInternalKey3 = _variant.Class 
                                                                     or ( reference_psv.ChgRecRefInternalKey3 = '' and _variant.Class is null ))
                                                                     and reference_psv.ChgRecRefInternalKey4 = _variant.ProdStrucVariantChangeNumber
  association to parent I_ChangeRecordTP_2 as _ChangeRecordAPITP on $projection.ChangeRecordUUID = _ChangeRecordAPITP.ChangeRecordUUID
{
  key ChangeRecordReferenceUUID,
      case
        when _variant.ProductStructureNodeName is null then cast(SUBSTRING( reference_psv.ChangeRecordReference, 1, 40) as pvs_pnode)
        else cast(_variant.ProductStructureNodeName  as pvs_pnode)
        end           as     ProductStructureNodeName,


      case
       when _variant.Class is null then  cast(SUBSTRING( reference_psv.ChangeRecordReference, 41, 18) as klasse_d)
       else cast(_variant.Class as klasse_d)
       end            as     Class,

      case
       when _variant.ProductStructureVariantName is null then cast (SUBSTRING( reference_psv.ChangeRecordReference, 59, 8) as pvs_posvar)
       else cast(_variant.ProductStructureVariantName as pvs_posvar)
       end            as     ProductStructureVariantName,
      case
       when _variant.ProdStrucVariantChangeNumber is null then cast (SUBSTRING( reference_psv.ChangeRecordReference, 67, 12) as pvs_aennr)
       else cast(_variant.ProdStrucVariantChangeNumber as pvs_aennr)
       end            as     ProdStrucVariantChangeNumber,
      _variant.ProdStrucNodeDescription,
      _variant.ProdStrucVariantDescription,
      _variant.Material,
      _variant.ProductStructureNodeType,
      _ChangeRecordAPITP,
      ChangeRecordUUID,
      ChangeRecord,
      ChangeRecordReferenceType,
      ChangeRecordReferenceSubtype,
      ChangeRecordReference,
      ParentChangeRecordRefUUID,
      IsMainReference,
      @Semantics.user.createdBy: true
      CreatedByUser,
      CreationDateTime,
      @Semantics.user.lastChangedBy: true
      LastChangedByUser,
      LastChangeDateTime,
      ChangeRecordItemRelevance,
      ChangeRecordVirtualRefInd,
      ChangeRecordRefObjectUUID
      //      Customer,

//      @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT ]

//      _ChangeRecordAPITP


}