I_QualityInProcurement

DDL: I_QUALITYINPROCUREMENT SQL: IQLTYINPROCMT Type: view BASIC Package: VDM_QM_PLANNING

Quality Info Record in Procurement

I_QualityInProcurement is a Basic CDS View (Dimension) that provides data about "Quality Info Record in Procurement" in SAP S/4HANA. It reads from 1 data source (qinf) and exposes 62 fields with key fields Material, QltyInProcmtIntID. It has 21 associations to related views. Part of development package VDM_QM_PLANNING.

Data Sources (1)

SourceAliasJoin Type
qinf qinf from

Associations (21)

CardinalityTargetAliasCondition
[1..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[1..1] I_Material _Material $projection.Material = _Material.Material
[1..1] I_Productplantqtmanagement _ProductPlantQtManagement $projection.Material = _ProductPlantQtManagement.Product and $projection.Plant = _ProductPlantQtManagement.Plant
[0..1] I_Supplier _Supplier $projection.Supplier = _Supplier.Supplier
[0..1] I_UnitOfMeasure _UnitOfMeasure $projection.BaseUnit = _UnitOfMeasure.UnitOfMeasure
[0..1] I_StatusProfile _StatusProfile $projection.StatusProfile = _StatusProfile.StatusProfile
[0..1] I_User _CreatedByUser $projection.CreatedByUser = _CreatedByUser.UserID
[0..1] I_User _LastChangedByUser $projection.LastChangedByUser = _LastChangedByUser.UserID
[0..1] I_Language _Language $projection.Language = _Language.Language
[0..1] I_ProcurementBlock _ProcurementBlock $projection.ProcurementBlock = _ProcurementBlock.ProcurementBlock
[0..1] I_ProcurementBlock _SupplierProcurementBlock $projection.supplierprocurementblock = _SupplierProcurementBlock.ProcurementBlock
[0..1] I_QualityManagementSystem _QualityManagementSystem $projection.QualityManagementSystem = _QualityManagementSystem.QualityManagementSystem
[0..1] I_QualityManagementSystem _SuplrQltyMgmtSystem $projection.suplrqualitymanagementsystem = _SuplrQltyMgmtSystem.QualityManagementSystem
[0..1] I_InspectionLotType _InspectionLotType $projection.InspectionLotType = _InspectionLotType.InspectionLotType
[0..1] I_InspectionLot _QltyInProcmtCurInspLot $projection.QltyInProcmtCurInspLot = _QltyInProcmtCurInspLot.InspectionLot
[0..1] I_InspectionLot _QltyInProcmtNextInspLot $projection.QltyInProcmtNextInspLot = _QltyInProcmtNextInspLot.InspectionLot
[0..1] I_ControllingObject _ControllingObject $projection.ControllingObject = _ControllingObject.ControllingObject
[0..1] I_QltyInProcmtInspControl _QltyInProcmtInspControl $projection.QltyInProcmtInspControl = _QltyInProcmtInspControl.QltyInProcmtInspControl
[0..1] I_QltyInProcmtCertificateCtrl _QltyInProcmtCertificateCtrl $projection.QltyInProcmtCertificateCtrl = _QltyInProcmtCertificateCtrl.QltyInProcmtCertificateCtrl
[0..*] I_QltyFirstArticleInsp _QltyFirstArticleInsp $projection.Material = _QltyFirstArticleInsp.Material and $projection.QltyInProcmtIntID = _QltyFirstArticleInsp.QltyInProcmtIntID
[1..1] E_QualityInProcurement _Extension $projection.Material = _Extension.Material and $projection.QltyInProcmtIntID = _Extension.QltyInProcmtIntID

Annotations (15)

NameValueLevelField
AbapCatalog.sqlViewName IQLTYINPROCMT view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Quality Info Record in Procurement view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.personalData.blocking #REQUIRED view
ObjectModel.representativeKey QltyInProcmtIntID view
ObjectModel.sapObjectNodeType.name PurchasingQualityInfoRecord view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.dataClass #MASTER view
Analytics.dataCategory #DIMENSION view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view

Fields (62)

KeyFieldSource TableSource FieldDescription
KEY Material qinf matnr
KEY QltyInProcmtIntID
Supplier qinf lieferant
Plant qinf werk
MaterialRevisionLevel
QltyInProcmtReleaseValidTo qinf frei_dat
QltyInProcmtRelQtyIsActive
BaseUnit qinf me
ReleasedQuantity qinf frei_mng
OrderedQuantity qinf best_mg
QltyInProcmtResetOnDate qinf dat_rueck
BlockReason qinf sperrgrund
ProcurementBlock qinf sperrfkt
QualityManagementSystem qinf qssysfam
QltyInProcmtCertfnValidTo qinf qssysdat
SupplierProcurementBlock _Supplier SupplierProcurementBlock
SuplrQualityManagementSystem _Supplier SuplrQualityManagementSystem
SuplrQltyInProcmtCertfnValidTo _Supplier SuplrQltyInProcmtCertfnValidTo
QltyInProcmtInspControl qinf noinsp
InspectionLotType qinf variabnahm
QltyInProcmtHasLongText qinf ltextkz
QltyInProcmtNoFurtherInsp
QltyInProcmtLotCrtnLeadTime qinf vorlabn
IsDeleted qinf loekz
QltyInProcmtCertificateCtrl qinf certcontrol
QltyInProcmtHasAssuranceAgrmt
QltyInProcmtCurInspLot qinf plos
QltyInProcmtNextInspLot qinf plos2
ProdnPieceApprovalIsRequired qinf ppap_is_required
ProductionPieceApproval qinf ppap_id
ProductionPieceApprovalLevel qinf ppap_level
ProductionPieceApprovalStatus qinf ppap_status
StatusProfile qinf stsma
ControllingObject qinf objnr
CreatedByUser qinf ersteller
CreationDate qinf erstelldat
LastChangedByUser qinf aenderer
LastChangeDate qinf aenderdat
changeddatetimeendasChangedDateTime
Language qinf spras
LinkedSAPObjectKey _DocObjKeyForQltyInProcmt LinkedSAPObjectKey
DocumentInfoRecordDocType
_Material _Material
_ProductPlantQtManagement _ProductPlantQtManagement
_Plant _Plant
_Supplier _Supplier
_UnitOfMeasure _UnitOfMeasure
_ProcurementBlock _ProcurementBlock
_SupplierProcurementBlock _SupplierProcurementBlock
_QualityManagementSystem _QualityManagementSystem
_SuplrQltyMgmtSystem _SuplrQltyMgmtSystem
_ControllingObject _ControllingObject
_QltyInProcmtInspControl _QltyInProcmtInspControl
_QltyInProcmtCertificateCtrl _QltyInProcmtCertificateCtrl
_QltyFirstArticleInsp _QltyFirstArticleInsp
_InspectionLotType _InspectionLotType
_QltyInProcmtCurInspLot _QltyInProcmtCurInspLot
_QltyInProcmtNextInspLot _QltyInProcmtNextInspLot
_StatusProfile _StatusProfile
_CreatedByUser _CreatedByUser
_LastChangedByUser _LastChangedByUser
_Language _Language
@AbapCatalog.sqlViewName: 'IQLTYINPROCMT'
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Quality Info Record in Procurement'
@AccessControl.authorizationCheck: #CHECK
@VDM: {
    viewType: #BASIC,
    lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@AccessControl.personalData.blocking: #REQUIRED
@ObjectModel.representativeKey: 'QltyInProcmtIntID'
@ObjectModel.sapObjectNodeType.name: 'PurchasingQualityInfoRecord'
@ObjectModel.usageType: { serviceQuality: #B, sizeCategory: #S, dataClass: #MASTER }

@ObjectModel.supportedCapabilities: [ #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET, #ANALYTICAL_DIMENSION ]
@Analytics: { dataCategory: #DIMENSION }
@Metadata.allowExtensions:true

@Metadata.ignorePropagatedAnnotations: true

// P_DocObjKeyForQltyInProcmt: used for building DocumentObjectKey


define view I_QualityInProcurement as select from qinf
    left outer to one join P_DocObjKeyForQltyInProcmt as _DocObjKeyForQltyInProcmt 
        on  qinf.zaehl = _DocObjKeyForQltyInProcmt.QltyInProcmtIntID
        and qinf.matnr = _DocObjKeyForQltyInProcmt.Material
        and qinf.werk  = _DocObjKeyForQltyInProcmt.Plant                
        and qinf.revlv = _DocObjKeyForQltyInProcmt.MaterialRevisionLevel   

  association [1..1] to I_Plant                         as _Plant                         on  $projection.Plant                       = _Plant.Plant
  association [1..1] to I_Material                      as _Material                      on  $projection.Material                    = _Material.Material
  association [1..1] to I_Productplantqtmanagement      as _ProductPlantQtManagement      on  $projection.Material                    = _ProductPlantQtManagement.Product
                                                                                          and $projection.Plant                       = _ProductPlantQtManagement.Plant
  association [0..1] to I_Supplier                      as _Supplier                      on  $projection.Supplier                    = _Supplier.Supplier
  association [0..1] to I_UnitOfMeasure                 as _UnitOfMeasure                 on  $projection.BaseUnit                    = _UnitOfMeasure.UnitOfMeasure
  association [0..1] to I_StatusProfile                 as _StatusProfile                 on  $projection.StatusProfile               = _StatusProfile.StatusProfile
  association [0..1] to I_User                          as _CreatedByUser                 on  $projection.CreatedByUser               = _CreatedByUser.UserID
  association [0..1] to I_User                          as _LastChangedByUser             on  $projection.LastChangedByUser           = _LastChangedByUser.UserID
  association [0..1] to I_Language                      as _Language                      on  $projection.Language                    = _Language.Language
  association [0..1] to I_ProcurementBlock              as _ProcurementBlock              on  $projection.ProcurementBlock            = _ProcurementBlock.ProcurementBlock
  association [0..1] to I_ProcurementBlock              as _SupplierProcurementBlock      on  $projection.supplierprocurementblock    = _SupplierProcurementBlock.ProcurementBlock
  association [0..1] to I_QualityManagementSystem       as _QualityManagementSystem       on  $projection.QualityManagementSystem     = _QualityManagementSystem.QualityManagementSystem
  association [0..1] to I_QualityManagementSystem       as _SuplrQltyMgmtSystem           on  $projection.suplrqualitymanagementsystem = _SuplrQltyMgmtSystem.QualityManagementSystem
  association [0..1] to I_InspectionLotType             as _InspectionLotType             on  $projection.InspectionLotType           = _InspectionLotType.InspectionLotType
  association [0..1] to I_InspectionLot                 as _QltyInProcmtCurInspLot        on  $projection.QltyInProcmtCurInspLot      = _QltyInProcmtCurInspLot.InspectionLot
  association [0..1] to I_InspectionLot                 as _QltyInProcmtNextInspLot       on  $projection.QltyInProcmtNextInspLot     = _QltyInProcmtNextInspLot.InspectionLot
  association [0..1] to I_ControllingObject             as _ControllingObject             on  $projection.ControllingObject           = _ControllingObject.ControllingObject
  association [0..1] to I_QltyInProcmtInspControl       as _QltyInProcmtInspControl       on  $projection.QltyInProcmtInspControl     = _QltyInProcmtInspControl.QltyInProcmtInspControl
  association [0..1] to I_QltyInProcmtCertificateCtrl   as _QltyInProcmtCertificateCtrl   on  $projection.QltyInProcmtCertificateCtrl = _QltyInProcmtCertificateCtrl.QltyInProcmtCertificateCtrl
  association [0..*] to I_QltyFirstArticleInsp          as _QltyFirstArticleInsp          on  $projection.Material                    = _QltyFirstArticleInsp.Material
                                                                                         and  $projection.QltyInProcmtIntID           = _QltyFirstArticleInsp.QltyInProcmtIntID
  //Extension

  association [1..1] to E_QualityInProcurement          as _Extension                     on  $projection.Material = _Extension.Material
                                                                                          and $projection.QltyInProcmtIntID = _Extension.QltyInProcmtIntID
{
  @ObjectModel.foreignKey.association: '_Material'
  key qinf.matnr            as Material,
  key cast(qinf.zaehl as vdm_qm_qltyinprocmtintid preserving type ) as QltyInProcmtIntID,
  
  @ObjectModel.foreignKey.association: '_Supplier'
  qinf.lieferant        as Supplier,
  @ObjectModel.foreignKey.association: '_Plant'
  qinf.werk             as Plant,
  cast( qinf.revlv as vdm_qm_revlv preserving type ) as MaterialRevisionLevel,

  //@Semantics.businessDate.to: true

  qinf.frei_dat         as QltyInProcmtReleaseValidTo,
  cast( qinf.frei_mgkz as vdm_qfreimgkz preserving type )        as QltyInProcmtRelQtyIsActive,
  @Semantics.unitOfMeasure:true
  qinf.me               as BaseUnit,
  @Semantics.quantity.unitOfMeasure: 'BaseUnit'
  qinf.frei_mng         as ReleasedQuantity,
  @Semantics.quantity.unitOfMeasure: 'BaseUnit'
  qinf.best_mg          as OrderedQuantity,
  @Semantics.businessDate.at: true
  qinf.dat_rueck        as QltyInProcmtResetOnDate,
  @Semantics.text: true
  qinf.sperrgrund       as BlockReason,
  @ObjectModel.foreignKey.association: '_ProcurementBlock'
  qinf.sperrfkt         as ProcurementBlock,
  @ObjectModel.foreignKey.association: '_QualityManagementSystem'
  qinf.qssysfam         as QualityManagementSystem,
  qinf.qssysdat         as QltyInProcmtCertfnValidTo,
  @ObjectModel.foreignKey.association: '_SupplierProcurementBlock'
  _Supplier.SupplierProcurementBlock,
  @ObjectModel.foreignKey.association: '_SuplrQltyMgmtSystem'
  _Supplier.SuplrQualityManagementSystem,
  _Supplier.SuplrQltyInProcmtCertfnValidTo,
  @ObjectModel.foreignKey.association: '_QltyInProcmtInspControl'
  qinf.noinsp           as QltyInProcmtInspControl,
  @ObjectModel.foreignKey.association: '_InspectionLotType'
  qinf.variabnahm       as InspectionLotType,
  @Semantics.booleanIndicator: true
  qinf.ltextkz          as QltyInProcmtHasLongText,
  cast( qinf.noinspabn as vdm_qnoweabn preserving type )        as QltyInProcmtNoFurtherInsp,
  qinf.vorlabn          as QltyInProcmtLotCrtnLeadTime,
  @Semantics.booleanIndicator: true
  qinf.loekz            as IsDeleted,
  @ObjectModel.foreignKey.association: '_QltyInProcmtCertificateCtrl'
  qinf.certcontrol      as QltyInProcmtCertificateCtrl,
  cast( qinf.qvvorh as vdm_qqsvvorh preserving type )           as QltyInProcmtHasAssuranceAgrmt,
  qinf.plos             as QltyInProcmtCurInspLot,
  qinf.plos2            as QltyInProcmtNextInspLot,
  qinf.ppap_is_required as ProdnPieceApprovalIsRequired,
  qinf.ppap_id          as ProductionPieceApproval,
  qinf.ppap_level       as ProductionPieceApprovalLevel,
  qinf.ppap_status      as ProductionPieceApprovalStatus,
  qinf.stsma            as StatusProfile,
  qinf.objnr            as ControllingObject,

  @Semantics.user.createdBy: true
  qinf.ersteller        as CreatedByUser,
  @Semantics.systemDate.createdAt: true
  qinf.erstelldat       as CreationDate,
  @Semantics.user.lastChangedBy: true
  qinf.aenderer         as LastChangedByUser,
  @Semantics.systemDate.lastChangedAt: true
  qinf.aenderdat        as LastChangeDate,
  case qinf.changeddatetime
    when 0 then cast( '19000101010101' as tzntstmps )
    else qinf.changeddatetime end  as ChangedDateTime,
  //@Semantics.language: true

  qinf.spras            as Language, // or QINF.sprache


  _DocObjKeyForQltyInProcmt.LinkedSAPObjectKey as LinkedSAPObjectKey,
  cast( 'Q01' as qdokart preserving type ) as DocumentInfoRecordDocType,

  /*Assosiations*/
  _Material,
  _ProductPlantQtManagement,
  _Plant,
  _Supplier,
  _UnitOfMeasure,
  _ProcurementBlock,
  _SupplierProcurementBlock,
  _QualityManagementSystem,
  _SuplrQltyMgmtSystem,
  _ControllingObject,
  _QltyInProcmtInspControl,
  _QltyInProcmtCertificateCtrl,
  _QltyFirstArticleInsp,
  _InspectionLotType,
  _QltyInProcmtCurInspLot,
  _QltyInProcmtNextInspLot,
  _StatusProfile,
  _CreatedByUser,
  _LastChangedByUser,
  _Language
}