I_ChangeRecordDraftTP

DDL: I_CHANGERECORDDRAFTTP SQL: ICHGRECD_DRAFTTP Type: view TRANSACTIONAL

Change Record (Draft 2.0)

I_ChangeRecordDraftTP is a Transactional CDS View that provides data about "Change Record (Draft 2.0)" in SAP S/4HANA. It reads from 1 data source (I_ChangeRecordBsc) and exposes 79 fields with key field ChangeRecordUUID. It has 47 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_ChangeRecordBsc ChangeRecordBsc from

Associations (47)

CardinalityTargetAliasCondition
[1..1] I_ChangeRecordType _ChangeRecordCategory _ChangeRecordCategory.ChangeRecordType = $projection.ChangeRecordType
[0..*] I_ChangeRecordReferenceMatTP _ChangeRecordReferenceMatTP _ChangeRecordReferenceMatTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordReferenceBOMTP _ChangeRecordReferenceBOMTP _ChangeRecordReferenceBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordRefBOMItmTP _ChangeRecordRefBOMItmTP _ChangeRecordRefBOMItmTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefPlngScpTP _ChgRecdRefPlngScpTP _ChgRecdRefPlngScpTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefEngBOMTP _ChgRecdRefEngBOMTP _ChgRecdRefEngBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefMfgBOMTP _ChgRecdRefMfgBOMTP _ChgRecdRefMfgBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefProdnOrdTP _ChgRecdRefProdnOrdTP _ChgRecdRefProdnOrdTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefPurOrdTP _ChgRecdRefPurOrdTP _ChgRecdRefPurOrdTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefRoutingTP _ChgRecdRefRoutingTP _ChgRecdRefRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefOrdSpcfcRoutingTP _ChgRecdRefOrdSpcfcRoutingTP _ChgRecdRefOrdSpcfcRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordReferenceDOCTP _ChangeRecordReferenceDocTP _ChangeRecordReferenceDocTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefProdStrucVarTP _ChgRecdRefProdStrucVarTP _ChgRecdRefProdStrucVarTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordReferenceSpecTP _ChangeRecordReferenceSpecTP _ChangeRecordReferenceSpecTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefEngSnpshtTP _ChgRecdRefEngSnpshtTP _ChgRecdRefEngSnpshtTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..1] I_ChangeRecordAccCtrlContext _LogAccMContext _LogAccMContext.LogAccMContextInternalId = $projection.LogAccMSecureIDOwnerID
[0..*] I_ChgRecdRefMasterRecipeTP _ChgRecdRefMasterRecipeTP _ChgRecdRefMasterRecipeTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefInspectionPlanTP _ChgRecdRefInspectionPlanTP _ChgRecdRefInspectionPlanTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefRecipeTP _ChgRecdRefRecipeTP _ChgRecdRefRecipeTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefLabelTP _ChgRecdRefLabelTP _ChgRecdRefLabelTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefProdnRoutingTP _ChgRecdRefProdnRoutingTP _ChgRecdRefProdnRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefPlngRoutingTP _ChgRecdRefPlngRoutingTP _ChgRecdRefPlngRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefTmplRoutingTP _ChgRecdRefTmplRoutingTP _ChgRecdRefTmplRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..1] E_ChangeRecordBsc _HeaderExtension $projection.ChangeRecordUUID = _HeaderExtension.ChangeRecordUUID
[0..1] I_UserContactCard _CreatedByUserContactCard $projection.CreatedByUser = _CreatedByUserContactCard.ContactCardID
[0..1] I_UserContactCard _LastChangedByUserContactCard $projection.LastChangedByUser = _LastChangedByUserContactCard.ContactCardID
[0..*] I_ChgRecdCmntTopTP _ChgRecdCmntTopTP _ChgRecdCmntTopTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdObjRefCmntTopTP _ChgRecdObjRefCmntTopTP _ChgRecdObjRefCmntTopTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdChildTP _ChgRecdChildTP _ChgRecdChildTP.ParentChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordRefOrderBOMTP _ChangeRecordRefOrderBOMTP _ChangeRecordRefOrderBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordRefCharcTP _ChangeRecordRefCharcTP _ChangeRecordRefCharcTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordRefClassTP _ChangeRecordRefClassTP _ChangeRecordRefClassTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefMaintTskListTP _ChgRecdRefMaintTskListTP _ChgRecdRefMaintTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordRefStdBOMTP _ChangeRecordRefStdBOMTP _ChangeRecordRefStdBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefEquipTskListTP _ChgRecdRefEquipTskListTP _ChgRecdRefEquipTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChangeRecordRefWBSElmntBOMTP _ChangeRecordRefWBSElmntBOMTP _ChangeRecordRefWBSElmntBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefEquipBOMTP _ChgRecdRefEquipBOMTP _ChgRecdRefEquipBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefRateRtgTskListTP _ChgRecdRefRateRtgTskListTP _ChgRecdRefRateRtgTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRateRtgTskListTP _ChgRecdRateRtgTskListTP _ChgRecdRateRtgTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefCutPlngPrflTP _ChgRecdRefCutPlngPrflTP _ChgRecdRefCutPlngPrflTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefOpSetTskListTP _ChgRecdRefOpSetTskListTP _ChgRecdRefOpSetTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefFuncLocBOMTP _ChgRecdRefFuncLocBOMTP _ChgRecdRefFuncLocBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdFuncLocTskListTP _ChgRecdFuncLocTskListTP _ChgRecdFuncLocTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefVarBOMTP _ChgRecdRefVarBOMTP _ChgRecdRefVarBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefMfgSnpshtTP _ChgRecdRefMfgSnpshtTP _ChgRecdRefMfgSnpshtTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefETOVersBOMTP _ChgRecdRefETOVersBOMTP _ChgRecdRefETOVersBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
[0..*] I_ChgRecdRefDefectTP _ChgRecdRefDefectTP _ChgRecdRefDefectTP.ChangeRecordUUID = $projection.ChangeRecordUUID

Annotations (19)

NameValueLevelField
AbapCatalog.sqlViewName ICHGRECD_DRAFTTP view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
EndUserText.label Change Record (Draft 2.0) view
Search.searchable true view
VDM.viewType #TRANSACTIONAL view
ObjectModel.transactionalProcessingEnabled true view
ObjectModel.compositionRoot true view
ObjectModel.draftEnabled true view
ObjectModel.writeDraftPersistence PLMCHGRECD_D view
ObjectModel.entityChangeStateId LastChangeDateTime view
ObjectModel.createEnabled EXTERNAL_CALCULATION view
ObjectModel.deleteEnabled EXTERNAL_CALCULATION view
ObjectModel.updateEnabled EXTERNAL_CALCULATION view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.preserveKey true view

Fields (79)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordUUID I_ChangeRecordBsc ChangeRecordUUID
ChangeRecord ChangeRecord
ChangeRecordType ChangeRecordType
ParentChangeRecordUUID ParentChangeRecordUUID
RootChangeRecordUUID RootChangeRecordUUID
ChangeRecordPriority ChangeRecordPriority
ChangeRecordStatus ChangeRecordStatus
AccessControlContext
LogAccMSecureIDOwnerID I_ChangeRecordBsc LogAccMSecureIDOwnerID
ChangeNumber ChangeNumber
CreatedByUser CreatedByUser
_CreatedByUserContactCard _CreatedByUserContactCard
CreationDateTime CreationDateTime
LastChangedByUser LastChangedByUser
_LastChangedByUserContactCard _LastChangedByUserContactCard
LastChangeDateTime LastChangeDateTime
Partner Partner
ChangeRecordLifecycleStatus ChangeRecordLifecycleStatus
ChgRecdDigitalSignatureStatus ChgRecdDigitalSignatureStatus
ChgRecordDescriptionText ChgRecordDescriptionText
ChgRecdAuthGroup ChgRecdAuthGroup
ChgRecdPrflIdn ChgRecdPrflIdn
ChgRecdReasonForChange ChgRecdReasonForChange
ChgRecdChangeStatus ChgRecdChangeStatus
ChgRecdExpectedCompletionDate ChgRecdExpectedCompletionDate
ChangeRecordDetailDescription ChangeRecordDetailDescription
ChgRecdHdrExtnUUID ChgRecdHdrExtnUUID
ChgRecdInitiatedStatusAction ChgRecdInitiatedStatusAction
ChgRecdEngEffectiveDate ChgRecdEngEffectiveDate
ChgRecdMfgEffectiveDate ChgRecdMfgEffectiveDate
ChangeRecordItemIsNotEditable ChangeRecordItemIsNotEditable
ChangeRecordItmIsAddDelEnabled ChangeRecordItmIsAddDelEnabled
ChangeRecordItemEditMode ChangeRecordItemEditMode
_LogAccMObjectTypeActive I_ChangeRecordBsc _LogAccMObjectTypeActive
_LogAccMObjectUserAuthzn I_ChangeRecordBsc _LogAccMObjectUserAuthzn
_LogAccMObjSecureIDAssgmt I_ChangeRecordBsc _LogAccMObjSecureIDAssgmt
_ChangeRecordReferenceMatTP _ChangeRecordReferenceMatTP
_ChangeRecordReferenceBOMTP _ChangeRecordReferenceBOMTP
_ChangeRecordRefBOMItmTP _ChangeRecordRefBOMItmTP
_ChgRecdRefPlngScpTP _ChgRecdRefPlngScpTP
_ChgRecdRefEngBOMTP _ChgRecdRefEngBOMTP
_ChgRecdRefMfgBOMTP _ChgRecdRefMfgBOMTP
_ChgRecdRefProdnOrdTP _ChgRecdRefProdnOrdTP
_ChgRecdRefPurOrdTP _ChgRecdRefPurOrdTP
_ChgRecdRefRoutingTP _ChgRecdRefRoutingTP
_ChgRecdRefProdnRoutingTP _ChgRecdRefProdnRoutingTP
_ChgRecdRefOrdSpcfcRoutingTP _ChgRecdRefOrdSpcfcRoutingTP
_ChangeRecordReferenceDocTP _ChangeRecordReferenceDocTP
_ChgRecdRefProdStrucVarTP _ChgRecdRefProdStrucVarTP
_ChangeRecordReferenceSpecTP _ChangeRecordReferenceSpecTP
_ChgRecdRefEngSnpshtTP _ChgRecdRefEngSnpshtTP
_ChgRecdRefMasterRecipeTP _ChgRecdRefMasterRecipeTP
_ChgRecdRefRecipeTP _ChgRecdRefRecipeTP
_ChgRecdRefLabelTP _ChgRecdRefLabelTP
_ChgRecdRefInspectionPlanTP _ChgRecdRefInspectionPlanTP
_ChgRecdRefPlngRoutingTP _ChgRecdRefPlngRoutingTP
_ChgRecdRefTmplRoutingTP _ChgRecdRefTmplRoutingTP
_ChgRecdCmntTopTP _ChgRecdCmntTopTP
_ChgRecdObjRefCmntTopTP _ChgRecdObjRefCmntTopTP
_ChgRecdChildTP _ChgRecdChildTP
_ChangeRecordRefOrderBOMTP _ChangeRecordRefOrderBOMTP
_ChangeRecordRefCharcTP _ChangeRecordRefCharcTP
_ChangeRecordRefClassTP _ChangeRecordRefClassTP
_ChgRecdRefMaintTskListTP _ChgRecdRefMaintTskListTP
_ChangeRecordRefStdBOMTP _ChangeRecordRefStdBOMTP
_ChgRecdRefEquipTskListTP _ChgRecdRefEquipTskListTP
_ChangeRecordRefWBSElmntBOMTP _ChangeRecordRefWBSElmntBOMTP
_ChgRecdRefEquipBOMTP _ChgRecdRefEquipBOMTP
_ChgRecdRefFuncLocBOMTP _ChgRecdRefFuncLocBOMTP
_ChgRecdRefRateRtgTskListTP _ChgRecdRefRateRtgTskListTP
_ChgRecdRateRtgTskListTP _ChgRecdRateRtgTskListTP
_ChgRecdRefCutPlngPrflTP _ChgRecdRefCutPlngPrflTP
_ChgRecdRefOpSetTskListTP _ChgRecdRefOpSetTskListTP
_ChgRecdFuncLocTskListTP _ChgRecdFuncLocTskListTP
_ChgRecdRefVarBOMTP _ChgRecdRefVarBOMTP
_ChgRecdRefMfgSnpshtTP _ChgRecdRefMfgSnpshtTP
_ChgRecdRefETOVersBOMTP _ChgRecdRefETOVersBOMTP
_ChgRecdRefDefectTP _ChgRecdRefDefectTP
_ChangeRecordCategory _ChangeRecordCategory
@AbapCatalog.sqlViewName: 'ICHGRECD_DRAFTTP'
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
@EndUserText.label: 'Change Record (Draft 2.0)'
@Search.searchable: true

@VDM.viewType: #TRANSACTIONAL

@ObjectModel: { semanticKey: ['ChangeRecord'],
                transactionalProcessingEnabled: true,
                compositionRoot: true,
                draftEnabled: true,
                writeDraftPersistence: 'PLMCHGRECD_D',
                entityChangeStateId: 'LastChangeDateTime',
                createEnabled: 'EXTERNAL_CALCULATION',
                deleteEnabled: 'EXTERNAL_CALCULATION',
                updateEnabled: 'EXTERNAL_CALCULATION'
              }

@ObjectModel.usageType: {serviceQuality: #C,
                          dataClass: #MIXED,
                          sizeCategory: #L}
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.preserveKey:true //add

 
define view I_ChangeRecordDraftTP 
  as select from I_ChangeRecordBsc as ChangeRecordBsc
  association [1..1] to I_ChangeRecordType             as _ChangeRecordCategory         on _ChangeRecordCategory.ChangeRecordType = $projection.ChangeRecordType
  association [0..*] to I_ChangeRecordReferenceMatTP   as _ChangeRecordReferenceMatTP   on _ChangeRecordReferenceMatTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChangeRecordReferenceBOMTP   as _ChangeRecordReferenceBOMTP   on _ChangeRecordReferenceBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  //association [0..*] to I_ChangeRecordObjectLinkTP    as _ChangeRecordObjectLinkTP    on _ChangeRecordObjectLinkTP.ChangeRecordUUID = $projection.ChangeRecordUUID

  association [0..*] to I_ChangeRecordRefBOMItmTP      as _ChangeRecordRefBOMItmTP      on _ChangeRecordRefBOMItmTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefPlngScpTP          as _ChgRecdRefPlngScpTP          on _ChgRecdRefPlngScpTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefEngBOMTP           as _ChgRecdRefEngBOMTP           on _ChgRecdRefEngBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefMfgBOMTP           as _ChgRecdRefMfgBOMTP           on _ChgRecdRefMfgBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefProdnOrdTP         as _ChgRecdRefProdnOrdTP         on _ChgRecdRefProdnOrdTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefPurOrdTP           as _ChgRecdRefPurOrdTP           on _ChgRecdRefPurOrdTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefRoutingTP          as _ChgRecdRefRoutingTP          on _ChgRecdRefRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefOrdSpcfcRoutingTP  as _ChgRecdRefOrdSpcfcRoutingTP  on _ChgRecdRefOrdSpcfcRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChangeRecordReferenceDOCTP   as _ChangeRecordReferenceDocTP   on _ChangeRecordReferenceDocTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefProdStrucVarTP     as _ChgRecdRefProdStrucVarTP     on _ChgRecdRefProdStrucVarTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChangeRecordReferenceSpecTP  as _ChangeRecordReferenceSpecTP  on _ChangeRecordReferenceSpecTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefEngSnpshtTP        as _ChgRecdRefEngSnpshtTP        on _ChgRecdRefEngSnpshtTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..1] to I_ChangeRecordAccCtrlContext   as _LogAccMContext               on _LogAccMContext.LogAccMContextInternalId = $projection.LogAccMSecureIDOwnerID
  association [0..*] to I_ChgRecdRefMasterRecipeTP     as _ChgRecdRefMasterRecipeTP     on _ChgRecdRefMasterRecipeTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefInspectionPlanTP   as _ChgRecdRefInspectionPlanTP   on _ChgRecdRefInspectionPlanTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefRecipeTP           as _ChgRecdRefRecipeTP           on _ChgRecdRefRecipeTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefLabelTP            as _ChgRecdRefLabelTP            on _ChgRecdRefLabelTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefProdnRoutingTP     as _ChgRecdRefProdnRoutingTP     on _ChgRecdRefProdnRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefPlngRoutingTP      as _ChgRecdRefPlngRoutingTP      on _ChgRecdRefPlngRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefTmplRoutingTP      as _ChgRecdRefTmplRoutingTP      on _ChgRecdRefTmplRoutingTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..1] to E_ChangeRecordBsc              as _HeaderExtension              on $projection.ChangeRecordUUID = _HeaderExtension.ChangeRecordUUID
  association [0..1] to I_UserContactCard              as _CreatedByUserContactCard     on $projection.CreatedByUser = _CreatedByUserContactCard.ContactCardID
  association [0..1] to I_UserContactCard              as _LastChangedByUserContactCard on $projection.LastChangedByUser = _LastChangedByUserContactCard.ContactCardID
  association [0..*] to I_ChgRecdCmntTopTP             as _ChgRecdCmntTopTP             on _ChgRecdCmntTopTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdObjRefCmntTopTP       as _ChgRecdObjRefCmntTopTP       on _ChgRecdObjRefCmntTopTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdChildTP               as _ChgRecdChildTP               on _ChgRecdChildTP.ParentChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChangeRecordRefOrderBOMTP    as _ChangeRecordRefOrderBOMTP    on _ChangeRecordRefOrderBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChangeRecordRefCharcTP       as _ChangeRecordRefCharcTP       on _ChangeRecordRefCharcTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChangeRecordRefClassTP       as _ChangeRecordRefClassTP       on _ChangeRecordRefClassTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefMaintTskListTP     as _ChgRecdRefMaintTskListTP     on _ChgRecdRefMaintTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChangeRecordRefStdBOMTP      as _ChangeRecordRefStdBOMTP      on _ChangeRecordRefStdBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefEquipTskListTP     as _ChgRecdRefEquipTskListTP     on _ChgRecdRefEquipTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChangeRecordRefWBSElmntBOMTP as _ChangeRecordRefWBSElmntBOMTP on _ChangeRecordRefWBSElmntBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefEquipBOMTP         as _ChgRecdRefEquipBOMTP         on _ChgRecdRefEquipBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefRateRtgTskListTP   as _ChgRecdRefRateRtgTskListTP   on _ChgRecdRefRateRtgTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRateRtgTskListTP      as _ChgRecdRateRtgTskListTP      on _ChgRecdRateRtgTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefCutPlngPrflTP      as _ChgRecdRefCutPlngPrflTP      on _ChgRecdRefCutPlngPrflTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefOpSetTskListTP     as _ChgRecdRefOpSetTskListTP     on _ChgRecdRefOpSetTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefFuncLocBOMTP       as _ChgRecdRefFuncLocBOMTP       on _ChgRecdRefFuncLocBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdFuncLocTskListTP      as _ChgRecdFuncLocTskListTP      on _ChgRecdFuncLocTskListTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefVarBOMTP           as _ChgRecdRefVarBOMTP           on _ChgRecdRefVarBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefMfgSnpshtTP        as _ChgRecdRefMfgSnpshtTP        on _ChgRecdRefMfgSnpshtTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefETOVersBOMTP       as _ChgRecdRefETOVersBOMTP       on _ChgRecdRefETOVersBOMTP.ChangeRecordUUID = $projection.ChangeRecordUUID
  association [0..*] to I_ChgRecdRefDefectTP           as _ChgRecdRefDefectTP           on _ChgRecdRefDefectTP.ChangeRecordUUID = $projection.ChangeRecordUUID
{
  key ChangeRecordBsc.ChangeRecordUUID,
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.9
      @Search.ranking: #HIGH
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      ChangeRecord,
      @ObjectModel.readOnly:'EXTERNAL_CALCULATION'
      ChangeRecordType,
      ParentChangeRecordUUID,
      RootChangeRecordUUID,
      ChangeRecordPriority,
      ChangeRecordStatus,
      //for ACM

      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      //AccessControlContext,

      cast( _LogAccMContext.LogAccMContext as /plmb/auth_owning_acc_id_ext preserving type) as AccessControlContext,
      //_LogAccMContext.LogAccMContext as AccessControlContext,

      @UI.hidden: true
      ChangeRecordBsc.LogAccMSecureIDOwnerID                                                as LogAccMSecureIDOwnerID,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      ChangeNumber,
      @Semantics.user.createdBy: true
      @ObjectModel.readOnly: true
      @ObjectModel.foreignKey.association: '_CreatedByUserContactCard'
      CreatedByUser,
      _CreatedByUserContactCard,
      @ObjectModel.readOnly: true
      CreationDateTime,
      @Semantics.user.lastChangedBy: true
      @ObjectModel.readOnly: true
      @ObjectModel.foreignKey.association: '_LastChangedByUserContactCard'
      LastChangedByUser,
      _LastChangedByUserContactCard,
      @ObjectModel.readOnly: true
      LastChangeDateTime,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      Partner,
      ChangeRecordLifecycleStatus,
      @ObjectModel.readOnly: true
      ChgRecdDigitalSignatureStatus,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      ChgRecordDescriptionText,
      ChgRecdAuthGroup,
      //ChgRecdStatusProfile,

      ChgRecdPrflIdn,
      ChgRecdReasonForChange,
      ChgRecdChangeStatus,
      @ObjectModel.readOnly: true
      ChgRecdExpectedCompletionDate,
      ChangeRecordDetailDescription,
      ChgRecdHdrExtnUUID,
      @ObjectModel.readOnly:true
      ChgRecdInitiatedStatusAction,
      @ObjectModel.enabled: 'EXTERNAL_CALCULATION'
      ChgRecdEngEffectiveDate,
      @ObjectModel.enabled: 'EXTERNAL_CALCULATION'
      ChgRecdMfgEffectiveDate,
      ChangeRecordItemIsNotEditable,
      ChangeRecordItmIsAddDelEnabled,
      ChangeRecordItemEditMode,

      //@feature: '/PLMI/CR_FM_ACM'

      ChangeRecordBsc._LogAccMObjectTypeActive,
      //@feature: '/PLMI/CR_FM_ACM'

      ChangeRecordBsc._LogAccMObjectUserAuthzn,
      //@feature: '/PLMI/CR_FM_ACM'

      ChangeRecordBsc._LogAccMObjSecureIDAssgmt,
      //

      //      @ObjectModel.readOnly: true

      //      _ChangeRecordCategory.ChangeRecordCategory,

      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChangeRecordReferenceMatTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChangeRecordReferenceBOMTP,

      // @ObjectModel.association.type:  #TO_COMPOSITION_CHILD

      //_ChangeRecordObjectLinkTP,


      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChangeRecordRefBOMItmTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefPlngScpTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefEngBOMTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefMfgBOMTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefProdnOrdTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefPurOrdTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefRoutingTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefProdnRoutingTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefOrdSpcfcRoutingTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChangeRecordReferenceDocTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefProdStrucVarTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChangeRecordReferenceSpecTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefEngSnpshtTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefMasterRecipeTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefRecipeTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefLabelTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefInspectionPlanTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefPlngRoutingTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdRefTmplRoutingTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdCmntTopTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdObjRefCmntTopTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChgRecdChildTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChangeRecordRefOrderBOMTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChangeRecordRefCharcTP,
      @ObjectModel.association.type:  #TO_COMPOSITION_CHILD
      _ChangeRecordRefClassTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefMaintTskListTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChangeRecordRefStdBOMTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefEquipTskListTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChangeRecordRefWBSElmntBOMTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefEquipBOMTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefFuncLocBOMTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefRateRtgTskListTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRateRtgTskListTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefCutPlngPrflTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefOpSetTskListTP,
      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _ChgRecdFuncLocTskListTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefVarBOMTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefMfgSnpshtTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD      
      _ChgRecdRefETOVersBOMTP,
      @ObjectModel.association.type: #TO_COMPOSITION_CHILD
      _ChgRecdRefDefectTP,
      _ChangeRecordCategory
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHANGERECORDACCCTRLCONTEXT",
"I_CHANGERECORDBSC"
],
"ASSOCIATED":
[
"E_CHANGERECORDBSC",
"I_CHANGERECORDACCCTRLCONTEXT",
"I_CHANGERECORDREFBOMITMTP",
"I_CHANGERECORDREFCHARCTP",
"I_CHANGERECORDREFCLASSTP",
"I_CHANGERECORDREFERENCEBOMTP",
"I_CHANGERECORDREFERENCEDOCTP",
"I_CHANGERECORDREFERENCEMATTP",
"I_CHANGERECORDREFERENCESPECTP",
"I_CHANGERECORDREFORDERBOMTP",
"I_CHANGERECORDREFSTDBOMTP",
"I_CHANGERECORDREFWBSELMNTBOMTP",
"I_CHANGERECORDTYPE",
"I_CHGRECDCHILDTP",
"I_CHGRECDCMNTTOPTP",
"I_CHGRECDFUNCLOCTSKLISTTP",
"I_CHGRECDOBJREFCMNTTOPTP",
"I_CHGRECDRATERTGTSKLISTTP",
"I_CHGRECDREFCUTPLNGPRFLTP",
"I_CHGRECDREFDEFECTTP",
"I_CHGRECDREFENGBOMTP",
"I_CHGRECDREFENGSNPSHTTP",
"I_CHGRECDREFEQUIPBOMTP",
"I_CHGRECDREFEQUIPTSKLISTTP",
"I_CHGRECDREFETOVERSBOMTP",
"I_CHGRECDREFFUNCLOCBOMTP",
"I_CHGRECDREFINSPECTIONPLANTP",
"I_CHGRECDREFLABELTP",
"I_CHGRECDREFMAINTTSKLISTTP",
"I_CHGRECDREFMASTERRECIPETP",
"I_CHGRECDREFMFGBOMTP",
"I_CHGRECDREFMFGSNPSHTTP",
"I_CHGRECDREFOPSETTSKLISTTP",
"I_CHGRECDREFORDSPCFCROUTINGTP",
"I_CHGRECDREFPLNGROUTINGTP",
"I_CHGRECDREFPLNGSCPTP",
"I_CHGRECDREFPRODNORDTP",
"I_CHGRECDREFPRODNROUTINGTP",
"I_CHGRECDREFPRODSTRUCVARTP",
"I_CHGRECDREFPURORDTP",
"I_CHGRECDREFRATERTGTSKLISTTP",
"I_CHGRECDREFRECIPETP",
"I_CHGRECDREFROUTINGTP",
"I_CHGRECDREFTMPLROUTINGTP",
"I_CHGRECDREFVARBOMTP",
"I_LOGACCMOBJECTTYPEACTIVE",
"I_LOGACCMOBJECTUSERAUTHZN",
"I_LOGACCMOBJSECUREIDASSGMT",
"I_USERCONTACTCARD"
],
"BASE":
[
"I_CHANGERECORDBSC"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/