I_ChgRecdRefPlngScpTP

DDL: I_CHGRECDREFPLNGSCPTP SQL: ICHGRECREFPLSTP Type: view TRANSACTIONAL

Change Record Reference Object PLS TP

I_ChgRecdRefPlngScpTP is a Transactional CDS View that provides data about "Change Record Reference Object PLS TP" in SAP S/4HANA. It reads from 2 data sources (I_PlngScpHdr, I_ChgRecdRefPlngScpBsc) and exposes 27 fields with key field ChangeRecordReferenceUUID. It has 2 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_PlngScpHdr PlanningScope left_outer
I_ChgRecdRefPlngScpBsc reference_pls from

Associations (2)

CardinalityTargetAliasCondition
[1..1] I_ChangeRecordDraftTP _ChangeRecord $projection.ChangeRecordUUID = _ChangeRecord.ChangeRecordUUID
[0..1] E_ChgRecdRefPlngScpBsc _PlngScpExtension $projection.ChangeRecordReferenceUUID = _PlngScpExtension.ChangeRecordReferenceUUID

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName ICHGRECREFPLSTP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Change Record Reference Object PLS TP view
VDM.viewType #TRANSACTIONAL view
ObjectModel.writeDraftPersistence PLMCRREFPLS_D view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view

Fields (27)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID I_ChgRecdRefPlngScpBsc ChangeRecordReferenceUUID
DocumentId I_PlngScpHdr DocumentId
SourceMaterialasmatnrendasSourceMaterial
PlanningScopeDescription I_PlngScpHdr PlanningScopeDescription
ChangeRecordUUID I_ChgRecdRefPlngScpBsc ChangeRecordUUID
ChangeRecordReferenceType I_ChgRecdRefPlngScpBsc ChangeRecordReferenceType
ChangeRecordReferenceSubtype I_ChgRecdRefPlngScpBsc ChangeRecordReferenceSubtype
ChangeRecordRefObjectUUID I_ChgRecdRefPlngScpBsc ChangeRecordRefObjectUUID
ChangeRecordReference I_ChgRecdRefPlngScpBsc ChangeRecordReference
ParentChangeRecordRefUUID I_ChgRecdRefPlngScpBsc ParentChangeRecordRefUUID
IsMainReference I_ChgRecdRefPlngScpBsc IsMainReference
CreatedByUser I_ChgRecdRefPlngScpBsc CreatedByUser
CreationDateTime I_ChgRecdRefPlngScpBsc CreationDateTime
LastChangedByUser I_ChgRecdRefPlngScpBsc LastChangedByUser
LastChangeDateTime I_ChgRecdRefPlngScpBsc LastChangeDateTime
ChangeRecordItemRelevance I_ChgRecdRefPlngScpBsc ChangeRecordItemRelevance
ChangeRecordVirtualRefInd I_ChgRecdRefPlngScpBsc ChangeRecordVirtualRefInd
ChangeRecordItemProcgStatus
ChgRecdItmTgtSts I_ChgRecdRefPlngScpBsc ChgRecdItmTgtSts
ChgRecdItmDSgntr
ChgRecdCurrentItemProcgStatus I_ChgRecdRefPlngScpBsc ChgRecdCurrentItemProcgStatus
ChgRecdReasonForChange I_ChgRecdRefPlngScpBsc ChgRecdReasonForChange
ExpdCompltnDte I_ChgRecdRefPlngScpBsc ExpdCompltnDte
ChgRecdAuthznGrpText I_ChgRecdRefPlngScpBsc ChgRecdAuthznGrpText
ChgRecdNmbrChgSts I_ChgRecdRefPlngScpBsc ChgRecdNmbrChgSts
ChangeNumber I_ChgRecdRefPlngScpBsc ChangeNumber
_ChangeRecord _ChangeRecord
@AbapCatalog.sqlViewName: 'ICHGRECREFPLSTP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Change Record Reference Object PLS TP'

@VDM.viewType: #TRANSACTIONAL
@ObjectModel: { semanticKey: ['SourceMaterial','SourcePlant','SourceBOMUsage','SourceBOMAlternative','PlanningScopeAlternative'],
                writeDraftPersistence: 'PLMCRREFPLS_D',
                createEnabled,
                deleteEnabled,
                updateEnabled
              }

@ObjectModel.usageType: {serviceQuality: #C,
                         dataClass: #MIXED,
                         sizeCategory: #L}
define view I_ChgRecdRefPlngScpTP
  as select from    I_ChgRecdRefPlngScpBsc as reference_pls
    left outer join I_PlngScpHdr           as PlanningScope on  reference_pls.ChgRecRefInternalKey1 = PlanningScope.DocumentId
                                                            and reference_pls.ChgRecRefInternalKey2 = PlanningScope.PlanningScopeAlternative
  association [1..1] to I_ChangeRecordDraftTP  as _ChangeRecord     on $projection.ChangeRecordUUID = _ChangeRecord.ChangeRecordUUID
  association [0..1] to E_ChgRecdRefPlngScpBsc as _PlngScpExtension on $projection.ChangeRecordReferenceUUID = _PlngScpExtension.ChangeRecordReferenceUUID
{
  key reference_pls.ChangeRecordReferenceUUID,

      PlanningScope.DocumentId,
      // PlanningScope.PlanningScopeAlternative,


      //        case when PlanningScope.SourceMaterial is null then cast(SUBSTRING( ChangeRecordReference, 1, 33) as vmp_plnscp_doc_id)

      //        else cast(PlanningScope.DocumentId as vmp_plnscp_doc_id)

      //        end       as DocumentId,


      case when PlanningScope.SourceMaterial is null then cast(SUBSTRING( ChangeRecordReference, 1, 40) as matnr)
           else cast(PlanningScope.SourceMaterial as matnr)
           end as SourceMaterial,

      case when PlanningScope.SourcePlant is null then cast(SUBSTRING( ChangeRecordReference, 41, 4) as vmp_source_plant)
      else cast(PlanningScope.SourcePlant as vmp_source_plant)
      end      as SourcePlant,

      case when PlanningScope.SourceBOMUsage is null then cast(SUBSTRING( ChangeRecordReference, 45, 1) as vmp_source_stlan)
      else cast(PlanningScope.SourceBOMUsage as vmp_source_stlan)
      end      as SourceBOMUsage,

      case when PlanningScope.SourceBOMAlternative is null then cast(SUBSTRING( ChangeRecordReference, 46, 2) as vmp_source_stalt)
      else cast(PlanningScope.SourceBOMAlternative as vmp_source_stalt)
      end      as SourceBOMAlternative,

      case when PlanningScope.PlanningScopeAlternative is null then cast(SUBSTRING( ChangeRecordReference, 48, 4) as vmp_plnscp_alt)
      else cast(PlanningScope.PlanningScopeAlternative as vmp_plnscp_alt)
      end      as PlanningScopeAlternative,

      @ObjectModel.readOnly: true
      PlanningScope.PlanningScopeDescription,

      // PlanningScope.SourceMaterial,

      //PlanningScope.SourcePlant,

      //  PlanningScope.SourceBOMUsage,

      //  PlanningScope.SourceBOMAlternative,

      reference_pls.ChangeRecordUUID,
      reference_pls.ChangeRecordReferenceType,
      reference_pls.ChangeRecordReferenceSubtype,
      reference_pls.ChangeRecordRefObjectUUID,
      reference_pls.ChangeRecordReference,
      reference_pls.ParentChangeRecordRefUUID,
      reference_pls.IsMainReference,
      @Semantics.user.createdBy: true
      @ObjectModel.readOnly: true
      reference_pls.CreatedByUser,
      reference_pls.CreationDateTime,
      @Semantics.user.lastChangedBy: true
      @ObjectModel.readOnly: true
      reference_pls.LastChangedByUser,
      reference_pls.LastChangeDateTime,
      reference_pls.ChangeRecordItemRelevance,
      reference_pls.ChangeRecordVirtualRefInd,
      reference_pls. ChangeRecordItemProcgStatus,
      reference_pls.ChgRecdItmTgtSts,
      reference_pls. ChgRecdItmDSgntr,
      reference_pls.ChgRecdCurrentItemProcgStatus,
      reference_pls.ChgRecdReasonForChange,
      reference_pls.ExpdCompltnDte,
      reference_pls.ChgRecdAuthznGrpText,
      reference_pls.ChgRecdNmbrChgSts,
      reference_pls.ChangeNumber,
      @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
      _ChangeRecord

}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHGRECDREFPLNGSCPBSC",
"I_PLNGSCPHDR"
],
"ASSOCIATED":
[
"E_CHGRECDREFPLNGSCPBSC",
"I_CHANGERECORDDRAFTTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/