I_ProbSolvingProcCauseTP

DDL: I_PROBSOLVINGPROCCAUSETP SQL: IPRSOLPROCCSETP Type: view TRANSACTIONAL Package: VDM_QM_PROBSOLVINGPROC

Problem-Solving Process Cause

I_ProbSolvingProcCauseTP is a Transactional CDS View that provides data about "Problem-Solving Process Cause" in SAP S/4HANA. It reads from 1 data source (I_ProbSolvingProcCause) and exposes 15 fields with key fields ProbSolvingProc, ProbSolvingProcCause. It has 2 associations to related views. Part of development package VDM_QM_PROBSOLVINGPROC.

Data Sources (1)

SourceAliasJoin Type
I_ProbSolvingProcCause _ProbSolvingProcCause from

Associations (2)

CardinalityTargetAliasCondition
[1..1] I_ProbSolvingProcTP _ProbSolvingProc $projection.ProbSolvingProc = _ProbSolvingProc.ProbSolvingProc
[0..*] I_ProbSolvingProcCauseLongTTP _ProbSolvingProcCauseLongT $projection.ProbSolvingProc = _ProbSolvingProcCauseLongT.ProbSolvingProc and $projection.ProbSolvingProcCause = _ProbSolvingProcCauseLongT.ProbSolvingProcCause

Annotations (17)

NameValueLevelField
AbapCatalog.sqlViewName IPRSOLPROCCSETP view
AbapCatalog.preserveKey true view
AbapCatalog.compiler.compareFilter true view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Problem-Solving Process Cause view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.representativeKey ProbSolvingProcCause view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled true view
ObjectModel.deleteEnabled true view
ObjectModel.writeDraftPersistence QPRSLPRCAUSE_D view
ObjectModel.writeActivePersistence V_PRSLPRCSE_B2A view

Fields (15)

KeyFieldSource TableSource FieldDescription
KEY ProbSolvingProc I_ProbSolvingProcCause ProbSolvingProc
KEY ProbSolvingProcCause I_ProbSolvingProcCause ProbSolvingProcCause
ProbSolvingProcCauseDesc I_ProbSolvingProcCause ProbSolvingProcCauseDesc
DefectCauseCodeGroup I_ProbSolvingProcCause DefectCauseCodeGroup
DefectCauseCode I_ProbSolvingProcCause DefectCauseCode
CreatedByUser I_ProbSolvingProcCause CreatedByUser
ProbSolvingCauseCrtedDateTime I_ProbSolvingProcCause ProbSolvingCauseCrtedDateTime
LastChangedByUser I_ProbSolvingProcCause LastChangedByUser
ProbSolvingCauseLastChgdDteTme I_ProbSolvingProcCause ProbSolvingCauseLastChgdDteTme
_ProbSolvingProc _ProbSolvingProc
_ProbSolvingProcCauseLongT _ProbSolvingProcCauseLongT
_DefectCauseCodeGroup I_ProbSolvingProcCause _DefectCauseCodeGroup
_DefectCauseCode I_ProbSolvingProcCause _DefectCauseCode
_CreatedByUserContactCard I_ProbSolvingProcCause _CreatedByUserContactCard
_LastChangedByUserContactCard I_ProbSolvingProcCause _LastChangedByUserContactCard
@AbapCatalog.sqlViewName: 'IPRSOLPROCCSETP'
@AbapCatalog.preserveKey: true
@AbapCatalog.compiler.compareFilter:true 
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Problem-Solving Process Cause'

@VDM: {
    viewType: #TRANSACTIONAL,
    lifecycle.contract.type: #SAP_INTERNAL_API
}

@AccessControl.authorizationCheck: #CHECK

@ObjectModel: {
    usageType: {
        dataClass: #TRANSACTIONAL,
        sizeCategory: #M, 
        serviceQuality: #A },
    representativeKey: 'ProbSolvingProcCause',
    semanticKey:  [ 'ProbSolvingProc', 'ProbSolvingProcCause' ],

// Begin Draft

    createEnabled: true,
    updateEnabled: true,
    deleteEnabled: true,
    writeDraftPersistence: 'QPRSLPRCAUSE_D',
    writeActivePersistence: 'V_PRSLPRCSE_B2A'
// End Draft


}

define view I_ProbSolvingProcCauseTP as select from I_ProbSolvingProcCause as _ProbSolvingProcCause 

  association [1..1] to I_ProbSolvingProcTP           as _ProbSolvingProc           on  $projection.ProbSolvingProc      = _ProbSolvingProc.ProbSolvingProc
  association [0..*] to I_ProbSolvingProcCauseLongTTP as _ProbSolvingProcCauseLongT on  $projection.ProbSolvingProc      = _ProbSolvingProcCauseLongT.ProbSolvingProc
                                                                                    and $projection.ProbSolvingProcCause = _ProbSolvingProcCauseLongT.ProbSolvingProcCause

{
      @ObjectModel.readOnly: true
      @ObjectModel.foreignKey.association: '_ProbSolvingProc'
  key _ProbSolvingProcCause.ProbSolvingProc,
      @ObjectModel.readOnly: true
  key _ProbSolvingProcCause.ProbSolvingProcCause,

      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      _ProbSolvingProcCause.ProbSolvingProcCauseDesc,

      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      _ProbSolvingProcCause.DefectCauseCodeGroup,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      _ProbSolvingProcCause.DefectCauseCode,

      @ObjectModel.readOnly: true 
      _ProbSolvingProcCause.CreatedByUser,
      @ObjectModel.readOnly: true 
      _ProbSolvingProcCause.ProbSolvingCauseCrtedDateTime,
      @ObjectModel.readOnly: true 
      _ProbSolvingProcCause.LastChangedByUser,
      @ObjectModel.readOnly: true 
      _ProbSolvingProcCause.ProbSolvingCauseLastChgdDteTme,

//=== exposed associations

      @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
      _ProbSolvingProc,
      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
      _ProbSolvingProcCauseLongT,
      
      _ProbSolvingProcCause._DefectCauseCodeGroup,
      _ProbSolvingProcCause._DefectCauseCode,
      
      _ProbSolvingProcCause._CreatedByUserContactCard,
      _ProbSolvingProcCause._LastChangedByUserContactCard

}