C_InspMethodDocument

DDL: C_INSPMETHODDOCUMENT Type: view_entity CONSUMPTION Package: ODATA_QM_PLAN_BASIC_DATA

Inspection Method Document of DMS

C_InspMethodDocument is a Consumption CDS View that provides data about "Inspection Method Document of DMS" in SAP S/4HANA. It reads from 4 data sources (I_DocumentInfoRecordObjectLink, I_DocumentInfoRecordAttachment, I_DocumentInfoRecord, I_DocumentInfoRecordDocStatus) and exposes 19 fields with key fields DocumentInfoRecordDocType, DocumentInfoRecordDocNumber, DocumentInfoRecordDocPart, DocumentInfoRecordDocVersion, LinkedSAPObjectKey. Part of development package ODATA_QM_PLAN_BASIC_DATA.

Data Sources (4)

SourceAliasJoin Type
I_DocumentInfoRecordObjectLink _DirObjectLinks from
I_DocumentInfoRecordAttachment _DirOriginals left_outer
I_DocumentInfoRecord _DocInfoRecd left_outer
I_DocumentInfoRecordDocStatus _DocInfoRecdDocumentStatus left_outer

Annotations (6)

NameValueLevelField
VDM.viewType #CONSUMPTION view
EndUserText.label Inspection Method Document of DMS view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #C view

Fields (19)

KeyFieldSource TableSource FieldDescription
KEY DocumentInfoRecordDocType I_DocumentInfoRecordObjectLink DocumentInfoRecordDocType
KEY DocumentInfoRecordDocNumber I_DocumentInfoRecordObjectLink DocumentInfoRecordDocNumber
KEY DocumentInfoRecordDocPart I_DocumentInfoRecordObjectLink DocumentInfoRecordDocPart
KEY DocumentInfoRecordDocVersion I_DocumentInfoRecordObjectLink DocumentInfoRecordDocVersion
KEY LinkedSAPObjectKey I_DocumentInfoRecordObjectLink LinkedSAPObjectKey
KEY PhysicalDocument I_DocumentInfoRecordAttachment PhysicalDocument
LinkedSAPObject I_DocumentInfoRecordObjectLink LinkedSAPObject
FileName I_DocumentInfoRecordAttachment FileName
WorkstationApplication I_DocumentInfoRecordAttachment WorkstationApplication
FileSize I_DocumentInfoRecordAttachment FileSize
StorageCategory I_DocumentInfoRecordAttachment StorageCategory
CreatedByUser I_DocumentInfoRecord CreatedByUser
CreationDateTime I_DocumentInfoRecord CreationDateTime
LastChangedByUser I_DocumentInfoRecord LastChangedByUser
ChangedDateTime I_DocumentInfoRecord ChangedDateTime
InternalDocumentStatus I_DocumentInfoRecord InternalDocumentStatus
ExternalDocumentStatus
DocumentStatusName
DocumentURL
@VDM.viewType: #CONSUMPTION
@EndUserText.label: 'Inspection Method Document of DMS'
@AccessControl.authorizationCheck: #CHECK
@ObjectModel.usageType: {
    dataClass: #MIXED,
    sizeCategory: #L, //expected number of rows < 10.000.000

    serviceQuality: #C 
}
define view entity C_InspMethodDocument as select from I_DocumentInfoRecordObjectLink as _DirObjectLinks
    left outer join I_DocumentInfoRecordAttachment as _DirOriginals
        on  _DirObjectLinks.DocumentInfoRecordDocType           = _DirOriginals.DocumentInfoRecordDocType
        and _DirObjectLinks.DocumentInfoRecordDocNumber         = _DirOriginals.DocumentInfoRecordDocNumber
        and _DirObjectLinks.DocumentInfoRecordDocPart           = _DirOriginals.DocumentInfoRecordDocPart
        and _DirObjectLinks.DocumentInfoRecordDocVersion        = _DirOriginals.DocumentInfoRecordDocVersion
    left outer join I_DocumentInfoRecord as _DocInfoRecd
        on _DirObjectLinks.DocumentInfoRecordDocType            = _DocInfoRecd.DocumentInfoRecordDocType
        and _DirObjectLinks.DocumentInfoRecordDocNumber         = _DocInfoRecd.DocumentInfoRecordDocNumber
        and _DirObjectLinks.DocumentInfoRecordDocPart           = _DocInfoRecd.DocumentInfoRecordDocPart
        and _DirObjectLinks.DocumentInfoRecordDocVersion        = _DocInfoRecd.DocumentInfoRecordDocVersion
    left outer join I_DocumentInfoRecordDocStatus as _DocInfoRecdDocumentStatus
        on  _DocInfoRecd.InternalDocumentStatus                 = _DocInfoRecdDocumentStatus.InternalDocumentStatus
        and _DocInfoRecd.DocumentInfoRecordDocType              = _DocInfoRecdDocumentStatus.DocumentInfoRecordDocType
{
  key _DirObjectLinks.DocumentInfoRecordDocType,   
  key _DirObjectLinks.DocumentInfoRecordDocNumber,  
  key _DirObjectLinks.DocumentInfoRecordDocPart,  
  key _DirObjectLinks.DocumentInfoRecordDocVersion, 
//Fix the bug when the inspection method is not numeric and the length of method less than 8.

  key _DirObjectLinks.LinkedSAPObjectKey,  
  key _DirOriginals.PhysicalDocument,
  
// linked SAP object is needed for authority check - attention, if the where clause will be extended

// to handle different linked sap objects this field should be switch to a key field

  @Consumption.hidden: true
  _DirObjectLinks.LinkedSAPObject,
  
  _DirOriginals.FileName,
  _DirOriginals.WorkstationApplication,
  _DirOriginals.FileSize,
  _DirOriginals.StorageCategory,
  _DocInfoRecd.CreatedByUser,
  _DocInfoRecd.CreationDateTime,
  _DocInfoRecd.LastChangedByUser,
  _DocInfoRecd.ChangedDateTime,
  
// internal document status is needed for authority check

  @Consumption.hidden: true
  _DocInfoRecd.InternalDocumentStatus, 
  
  _DocInfoRecdDocumentStatus._Text[1:Language = $session.system_language].ExternalDocumentStatus,
  _DocInfoRecdDocumentStatus._Text[1:Language = $session.system_language].DocumentStatusName,
  cast ( ' ' as abap.sstring( 1333 ) ) as DocumentURL
  
}    
where _DirObjectLinks.LinkedSAPObject = 'QMTBDOC'