I_ChgRecdRefTmplRoutingTP

DDL: I_CHGRECDREFTMPLROUTINGTP SQL: ICRREFTMPLRTGTP Type: view TRANSACTIONAL

Chg Record Ref Obj Template Routing

I_ChgRecdRefTmplRoutingTP is a Transactional CDS View that provides data about "Chg Record Ref Obj Template Routing" in SAP S/4HANA. It reads from 1 data source (I_ChgRecdRefTmplRoutingBsc) and exposes 25 fields with key field ChangeRecordReferenceUUID. It has 2 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_ChgRecdRefTmplRoutingBsc reference_template_routing from

Associations (2)

CardinalityTargetAliasCondition
[1..1] I_ChangeRecordDraftTP _ChangeRecordTP $projection.ChangeRecordUUID = _ChangeRecordTP.ChangeRecordUUID
[0..1] E_ChgRecdRefTmplRoutingBsc _TmplRoutingExtension $projection.ChangeRecordReferenceUUID = _TmplRoutingExtension.ChangeRecordReferenceUUID

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName ICRREFTMPLRTGTP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.preserveKey true view
VDM.viewType #TRANSACTIONAL view
ObjectModel.writeDraftPersistence PLMCRREFTER_D view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
EndUserText.label Chg Record Ref Obj Template Routing view

Fields (25)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID I_ChgRecdRefTmplRoutingBsc ChangeRecordReferenceUUID
ChangeRecordUUID I_ChgRecdRefTmplRoutingBsc ChangeRecordUUID
ChangeRecordReferenceType I_ChgRecdRefTmplRoutingBsc ChangeRecordReferenceType
ChangeRecordReferenceSubtype I_ChgRecdRefTmplRoutingBsc ChangeRecordReferenceSubtype
ChangeRecordRefObjectUUID I_ChgRecdRefTmplRoutingBsc ChangeRecordRefObjectUUID
ChangeRecordReference I_ChgRecdRefTmplRoutingBsc ChangeRecordReference
ParentChangeRecordRefUUID I_ChgRecdRefTmplRoutingBsc ParentChangeRecordRefUUID
IsMainReference I_ChgRecdRefTmplRoutingBsc IsMainReference
CreatedByUser I_ChgRecdRefTmplRoutingBsc CreatedByUser
CreationDateTime I_ChgRecdRefTmplRoutingBsc CreationDateTime
LastChangedByUser I_ChgRecdRefTmplRoutingBsc LastChangedByUser
LastChangeDateTime I_ChgRecdRefTmplRoutingBsc LastChangeDateTime
ChangeRecordItemRelevance I_ChgRecdRefTmplRoutingBsc ChangeRecordItemRelevance
ChangeRecordVirtualRefInd I_ChgRecdRefTmplRoutingBsc ChangeRecordVirtualRefInd
ChangeRecordItemProcgStatus ChangeRecordItemProcgStatus
ChgRecdReasonForChange I_ChgRecdRefTmplRoutingBsc ChgRecdReasonForChange
ExpdCompltnDte I_ChgRecdRefTmplRoutingBsc ExpdCompltnDte
ChgRecdAuthznGrpText I_ChgRecdRefTmplRoutingBsc ChgRecdAuthznGrpText
ChgRecdNmbrChgSts I_ChgRecdRefTmplRoutingBsc ChgRecdNmbrChgSts
ChangeNumber I_ChgRecdRefTmplRoutingBsc ChangeNumber
ChgRecdItmTgtSts ChgRecdItmTgtSts
ChgRecdItmDSgntr ChgRecdItmDSgntr
ChgRecdCurrentItemProcgStatus ChgRecdCurrentItemProcgStatus
Plant Routing Plant
_ChangeRecordTP _ChangeRecordTP
@AbapCatalog.sqlViewName: 'ICRREFTMPLRTGTP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.preserveKey:true
@VDM.viewType: #TRANSACTIONAL
@ObjectModel: { semanticKey: ['BillOfOperationsType','BillOfOperationsGroup','BillOfOperationsVariant','BillOfOperationsVersion'],
                writeDraftPersistence: 'PLMCRREFTER_D',
                createEnabled,
                deleteEnabled,
                updateEnabled
              }
@ObjectModel.usageType: {serviceQuality: #C,
                         dataClass: #MIXED,
                         sizeCategory: #L}
@EndUserText.label: 'Chg Record Ref Obj Template Routing'

define view I_ChgRecdRefTmplRoutingTP
  as select from           I_ChgRecdRefTmplRoutingBsc as reference_template_routing
    left outer to one join I_ProductionRoutingVersion as Routing on  reference_template_routing.ChgRecRefInternalKey1 = Routing.BillOfOperationsType
                                                                 and reference_template_routing.ChgRecRefInternalKey2 = Routing.BillOfOperationsGroup
                                                                 and reference_template_routing.ChgRecRefInternalKey3 = Routing.BillOfOperationsVariant
                                                                 and reference_template_routing.ChgRecRefInternalKey4 = Routing.BillOfOperationsVersion
  association [1..1] to I_ChangeRecordDraftTP      as _ChangeRecordTP       on $projection.ChangeRecordUUID = _ChangeRecordTP.ChangeRecordUUID
  association [0..1] to E_ChgRecdRefTmplRoutingBsc as _TmplRoutingExtension on $projection.ChangeRecordReferenceUUID = _TmplRoutingExtension.ChangeRecordReferenceUUID

{
  key   reference_template_routing.ChangeRecordReferenceUUID,
        @ObjectModel.readOnly: true
        case
           when Routing.BillOfOperationsType is null then cast(SUBSTRING( reference_template_routing.ChangeRecordReference, 1, 1) as plnty)
           else cast(Routing.BillOfOperationsType as plnty)
        end   as BillOfOperationsType,

        case
            when Routing.BillOfOperationsGroup is null then  cast(SUBSTRING( reference_template_routing.ChangeRecordReference, 2, 9) as plnnr)
            else cast(Routing.BillOfOperationsGroup as plnnr)
        end   as BillOfOperationsGroup,

        case
          when Routing.BillOfOperationsVariant is null then cast (SUBSTRING( reference_template_routing.ChangeRecordReference, 10, 2) as plnal)
          else cast(Routing.BillOfOperationsVariant as plnal)
         end  as BillOfOperationsVariant,

        case
          when Routing.BillOfOperationsVersion is null then cast (SUBSTRING( reference_template_routing.ChangeRecordReference, 12, 4) as plnversn)
          else cast(Routing.BillOfOperationsVersion as plnversn)
          end as BillOfOperationsVersion,

        reference_template_routing.ChangeRecordUUID,
        reference_template_routing.ChangeRecordReferenceType,
        reference_template_routing.ChangeRecordReferenceSubtype,
        reference_template_routing.ChangeRecordRefObjectUUID,
        reference_template_routing.ChangeRecordReference,
        reference_template_routing.ParentChangeRecordRefUUID,
        reference_template_routing.IsMainReference,
        @Semantics.user.createdBy: true
        @ObjectModel.readOnly: true
        reference_template_routing.CreatedByUser,
        reference_template_routing.CreationDateTime,
        @Semantics.user.lastChangedBy: true
        @ObjectModel.readOnly: true
        reference_template_routing.LastChangedByUser,
        reference_template_routing.LastChangeDateTime,
        reference_template_routing.ChangeRecordItemRelevance,
        reference_template_routing.ChangeRecordVirtualRefInd,
        ChangeRecordItemProcgStatus,
        reference_template_routing.ChgRecdReasonForChange,
        reference_template_routing.ExpdCompltnDte,
        reference_template_routing.ChgRecdAuthznGrpText,
        reference_template_routing.ChgRecdNmbrChgSts,
        reference_template_routing.ChangeNumber,
        ChgRecdItmTgtSts,
        ChgRecdItmDSgntr,
        ChgRecdCurrentItemProcgStatus,
        @ObjectModel.readOnly: true
        Routing.Plant,
        @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
        _ChangeRecordTP
}
where
  (
       Routing.BillOfOperationsType                           = 'F' //F: Task list type for Template Routing

    or Routing.BillOfOperationsType                           is null
  )
  and  Routing._BillOfOperations.ShopFloorRtgTemplateCategory = '' // Category = '' is category for Reference Templates

/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BILLOFOPERATIONS",
"I_CHGRECDREFTMPLROUTINGBSC",
"I_PRODUCTIONROUTINGVERSION"
],
"ASSOCIATED":
[
"E_CHGRECDREFTMPLROUTINGBSC",
"I_CHANGERECORDDRAFTTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/