N_ChangeRecordObjPgRouting

DDL: N_CHANGERECORDOBJPGROUTING SQL: NCHGRECREFROU Type: view

Change Record Object Page Routing

N_ChangeRecordObjPgRouting is a CDS View that provides data about "Change Record Object Page Routing" in SAP S/4HANA. It reads from 2 data sources (I_ProductionRoutingVersion, I_ChgRecdRefRoutingBsc) and exposes 23 fields with key field ChangeRecordReferenceUUID. It has 5 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_ProductionRoutingVersion Routing left_outer
I_ChgRecdRefRoutingBsc routingReference from

Associations (5)

CardinalityTargetAliasCondition
[1..1] I_BillOfOperationsType _BillOfOperationsTypeVH $projection.BillOfOperationsType = _BillOfOperationsTypeVH.BillOfOperationsType
[1..1] I_BillOfOperationsVersion _BillOfOperationsGroupVH $projection.BillOfOperationsType = _BillOfOperationsGroupVH.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperationsGroupVH.BillOfOperationsGroup and $projection.BillOfOperationsVariant = _BillOfOperationsGroupVH.BillOfOperationsVariant and $projection.BillOfOperationsVersion = _BillOfOperationsGroupVH.BillOfOperationsVersion
[1..1] C_ChangeRecordItemRelRouVH _ChangeRecordItemRelVH $projection.ChangeRecordItemRelevance = _ChangeRecordItemRelVH.ChangeRecordItemRelevance and $projection.ChangeRecordType = _ChangeRecordItemRelVH.ChangeRecordType and ( $projection.ChangeRecordReferenceType = _ChangeRecordItemRelVH.ChangeRecordReferenceType or _ChangeRecordItemRelVH.ChangeRecordReferenceType = ' ' )
[1..1] C_ChangeRecordObjPg _ChangeRecordObjPg $projection.ChangeRecordUUID = _ChangeRecordObjPg.ChangeRecordUUID
[0..*] I_BOOVersionBOMAssignment _BOMAssignment routingReference.ChgRecRefInternalKey1 = _BOMAssignment.BillOfOperationsGroup and routingReference.ChgRecRefInternalKey2 = _BOMAssignment.BillOfOperationsType and routingReference.ChgRecRefInternalKey3 = _BOMAssignment.BillOfOperationsVariant and routingReference.ChgRecRefInternalKey4 = _BOMAssignment.BillOfOperationsVersion

Annotations (14)

NameValueLevelField
AbapCatalog.sqlViewName NCHGRECREFROU view
EndUserText.label Change Record Object Page Routing view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AbapCatalog.preserveKey true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.personalData.blocking #NOT_REQUIRED view
UI.headerInfo.typeName Routing view
UI.headerInfo.typeNamePlural Routings view
Search.searchable true view
VDM.auxiliaryEntity.for.entity C_ChangeRecordObjPgRouting view

Fields (23)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID ChangeRecordReferenceUUID
BillOfOperationsGroup I_ProductionRoutingVersion BillOfOperationsGroup
BillOfOperationsType I_ProductionRoutingVersion BillOfOperationsType
BillOfOperationsVariant I_ProductionRoutingVersion BillOfOperationsVariant
BillOfOperationsVersion I_ProductionRoutingVersion BillOfOperationsVersion
Material _BOMAssignment Material
ChangeRecordType _ChangeRecordObjPg ChangeRecordType
ChangeRecordUUID I_ChgRecdRefRoutingBsc ChangeRecordUUID
ChangeRecordReferenceType I_ChgRecdRefRoutingBsc ChangeRecordReferenceType
ParentChangeRecordRefUUID I_ChgRecdRefRoutingBsc ParentChangeRecordRefUUID
ChangeRecordItemRelevance I_ChgRecdRefRoutingBsc ChangeRecordItemRelevance
BOOVersionStatusText
ChangeRecordReference I_ChgRecdRefRoutingBsc ChangeRecordReference
CreatedByUser I_ChgRecdRefRoutingBsc CreatedByUser
CreationDateTime I_ChgRecdRefRoutingBsc CreationDateTime
CreationDate
LastChangedByUser I_ChgRecdRefRoutingBsc LastChangedByUser
LastChangeDateTime I_ChgRecdRefRoutingBsc LastChangeDateTime
LastChangeDate
Plant I_ProductionRoutingVersion Plant
_ChangeRecordItemRelVH _ChangeRecordItemRelVH
_BillOfOperationsGroupVH _BillOfOperationsGroupVH
_BillOfOperationsTypeVH _BillOfOperationsTypeVH
@AbapCatalog.sqlViewName: 'NCHGRECREFROU'
@EndUserText.label: 'Change Record Object Page Routing'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AbapCatalog.preserveKey:true
@ObjectModel.usageType: {serviceQuality: #C,
                         dataClass: #MIXED,
                         sizeCategory: #L}
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking: #NOT_REQUIRED

@ObjectModel: {
   semanticKey: ['BillOfOperationsType','BillOfOperationsGroup','BillOfOperationsVariant','BillOfOperationsVersion']
}

@UI.headerInfo:{
  typeName: 'Routing',
  typeNamePlural: 'Routings'}

@UI.presentationVariant.requestAtLeast: ['BillOfOperationsGroup','BillOfOperationsType','BillOfOperationsVariant','BillOfOperationsVersion','Plant','ChangeRecordType']

@Search.searchable: true

@VDM.auxiliaryEntity.usage.type: [#ENTERPRISE_SEARCH]
@VDM.auxiliaryEntity.for.entity: 'C_ChangeRecordObjPgRouting'

define view N_ChangeRecordObjPgRouting
  as select from    I_ChgRecdRefRoutingBsc     as routingReference
    left outer join I_ProductionRoutingVersion as Routing on  routingReference.ChgRecRefInternalKey1 = Routing.BillOfOperationsGroup
                                                          and routingReference.ChgRecRefInternalKey2 = Routing.BillOfOperationsType
                                                          and routingReference.ChgRecRefInternalKey3 = Routing.BillOfOperationsVariant
                                                          and routingReference.ChgRecRefInternalKey4 = Routing.BillOfOperationsVersion
  association [1..1] to I_BillOfOperationsType     as _BillOfOperationsTypeVH  on  $projection.BillOfOperationsType = _BillOfOperationsTypeVH.BillOfOperationsType

  association [1..1] to I_BillOfOperationsVersion  as _BillOfOperationsGroupVH on  $projection.BillOfOperationsType    = _BillOfOperationsGroupVH.BillOfOperationsType
                                                                               and $projection.BillOfOperationsGroup   = _BillOfOperationsGroupVH.BillOfOperationsGroup
                                                                               and $projection.BillOfOperationsVariant = _BillOfOperationsGroupVH.BillOfOperationsVariant
                                                                               and $projection.BillOfOperationsVersion = _BillOfOperationsGroupVH.BillOfOperationsVersion
  association [1..1] to C_ChangeRecordItemRelRouVH as _ChangeRecordItemRelVH   on  $projection.ChangeRecordItemRelevance              = _ChangeRecordItemRelVH.ChangeRecordItemRelevance
                                                                               and $projection.ChangeRecordType                       = _ChangeRecordItemRelVH.ChangeRecordType
                                                                               and (
                                                                                  $projection.ChangeRecordReferenceType               = _ChangeRecordItemRelVH.ChangeRecordReferenceType
                                                                                  or _ChangeRecordItemRelVH.ChangeRecordReferenceType = ' '
                                                                                )
  association [1..1] to C_ChangeRecordObjPg        as _ChangeRecordObjPg       on  $projection.ChangeRecordUUID = _ChangeRecordObjPg.ChangeRecordUUID

  association [0..*] to I_BOOVersionBOMAssignment  as _BOMAssignment on  routingReference.ChgRecRefInternalKey1 = _BOMAssignment.BillOfOperationsGroup
                                                                     and routingReference.ChgRecRefInternalKey2  = _BOMAssignment.BillOfOperationsType
                                                                     and routingReference.ChgRecRefInternalKey3  = _BOMAssignment.BillOfOperationsVariant
                                                                     and routingReference.ChgRecRefInternalKey4  = _BOMAssignment.BillOfOperationsVersion

{

          @UI.hidden: true
          @ObjectModel.readOnly: true
  key     ChangeRecordReferenceUUID,
          @UI.lineItem:[{
                position:10,
                importance:#HIGH }
              ]
          @UI.identification: {position: 10, importance: #HIGH}
          @Consumption.valueHelpDefinition: [
          { entity:  { name:    'I_BillOfOperationsVersStdVH',
                       element: 'BillOfOperationsGroup' },
            additionalBinding:[{ localElement: 'BillOfOperationsType',
                                element: 'BillOfOperationsType' },
                               { localElement: 'BillOfOperationsVersion',
                                element: 'BillOfOperationsVersion' },
                               { localElement: 'BillOfOperationsVariant',
                                element: 'BillOfOperationsVariant' }]
          }]
          Routing.BillOfOperationsGroup as BillOfOperationsGroup,
          @UI.lineItem:[{
                position:15,
                importance:#HIGH }
              ]
          @UI.identification: {position: 20, importance: #HIGH}
          @ObjectModel.foreignKey.association: '_BillOfOperationsTypeVH'
          Routing.BillOfOperationsType,
          @UI.lineItem:[{
               position:25,
               importance:#HIGH }
             ]
          @UI.identification: {position: 30, importance: #HIGH }
          Routing.BillOfOperationsVariant,
          @UI.lineItem:[{
              position:30,
              importance:#HIGH }
            ]
          @UI.identification: {position: 40, importance: #HIGH }
          Routing.BillOfOperationsVersion,

          @UI.hidden:true
          _BOMAssignment.Material  as Material,
//          @ObjectModel:{ readOnly:true, virtualElement: true, virtualElementCalculatedBy: 'ABAP:CL_CR_ROUTING_MATERIAL'}

//          cast ('' as matnr)                                                                                           as Material,

//

//          @UI.hidden:true

//          @ObjectModel:{ readOnly:true, virtualElement: true, virtualElementCalculatedBy: 'ABAP:CL_CR_ROUTING_MATERIAL'}

//          cast ('' as maktx)                                                                                           as MaterialDescription,

//

//          @UI.hidden:true

//          @ObjectModel:{ readOnly:true, virtualElement: true, virtualElementCalculatedBy: 'ABAP:CL_CR_ROUTING_MATERIAL'}

//          cast (0 as abap.int1 )                                                                                       as NumberOfMaterials,


          @UI.hidden: true
          @ObjectModel.readOnly: true
          @ObjectModel.foreignKey.association: '_ChangeRecordItemRelVH'
          _ChangeRecordObjPg.ChangeRecordType                                                                          as ChangeRecordType,


          @UI.hidden: true
          routingReference.ChangeRecordUUID,
          @UI.hidden: true
          routingReference.ChangeRecordReferenceType,
          @UI.hidden: true
          routingReference.ParentChangeRecordRefUUID,
          @UI.lineItem:[{
                      position:35,
                      importance:#HIGH }
                    ]
          @UI.identification: {position:50, importance: #HIGH}
          @ObjectModel.foreignKey.association: '_ChangeRecordItemRelVH'
          @Consumption.valueHelp: '_ChangeRecordItemRelVH'
          @ObjectModel.mandatory: true
          routingReference.ChangeRecordItemRelevance,

          --Routing Status(Processing Status)
          @ObjectModel.readOnly: true
          @UI.lineItem:[{
                      position:40,
                      importance:#HIGH }
                      ]
          _BillOfOperationsGroupVH._BOOVersionStatus._Text[1: Language=$session.system_language].BOOVersionStatusText,

          @UI.hidden: true
          routingReference.ChangeRecordReference,

          @Semantics.user.createdBy: true
          routingReference.CreatedByUser,
          @UI.hidden: true
          routingReference.CreationDateTime,
          @ObjectModel.virtualElement : true
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CR_CREATIONDATE_CONVERT'
          @ObjectModel.readOnly: true
          cast( '00000000' as /plmb/created_on )                                                                       as CreationDate,
          @Semantics.user.lastChangedBy: true
          routingReference.LastChangedByUser,

          @UI.hidden: true
          routingReference.LastChangeDateTime,
          @ObjectModel.virtualElement : true
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CR_CHANGEDATE_CONVERT'
          @ObjectModel.readOnly: true
          cast( '00000000' as /plmb/changed_on )                                                                       as LastChangeDate,

          @UI.hidden: true
          Routing.Plant,
          _ChangeRecordItemRelVH,
          _BillOfOperationsGroupVH,
          _BillOfOperationsTypeVH
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"C_CHANGERECORDOBJPG",
"I_BILLOFOPERATIONSVERSION",
"I_BOOVERSIONBOMASSIGNMENT",
"I_BOOVERSIONSTATUS",
"I_BOOVERSIONSTATUSTEXT",
"I_CHGRECDREFROUTINGBSC",
"I_PRODUCTIONROUTINGVERSION"
],
"ASSOCIATED":
[
"C_CHANGERECORDITEMRELROUVH",
"C_CHANGERECORDOBJPG",
"I_BILLOFOPERATIONSTYPE",
"I_BILLOFOPERATIONSVERSION",
"I_BOOVERSIONBOMASSIGNMENT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/