I_CHANGERECORDREFERENCEDOCTP

CDS View

Change Record Object Reference Document

I_CHANGERECORDREFERENCEDOCTP is a CDS View in S/4HANA. Change Record Object Reference Document. 1 CDS views read from this table.

CDS Views using this table (1)

ViewTypeJoinVDMDescription
C_ChangeRecordObjPgDoc view from CONSUMPTION Change Record Reference Object Document
@AbapCatalog.sqlViewName: 'ICHGRECREFDOCTP'
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true
@VDM.viewType: #TRANSACTIONAL
@ObjectModel: { semanticKey: ['DocumentType','DocumentInfoRecord','DocumentVersion','DocumentPart'],
                writeDraftPersistence: 'PLMCRREFDOC_D',
                createEnabled,
                deleteEnabled,
                updateEnabled
              }


@EndUserText.label: 'Change Record Object Reference Document'
@ObjectModel.usageType: {serviceQuality: #C,
                          dataClass: #MIXED,
                          sizeCategory: #XXL}

define view I_ChangeRecordReferenceDOCTP
  as select from    I_ChgRecdRefDocBsc   as reference_DOC
    left outer join I_DocumentInfoRecord as Document on  reference_DOC.ChgRecRefInternalKey1 = Document.DocumentInfoRecordDocType
                                                     and reference_DOC.ChgRecRefInternalKey2 = Document.DocumentInfoRecordDocNumber
                                                     and reference_DOC.ChgRecRefInternalKey3 = Document.DocumentInfoRecordDocVersion
                                                     and reference_DOC.ChgRecRefInternalKey4 = Document.DocumentInfoRecordDocPart
  association [1..1] to I_ChangeRecordDraftTP as _ChangeRecord on $projection.ChangeRecordUUID = _ChangeRecord.ChangeRecordUUID
  association [0..1] to E_ChgRecdRefDocBsc    as _DocExtension on $projection.ChangeRecordReferenceUUID = _DocExtension.ChangeRecordReferenceUUID

{
  key ChangeRecordReferenceUUID,
      case when Document.DocumentInfoRecordDocType is null then cast(SUBSTRING( ChangeRecordReference, 1, 3) as dokar)
      else cast(Document.DocumentInfoRecordDocType as dokar)
      end as DocumentType,

      case when Document.DocumentInfoRecordDocNumber is null then  cast(SUBSTRING( ChangeRecordReference, 4, 25) as doknr)
      else cast(Document.DocumentInfoRecordDocNumber as doknr)
      end as DocumentInfoRecord,

      case when Document.DocumentInfoRecordDocVersion is null then cast (SUBSTRING( ChangeRecordReference, 29, 2) as dokvr)
      else cast(Document.DocumentInfoRecordDocVersion as dokvr)
      end as DocumentVersion,

      case when Document.DocumentInfoRecordDocPart is null then cast(SUBSTRING( ChangeRecordReference, 31, 3) as doktl_d)
      else cast(Document.DocumentInfoRecordDocPart as doktl_d)
      end as DocumentPart,

      ChangeRecordUUID,
      ChangeRecordReferenceType,
      ChangeRecordReferenceSubtype,
      ChangeRecordReference,
      ParentChangeRecordRefUUID,
      IsMainReference,
      @Semantics.user.createdBy: true
      reference_DOC.CreatedByUser,
      reference_DOC.CreationDateTime,
      @Semantics.user.lastChangedBy: true
      reference_DOC.LastChangedByUser,
      LastChangeDateTime,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      ChangeRecordItemRelevance,
      ChangeRecordVirtualRefInd,
      reference_DOC.ChgRecdReasonForChange,
      reference_DOC.ExpdCompltnDte,
      reference_DOC.ChgRecdAuthznGrpText,
      reference_DOC.ChgRecdNmbrChgSts,
      reference_DOC.ChangeNumber,
      ChangeRecordItemProcgStatus,
      ChgRecdItmTgtSts,
      ChgRecdItmDSgntr,
      ChgRecdCurrentItemProcgStatus,

      //      Customer,


      @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
      _ChangeRecord
};
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHGRECDREFDOCBSC",
"I_DOCUMENTINFORECORD"
],
"ASSOCIATED":
[
"E_CHGRECDREFDOCBSC",
"I_CHANGERECORDDRAFTTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/