I_InsOpApSubCoverageDeductible

DDL: I_INSOPAPSUBCOVERAGEDEDUCTIBLE Type: view_entity COMPOSITE

SubCoverage Dcbl of CvPcg in InsOpAppl

I_InsOpApSubCoverageDeductible is a Composite CDS View that provides data about "SubCoverage Dcbl of CvPcg in InsOpAppl" in SAP S/4HANA. It reads from 1 data source (I_InsurPlcyDeductibleBasic) and exposes 27 fields with key fields InsurPlcyApplUUID, InsuranceApplication, InsurPlcyInsurContr, InsurPlcyCoveragePackageID, InsurPlcyCoverageID. It has 4 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_InsurPlcyDeductibleBasic Deductible from

Associations (4)

CardinalityTargetAliasCondition
[1..1] I_Currency _Currency $projection.InsurPlcyDeductibleCurrency = _Currency.Currency
[1..*] I_InsurPlcyTemplateT _InsurPlcyTemplateT $projection.InsurPlcyDeductibleTemplate = _InsurPlcyTemplateT.InsurPlcyTemplate
[0..1] I_InsurPlcyDcblAmountUnitLink _InsurPlcyDcblAmountUnit $projection.InsurPlcyDeductibleAmountUnit = _InsurPlcyDcblAmountUnit.InsurPlcyDeductibleAmountUnit and $projection.InsurPlcyDeductibleTemplate = _InsurPlcyDcblAmountUnit.InsurPlcyDeductibleTemplate
[0..1] I_InsurPlcyDcblCategoryLink _InsurPlcyDeductibleCategory $projection.InsurPlcyDeductibleCategory = _InsurPlcyDeductibleCategory.InsurPlcyDeductibleCategory and $projection.InsurPlcyDeductibleTemplate = _InsurPlcyDeductibleCategory.InsurPlcyDeductibleTemplate

Annotations (11)

NameValueLevelField
EndUserText.label SubCoverage Dcbl of CvPcg in InsOpAppl view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
ObjectModel.representativeKey InsurPlcyDeductibleID view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XL view
Metadata.allowExtensions false view
Metadata.ignorePropagatedAnnotations false view
Analytics.technicalName IOASubCvrgDcbl view

Fields (27)

KeyFieldSource TableSource FieldDescription
KEY InsurPlcyApplUUID OpenApplJrnl InsurPlcyApplUUID
KEY InsuranceApplication
KEY InsurPlcyInsurContr I_InsurPlcyDeductibleBasic InsurPlcyInsurContr
KEY InsurPlcyCoveragePackageID I_InsurPlcyDeductibleBasic InsurPlcyCoveragePackageID
KEY InsurPlcyCoverageID I_InsurPlcyDeductibleBasic InsurPlcyCoverageID
KEY InsurPlcyInsuredObjectID I_InsurPlcyDeductibleBasic InsurPlcyInsuredObjectID
KEY InsurPlcySubCvrgID I_InsurPlcyDeductibleBasic InsurPlcySubCvrgID
KEY InsurPlcyDeductibleID I_InsurPlcyDeductibleBasic InsurPlcyDeductibleID
KEY InsurPlcyContrDataDetnJrnlNmbr
InsurPlcyJrnlNmbr I_InsurPlcyDeductibleBasic InsurPlcyJrnlNmbr
InsurPlcyJrnlEndNmbr I_InsurPlcyDeductibleBasic InsurPlcyJrnlEndNmbr
InsurPlcyProductPackageID I_InsurPlcyDeductibleBasic InsurPlcyProductPackageID
InsurPlcyUUID OpenApplJrnl InsurPlcyUUID
InsurPlcyDeductibleCategory I_InsurPlcyDeductibleBasic InsurPlcyDeductibleCategory
InsurPlcyDeductibleAmount I_InsurPlcyDeductibleBasic InsurPlcyDeductibleAmount
InsurPlcyDeductibleStartDate I_InsurPlcyDeductibleBasic InsurPlcyDeductibleStartDate
InsurPlcyDeductibleEndDate I_InsurPlcyDeductibleBasic InsurPlcyDeductibleEndDate
InsurPlcyDeductibleTemplate I_InsurPlcyDeductibleBasic InsurPlcyDeductibleTemplate
InsurPlcyDeductibleCurrency I_InsurPlcyDeductibleBasic InsurPlcyDeductibleCurrency
InsurPlcyDeductibleAmountUnit I_InsurPlcyDeductibleBasic InsurPlcyDeductibleAmountUnit
InsurPlcyDeductibleValue I_InsurPlcyDeductibleBasic InsurPlcyDeductibleValue
LastChangeDateTime I_InsurPlcyDeductibleBasic LastChangeDateTime
_InsurOpenApplSubCoverage _InsurOpenApplSubCoverage
_InsurPlcyDeductibleCategory _InsurPlcyDeductibleCategory
_Currency _Currency
_InsurPlcyDcblAmountUnit _InsurPlcyDcblAmountUnit
_InsurPlcyTemplateT _InsurPlcyTemplateT
@EndUserText.label: 'SubCoverage Dcbl of CvPcg in InsOpAppl'
@VDM: {
  viewType:#COMPOSITE,
  lifecycle.contract.type:#PUBLIC_LOCAL_API
}
@AccessControl: {
  authorizationCheck: #PRIVILEGED_ONLY,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
   representativeKey: 'InsurPlcyDeductibleID',
   semanticKey: [ 'InsurPlcyDeductibleID' ],
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #D,
     sizeCategory:   #XL
   },
   supportedCapabilities: [ #CDS_MODELING_DATA_SOURCE ]
}
@Metadata: {
  allowExtensions:false,
  ignorePropagatedAnnotations:false
}
@Analytics: {
  technicalName: 'IOASubCvrgDcbl'
}
define view entity I_InsOpApSubCoverageDeductible
  as select from           I_InsurPlcyDeductibleBasic as Deductible
    left outer to one join P_InsurOpenApplDcblLatest  as OpenApplJrnl on  (
        OpenApplJrnl.InsurPlcyUUID                                                                                    = Deductible.InsurPlcyUUID
        or OpenApplJrnl.InsurPlcyApplUUID                                                                             = Deductible.InsurPlcyUUID
      )
                                                                      and OpenApplJrnl.InsurPlcyInsurContr            = Deductible.InsurPlcyInsurContr
                                                                      and OpenApplJrnl.InsurPlcyCoveragePackageID     = Deductible.InsurPlcyCoveragePackageID
                                                                      and OpenApplJrnl.InsurPlcyCoverageID            = Deductible.InsurPlcyCoverageID
                                                                      and OpenApplJrnl.InsurPlcyInsuredObjectID       = Deductible.InsurPlcyInsuredObjectID
                                                                      and OpenApplJrnl.InsurPlcySubCvrgID             = Deductible.InsurPlcySubCvrgID
                                                                      and OpenApplJrnl.InsurPlcyDeductibleID          = Deductible.InsurPlcyDeductibleID
                                                                      and OpenApplJrnl.InsurPlcyJrnlNmbr              = Deductible.InsurPlcyJrnlNmbr
                                                                      and OpenApplJrnl.InsurPlcyContrDataDetnJrnlNmbr < Deductible.InsurPlcyJrnlEndNmbr

  association        to parent I_InsurOpenApplSubCoverage as _InsurOpenApplSubCoverage    on  $projection.InsurPlcyApplUUID              = _InsurOpenApplSubCoverage.InsurPlcyApplUUID
                                                                                          and $projection.InsuranceApplication           = _InsurOpenApplSubCoverage.InsuranceApplication
                                                                                          and $projection.InsurPlcyInsurContr            = _InsurOpenApplSubCoverage.InsurPlcyInsurContr
                                                                                          and $projection.InsurPlcyCoveragePackageID     = _InsurOpenApplSubCoverage.InsurPlcyCoveragePackageID
                                                                                          and $projection.InsurPlcyCoverageID            = _InsurOpenApplSubCoverage.InsurPlcyCoverageID
                                                                                          and $projection.InsurPlcySubCvrgID             = _InsurOpenApplSubCoverage.InsurPlcySubCvrgID
                                                                                          and $projection.InsurPlcyContrDataDetnJrnlNmbr = _InsurOpenApplSubCoverage.InsurPlcyContrDataDetnJrnlNmbr
  association [1..1] to I_Currency                        as _Currency                    on  $projection.InsurPlcyDeductibleCurrency = _Currency.Currency
  association [1..*] to I_InsurPlcyTemplateT              as _InsurPlcyTemplateT          on  $projection.InsurPlcyDeductibleTemplate = _InsurPlcyTemplateT.InsurPlcyTemplate
  association [0..1] to I_InsurPlcyDcblAmountUnitLink     as _InsurPlcyDcblAmountUnit     on  $projection.InsurPlcyDeductibleAmountUnit = _InsurPlcyDcblAmountUnit.InsurPlcyDeductibleAmountUnit
                                                                                          and $projection.InsurPlcyDeductibleTemplate   = _InsurPlcyDcblAmountUnit.InsurPlcyDeductibleTemplate
  association [0..1] to I_InsurPlcyDcblCategoryLink       as _InsurPlcyDeductibleCategory on  $projection.InsurPlcyDeductibleCategory = _InsurPlcyDeductibleCategory.InsurPlcyDeductibleCategory
                                                                                          and $projection.InsurPlcyDeductibleTemplate = _InsurPlcyDeductibleCategory.InsurPlcyDeductibleTemplate

{

  key OpenApplJrnl.InsurPlcyApplUUID,
  key cast( OpenApplJrnl.InsuranceApplication as /pm0/vdm_applicationnr_tt preserving type )              as InsuranceApplication,
  key Deductible.InsurPlcyInsurContr,
  key Deductible.InsurPlcyCoveragePackageID,
  key Deductible.InsurPlcyCoverageID,
  key Deductible.InsurPlcyInsuredObjectID,
  key Deductible.InsurPlcySubCvrgID,
  key Deductible.InsurPlcyDeductibleID,
  key cast( OpenApplJrnl.InsurPlcyContrDataDetnJrnlNmbr as /pm0/vdm_contr_detn_jrnlnmbr preserving type ) as InsurPlcyContrDataDetnJrnlNmbr,
      Deductible.InsurPlcyJrnlNmbr,
      Deductible.InsurPlcyJrnlEndNmbr,
      @Consumption.hidden: true
      Deductible.InsurPlcyProductPackageID,
      OpenApplJrnl.InsurPlcyUUID,
      @ObjectModel.text.association: '_InsurPlcyDeductibleCategory'
      Deductible.InsurPlcyDeductibleCategory,
      @Semantics.amount.currencyCode: 'InsurPlcyDeductibleCurrency'
      Deductible.InsurPlcyDeductibleAmount,
      Deductible.InsurPlcyDeductibleStartDate,
      Deductible.InsurPlcyDeductibleEndDate,
      @ObjectModel.text.association: '_InsurPlcyTemplateT'
      Deductible.InsurPlcyDeductibleTemplate,
      @ObjectModel.foreignKey.association: '_Currency'
      Deductible.InsurPlcyDeductibleCurrency,
      @ObjectModel.text.association: '_InsurPlcyDcblAmountUnit'
      Deductible.InsurPlcyDeductibleAmountUnit,
      Deductible.InsurPlcyDeductibleValue,
      @Semantics.systemDateTime.lastChangedAt: true
      Deductible.LastChangeDateTime,

      /* Associations */
      _InsurOpenApplSubCoverage,
      @Consumption.hidden: true
      _InsurPlcyDeductibleCategory,
      @Consumption.hidden: true
      _Currency,
      @Consumption.hidden: true
      _InsurPlcyDcblAmountUnit,
      @Consumption.hidden: true
      _InsurPlcyTemplateT

}
where
      Deductible.InsurPlcyInsuredObjectID   =  0
  and Deductible.InsurPlcyCoveragePackageID <> 0
  and Deductible.InsurPlcyCoverageID        <> 0
  and Deductible.InsurPlcySubCvrgID         <> 0
  and OpenApplJrnl.InsurPlcyApplUUID        is not initial //Perf. Tuning: Make inner Join out of left outer Join

  and OpenApplJrnl.InsuranceApplication     is not initial
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_INSURPLCYDEDUCTIBLEBASIC",
"P_INSUROPENAPPLDCBLLATEST"
],
"ASSOCIATED":
[
"I_CURRENCY",
"I_INSUROPENAPPLSUBCOVERAGE",
"I_INSURPLCYDCBLAMOUNTUNITLINK",
"I_INSURPLCYDCBLCATEGORYLINK",
"I_INSURPLCYTEMPLATET"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/