I_CHANGERECORDDRAFTTP

CDS View

Change Record (Draft 2.0)

I_CHANGERECORDDRAFTTP is a CDS View in S/4HANA. Change Record (Draft 2.0). It contains 15 fields. 3 CDS views read from this table.

CDS Views using this table (3)

ViewTypeJoinVDMDescription
C_ChangeRecordObjPg view from CONSUMPTION Administrative Data
ESH_N_CHANGE_RECORD_SH view from
I_ChgRecordMergeSplitStatusTP view inner TRANSACTIONAL CR Merge and Split statuses - TP

Fields (15)

KeyField CDS FieldsUsed in Views
KEY ChangeRecordUUID ChangeRecordUUID 1
AccessControlContext AccessControlContext 1
ChangeNumber ChangeNumber 1
ChangeRecord ChangeRecord 1
ChangeRecordLifecycleStatus ChangeRecordLifecycleStatus 1
ChangeRecordStatus ChangeRecordStatus 2
ChangeRecordType ChangeRecordType 2
ChgRecdExpectedCompletionDate ChgRecdExpectedCompletionDate 1
ChgRecordDescriptionText ChgRecordDescriptionText 2
CreatedByUser CreatedByUser 1
CreationDateTime CreationDateTime 2
LastChangedByUser LastChangedByUser 1
ParentChangeRecordUUID ParentChangeRecordUUID 1
Partner Partner 1
RootChangeRecordUUID RootChangeRecordUUID 1
@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":""
}
}*/