I_ChgRecdRefPurOrdTP

DDL: I_CHGRECDREFPURORDTP SQL: ICHGRECDREFPPUTP Type: view TRANSACTIONAL

Change Record Reference Object Pur Ord

I_ChgRecdRefPurOrdTP is a Transactional CDS View that provides data about "Change Record Reference Object Pur Ord" in SAP S/4HANA. It reads from 2 data sources (I_PurchaseOrder, I_ChgRecdRefPurOrdBsc) and exposes 30 fields with key field ChangeRecordReferenceUUID. It has 2 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_PurchaseOrder PurOrder left_outer
I_ChgRecdRefPurOrdBsc reference_puo from

Associations (2)

CardinalityTargetAliasCondition
[1..1] I_ChangeRecordDraftTP _ChangeRecord $projection.ChangeRecordUUID = _ChangeRecord.ChangeRecordUUID
[0..1] E_ChgRecdRefPurOrdBsc _PurOrdExtension $projection.ChangeRecordReferenceUUID = _PurOrdExtension.ChangeRecordReferenceUUID

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName ICHGRECDREFPPUTP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Change Record Reference Object Pur Ord view
VDM.viewType #TRANSACTIONAL view
AccessControl.personalData.blocking #NOT_REQUIRED view
ObjectModel.writeDraftPersistence PLMCRREFPPU_D view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (30)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID I_ChgRecdRefPurOrdBsc ChangeRecordReferenceUUID
PurchaseOrderType I_PurchaseOrder PurchaseOrderType
PurchasingOrganization I_PurchaseOrder PurchasingOrganization
PurchaseOrderSubtype I_PurchaseOrder PurchaseOrderSubtype
PurchaseOrderDate I_PurchaseOrder PurchaseOrderDate
Supplier I_PurchaseOrder Supplier
ChangeRecordUUID I_ChgRecdRefPurOrdBsc ChangeRecordUUID
ChangeRecordReferenceSubtype I_ChgRecdRefPurOrdBsc ChangeRecordReferenceSubtype
ChangeRecordReferenceType I_ChgRecdRefPurOrdBsc ChangeRecordReferenceType
ChangeRecordRefObjectUUID I_ChgRecdRefPurOrdBsc ChangeRecordRefObjectUUID
ChangeRecordReference I_ChgRecdRefPurOrdBsc ChangeRecordReference
ParentChangeRecordRefUUID I_ChgRecdRefPurOrdBsc ParentChangeRecordRefUUID
IsMainReference I_ChgRecdRefPurOrdBsc IsMainReference
CreatedByUser I_ChgRecdRefPurOrdBsc CreatedByUser
CreationDateTime I_ChgRecdRefPurOrdBsc CreationDateTime
LastChangedByUser I_ChgRecdRefPurOrdBsc LastChangedByUser
LastChangeDateTime I_ChgRecdRefPurOrdBsc LastChangeDateTime
ChangeRecordItemRelevance I_ChgRecdRefPurOrdBsc ChangeRecordItemRelevance
ChangeRecordVirtualRefInd I_ChgRecdRefPurOrdBsc ChangeRecordVirtualRefInd
ChgRecdReasonForChange I_ChgRecdRefPurOrdBsc ChgRecdReasonForChange
ExpdCompltnDte I_ChgRecdRefPurOrdBsc ExpdCompltnDte
ChgRecdAuthznGrpText I_ChgRecdRefPurOrdBsc ChgRecdAuthznGrpText
ChgRecdNmbrChgSts I_ChgRecdRefPurOrdBsc ChgRecdNmbrChgSts
ChangeNumber I_ChgRecdRefPurOrdBsc ChangeNumber
SupplyingPlant I_PurchaseOrder SupplyingPlant
ChangeRecordItemProcgStatus I_ChgRecdRefPurOrdBsc ChangeRecordItemProcgStatus
ChgRecdItmTgtSts I_ChgRecdRefPurOrdBsc ChgRecdItmTgtSts
ChgRecdItmDSgntr I_ChgRecdRefPurOrdBsc ChgRecdItmDSgntr
ChgRecdCurrentItemProcgStatus
_ChangeRecord _ChangeRecord
@AbapCatalog.sqlViewName: 'ICHGRECDREFPPUTP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Change Record Reference Object Pur Ord'
@VDM.viewType: #TRANSACTIONAL
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ObjectModel: {
semanticKey: ['PurchaseOrder'],
                writeDraftPersistence: 'PLMCRREFPPU_D',
                createEnabled,
                deleteEnabled,
                updateEnabled
              }

@ObjectModel.usageType: {serviceQuality: #C,
                         dataClass: #MIXED,
                         sizeCategory: #L}
@ClientHandling.algorithm: #SESSION_VARIABLE
define view I_ChgRecdRefPurOrdTP
  as select from    I_ChgRecdRefPurOrdBsc as reference_puo
    left outer join I_PurchaseOrder       as PurOrder on reference_puo.ChgRecRefInternalKey1 = PurOrder.PurchaseOrder
  association [1..1] to I_ChangeRecordDraftTP as _ChangeRecord    on $projection.ChangeRecordUUID = _ChangeRecord.ChangeRecordUUID
  association [0..1] to E_ChgRecdRefPurOrdBsc as _PurOrdExtension on $projection.ChangeRecordReferenceUUID = _PurOrdExtension.ChangeRecordReferenceUUID
{
  key reference_puo.ChangeRecordReferenceUUID,
      case
      when PurOrder.PurchaseOrder is null then cast(SUBSTRING( reference_puo.ChangeRecordReference,1 ,10) as vdm_purchaseorder)
      else cast(PurOrder.PurchaseOrder as vdm_purchaseorder)
      end as PurchaseOrder,

      @ObjectModel.readOnly:true
      PurOrder.PurchaseOrderType,
      @ObjectModel.readOnly:true
      PurOrder.PurchasingOrganization,
      @ObjectModel.readOnly:true
      PurOrder.PurchaseOrderSubtype,
      @ObjectModel.readOnly:true
      PurOrder.PurchaseOrderDate,
      @ObjectModel.readOnly:true
      PurOrder.Supplier,

      reference_puo.ChangeRecordUUID,
      reference_puo.ChangeRecordReferenceSubtype,
      reference_puo.ChangeRecordReferenceType,
      reference_puo.ChangeRecordRefObjectUUID,
      reference_puo.ChangeRecordReference,
      reference_puo.ParentChangeRecordRefUUID,
      reference_puo.IsMainReference,
      @Semantics.user.createdBy: true
      @ObjectModel.readOnly: true
      reference_puo.CreatedByUser,
      reference_puo.CreationDateTime,
      @Semantics.user.lastChangedBy: true
      @ObjectModel.readOnly: true
      reference_puo.LastChangedByUser,
      reference_puo.LastChangeDateTime,
      reference_puo.ChangeRecordItemRelevance,
      reference_puo.ChangeRecordVirtualRefInd,
      reference_puo.ChgRecdReasonForChange,
      reference_puo.ExpdCompltnDte,
      reference_puo.ChgRecdAuthznGrpText,
      reference_puo.ChgRecdNmbrChgSts,
      reference_puo.ChangeNumber,
      @ObjectModel.readOnly: true
      PurOrder.SupplyingPlant,
      reference_puo.ChangeRecordItemProcgStatus,
      reference_puo.ChgRecdItmTgtSts,
      reference_puo.ChgRecdItmDSgntr,
      reference_puo. ChgRecdCurrentItemProcgStatus,
      // _PurchaseOrderType,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
      _ChangeRecord
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHGRECDREFPURORDBSC",
"I_PURCHASEORDER"
],
"ASSOCIATED":
[
"E_CHGRECDREFPURORDBSC",
"I_CHANGERECORDDRAFTTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/