I_InspSampleCharcTP

DDL: I_INSPSAMPLECHARCTP SQL: IINSPSMPLCHARCTP Type: view TRANSACTIONAL

Inspection Characteristic for Inspection Point

I_InspSampleCharcTP is a Transactional CDS View that provides data about "Inspection Characteristic for Inspection Point" in SAP S/4HANA. It reads from 3 data sources (I_InspectionLot, I_InspectionOperation, I_InspSubsetCharacteristic) and exposes 21 fields with key fields InspectionLot, InspPlanOperationInternalID, InspectionCharacteristic, InspectionSubsetInternalID. It has 1 association to related views.

Data Sources (3)

SourceAliasJoin Type
I_InspectionLot _InspLot inner
I_InspectionOperation _InspOper inner
I_InspSubsetCharacteristic _InspSubsetChar from

Associations (1)

CardinalityTargetAliasCondition
[1..1] I_InspCharacteristicTP _InspCharc $projection.InspectionLot = _InspCharc.InspectionLot and $projection.InspPlanOperationInternalID = _InspCharc.InspPlanOperationInternalID and $projection.InspectionCharacteristic = _InspCharc.InspectionCharacteristic

Annotations (22)

NameValueLevelField
AbapCatalog.sqlViewName IINSPSMPLCHARCTP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Inspection Characteristic for Inspection Point view
Metadata.ignorePropagatedAnnotations true view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.compositionRoot false view
ObjectModel.createEnabled false view
ObjectModel.updateEnabled EXTERNAL_CALCULATION view
ObjectModel.deleteEnabled false view
ObjectModel.transactionalProcessingEnabled true view
ObjectModel.writeActivePersistence VQASV_ACTIV view
ObjectModel.entityChangeStateId ChangedDateTime view
ObjectModel.lifecycle.enqueue.expiryBehavior #RELATIVE_TO_LAST_CHANGE view
ObjectModel.lifecycle.enqueue.expiryInterval PT15M view
ObjectModel.lifecycle.processing.expiryBehavior #RELATIVE_TO_LAST_CHANGE view
ObjectModel.lifecycle.processing.expiryInterval PT30M view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #C view

Fields (21)

KeyFieldSource TableSource FieldDescription
KEY InspectionLot I_InspSubsetCharacteristic InspectionLot
KEY InspPlanOperationInternalID I_InspSubsetCharacteristic InspPlanOperationInternalID
KEY InspectionCharacteristic I_InspSubsetCharacteristic InspectionCharacteristic
KEY InspectionSubsetInternalID I_InspSubsetCharacteristic InspectionSubsetInternalID
InspectionCharacteristicStatus I_InspSubsetCharacteristic InspectionCharacteristicStatus
QualityControlChart I_InspSubsetCharacteristic QualityControlChart
InspSampleAcceptanceNumber I_InspSubsetCharacteristic InspSampleAcceptanceNumber
InspSampleRejectionNumber I_InspSubsetCharacteristic InspSampleRejectionNumber
InspSampleValuationRule I_InspSubsetCharacteristic InspSampleValuationRule
InspectionSampleSize I_InspSubsetCharacteristic InspectionSampleSize
InspLotDynRuleStage I_InspSubsetCharacteristic InspLotDynRuleStage
InspectionSeverity I_InspSubsetCharacteristic InspectionSeverity
InspSubsetCharcCreationDate I_InspSubsetCharacteristic InspSubsetCharcCreationDate
ChangedDateTime I_InspectionLot ChangedDateTime
Plant I_InspectionLot Plant
InspectionLotType I_InspectionLot InspectionLotType
MatlQualityAuthorizationGroup I_InspectionLot MatlQualityAuthorizationGroup
InspectionSubsetType I_InspectionLot InspectionSubsetType
IsBusinessPurposeCompleted I_InspectionLot IsBusinessPurposeCompleted
WorkCenter
_InspCharc _InspCharc
@AbapCatalog.sqlViewName: 'IINSPSMPLCHARCTP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Inspection Characteristic for Inspection Point'
@Metadata.ignorePropagatedAnnotations: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM: {
    viewType: #TRANSACTIONAL,
    lifecycle.contract.type: #SAP_INTERNAL_API  // Shall be set for #TRANSACTIONAL views

}

@ObjectModel: {
//    representativeKey: 'InspectionCharacteristic',

    semanticKey: ['InspectionLot','InspPlanOperationInternalID','InspectionCharacteristic','InspectionSubsetInternalID'],
    compositionRoot: false,
    createEnabled: false,
    updateEnabled: 'EXTERNAL_CALCULATION',   //true,

    deleteEnabled: false,                    // Assume: Inspection Results shall never be deleted!?

    transactionalProcessingEnabled: true,
//    draftEnabled: true,                    // No draft, only 'active persistence'

//    writeDraftPersistence: '..',           // Not necessary so far

    writeActivePersistence: 'VQASV_ACTIV',
    entityChangeStateId: 'ChangedDateTime',
    lifecycle.enqueue: {
        expiryBehavior: #RELATIVE_TO_LAST_CHANGE,  // Default #RELATIVE_TO_LAST_CHANGE

        expiryInterval: 'PT15M'                   // Default 'PT15M'

      //  notificationBeforeExpiryInterval: 'PT1M'   // Default 'PT5M'

    },
    lifecycle.processing: {
        expiryBehavior: #RELATIVE_TO_LAST_CHANGE,  // Default #RELATIVE_TO_LAST_CHANGE

        expiryInterval: 'PT30M'                        // Default 'PT30M'

      //  notificationBeforeExpiryInterval: 'PT3M'       // Default 'PT10M'

    },
    
    usageType: { dataClass: #TRANSACTIONAL, sizeCategory: #L, serviceQuality: #C }
}

define view I_InspSampleCharcTP as select from I_InspSubsetCharacteristic as _InspSubsetChar
    inner join I_InspectionLot       as _InspLot                 on  _InspSubsetChar.InspectionLot                = _InspLot.InspectionLot
    inner join I_InspectionOperation as _InspOper                on  _InspSubsetChar.InspectionLot                = _InspOper.InspectionLot 
                                                                 and _InspSubsetChar.InspPlanOperationInternalID  = _InspOper.InspPlanOperationInternalID

    association [1..1] to I_InspCharacteristicTP as _InspCharc      on  $projection.InspectionLot                    = _InspCharc.InspectionLot
                                                                    and $projection.InspPlanOperationInternalID      = _InspCharc.InspPlanOperationInternalID
                                                                    and $projection.InspectionCharacteristic         = _InspCharc.InspectionCharacteristic
{
  key _InspSubsetChar.InspectionLot, 
  key _InspSubsetChar.InspPlanOperationInternalID, 
  key _InspSubsetChar.InspectionCharacteristic, 
  key _InspSubsetChar.InspectionSubsetInternalID, 
      _InspSubsetChar.InspectionCharacteristicStatus, 
      _InspSubsetChar.QualityControlChart, 
      _InspSubsetChar.InspSampleAcceptanceNumber, 
      _InspSubsetChar.InspSampleRejectionNumber, 
      _InspSubsetChar.InspSampleValuationRule, 
      _InspSubsetChar.InspectionSampleSize, 
      _InspSubsetChar.InspLotDynRuleStage, 
      _InspSubsetChar.InspectionSeverity, 
      _InspSubsetChar.InspSubsetCharcCreationDate, 
      
      //eTag - taken from Inspection Lot (Hint: Using the association seems not possible -> got errors from BO generation!!)

      @ObjectModel.readOnly: true
      _InspLot.ChangedDateTime,
     
     // for Auth Check only

      @Consumption.hidden: true
      _InspLot.Plant,
      @Consumption.hidden: true      
      _InspLot.InspectionLotType,     
      @Consumption.hidden: true
      _InspLot.MatlQualityAuthorizationGroup,
      @Consumption.hidden: true
      _InspLot.InspectionSubsetType,
      @Consumption.hidden: true
      _InspLot.IsBusinessPurposeCompleted,
      @Consumption.hidden: true
      _InspOper._WorkCenter.WorkCenter,

   /* Object model relations */
    @ObjectModel.association.type: [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
    _InspCharc

    
}