I_InsurApplContrCoverage

DDL: I_INSURAPPLCONTRCOVERAGE Type: view_entity COMPOSITE

Contract Coverage in Insurance Appl

I_InsurApplContrCoverage is a Composite CDS View that provides data about "Contract Coverage in Insurance Appl" in SAP S/4HANA. It reads from 5 data sources (I_InsurPlcyCoverageBasic, I_InsurApplContract, P_InsurPolicyJournalKeys, I_InsurPlcyRegPremConfig, R_InsurApplicationPremium) and exposes 64 fields with key fields InsurPlcyUUID, InsurPlcyInsurContr, InsurPlcyCoveragePackageID, InsurPlcyCoverageID, InsurPlcyContrDataDetnJrnlNmbr. It has 18 associations to related views.

Data Sources (5)

SourceAliasJoin Type
I_InsurPlcyCoverageBasic Coverage inner
I_InsurApplContract InsurApplContractTmpl inner
P_InsurPolicyJournalKeys PlcyJrnl from
I_InsurPlcyRegPremConfig PremiumConfig inner
R_InsurApplicationPremium RegularPremium inner

Associations (18)

CardinalityTargetAliasCondition
[1..1] I_Currency _PremiumCurrency $projection.InsurPlcyPremiumCurrency = _PremiumCurrency.Currency
[1..1] I_Currency _CoverageCurrency $projection.InsurPlcyCoverageCurrency = _CoverageCurrency.Currency
[1..1] I_InsurContrCanclnReason _InsurContrCanclnReason $projection.InsurContrCanclnRsn = _InsurContrCanclnReason.InsurContrCanclnRsn
[1..1] I_InsurPlcyCvrgLifeCycSts _InsurPlcyCvrgLifeCycSts $projection.InsurPlcyCvrgLifeCycleStatus = _InsurPlcyCvrgLifeCycSts.InsurPlcyCvrgLifeCycleStatus
[1..1] I_InsurPlcyCvrgInsrdSumCalc _InsurPlcyCvrgInsrdSumCalc $projection.InsurPlcyCvrgInsrdSumCalcMeth = _InsurPlcyCvrgInsrdSumCalc.InsurPlcyCvrgInsrdSumCalcMeth
[1..1] I_InsurPlcyCvrgSuspension _InsurPlcyCvrgSuspension $projection.InsurPlcyCoverageSuspension = _InsurPlcyCvrgSuspension.InsurPlcyCoverageSuspension
[1..*] I_InsurPlcyTemplateT _InsurPlcyTemplateT $projection.InsurPlcyElementaryProdTmpl = _InsurPlcyTemplateT.InsurPlcyTemplate
[1..1] I_InsurPlcyCvrgPremExmpRsnLink _InsurPlcyCvrgPremExmpRsn $projection.InsurPlcyCvrgPremExmpReason = _InsurPlcyCvrgPremExmpRsn.InsurPlcyCvrgPremExmpReason and $projection.InsurPlcyElementaryProdTmpl = _InsurPlcyCvrgPremExmpRsn.InsurancePolicyCoverageControl
[0..*] I_InsurApplContrCvrgLimit _InsurApplContrCvrgLimit
[0..*] I_InsurApplContrCvrgClause _InsurApplContrCvrgClause
[0..*] I_InsurApplContrCvrgDeductible _InsurApplContrCvrgDeductible
[0..*] I_InsurApplContrCvrgInsrdObj _InsurApplContrCvrgInsrdObj
[0..*] I_InsurApplContrCvrgSurcharge _InsurApplContrCvrgSurcharge
[0..*] I_InsurApplContrCvrgSubCvrg _InsurApplContrCvrgSubCvrg
[0..1] I_InsurApplContrCvrgTypeRgnlCl _InsurApplContrCvrgTypeRgnlCl
[0..1] I_InsurApplContrCvrgPremComprn _InsurApplContrCvrgPremComprn
[0..*] I_InsurApplContrCvrgBonusMalus _InsurApplContrCvrgBonusMalus
[0..*] I_InsurApplContrCvrgBnfcy _InsurApplContrCvrgBeneficiary

Annotations (11)

NameValueLevelField
EndUserText.label Contract Coverage in Insurance Appl view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
ObjectModel.representativeKey InsurPlcyCoverageID 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 IAPlcyContrCvrg view

Fields (64)

KeyFieldSource TableSource FieldDescription
KEY InsurPlcyUUID I_InsurPlcyCoverageBasic InsurPlcyUUID
KEY InsurPlcyInsurContr I_InsurPlcyCoverageBasic InsurPlcyInsurContr
KEY InsurPlcyCoveragePackageID I_InsurPlcyCoverageBasic InsurPlcyCoveragePackageID
KEY InsurPlcyCoverageID I_InsurPlcyCoverageBasic InsurPlcyCoverageID
KEY InsurPlcyContrDataDetnJrnlNmbr
InsurPlcyJrnlNmbr I_InsurPlcyCoverageBasic InsurPlcyJrnlNmbr
InsurPlcyJrnlEndNmbr I_InsurPlcyCoverageBasic InsurPlcyJrnlEndNmbr
InsurPlcyProductPackageID I_InsurPlcyCoverageBasic InsurPlcyProductPackageID
InsurPlcyInsuranceCoverage I_InsurPlcyCoverageBasic InsurPlcyInsuranceCoverage
InsurPlcyElementaryProdTmpl I_InsurPlcyCoverageBasic InsurPlcyElementaryProdTmpl
InsurPlcyCoverageStartDateTime I_InsurPlcyCoverageBasic InsurPlcyCoverageStartDateTime
InsurPlcyCoverageEndDateTime I_InsurPlcyCoverageBasic InsurPlcyCoverageEndDateTime
InsurPlcyCvrgPremExmpReason I_InsurPlcyCoverageBasic InsurPlcyCvrgPremExmpReason
InsurPlcyCvrgLifeCycleStatus I_InsurPlcyCoverageBasic InsurPlcyCvrgLifeCycleStatus
InsurContrCanclnRsn I_InsurPlcyCoverageBasic InsurContrCanclnRsn
InsurPlcyCvrgCanclnDateTime I_InsurPlcyCoverageBasic InsurPlcyCvrgCanclnDateTime
InsurPlcyCoverageSuspension I_InsurPlcyCoverageBasic InsurPlcyCoverageSuspension
InsurPlcyCvrgSuspnStrtDateTime I_InsurPlcyCoverageBasic InsurPlcyCvrgSuspnStrtDateTime
InsurPlcyCvrgSuspnEndDateTime I_InsurPlcyCoverageBasic InsurPlcyCvrgSuspnEndDateTime
InsurPlcyCvrgInsuredSumAmount I_InsurPlcyCoverageBasic InsurPlcyCvrgInsuredSumAmount
InsurPlcyCvrgInsrdSumCalcMeth I_InsurPlcyCoverageBasic InsurPlcyCvrgInsrdSumCalcMeth
InsurPlcyCvrgInsuredSumPercent I_InsurPlcyCoverageBasic InsurPlcyCvrgInsuredSumPercent
InsurPlcyCoverageCurrency I_InsurPlcyCoverageBasic InsurPlcyCoverageCurrency
InsurPlcyBonusRestorerType I_InsurPlcyCoverageBasic InsurPlcyBonusRestorerType
InsurPlcyVehDeregistrationDate I_InsurPlcyCoverageBasic InsurPlcyVehDeregistrationDate
InsurPlcyBonusMalusIsNotCeded I_InsurPlcyCoverageBasic InsurPlcyBonusMalusIsNotCeded
InsurPlcyInsurEndMsgSendDate I_InsurPlcyCoverageBasic InsurPlcyInsurEndMsgSendDate
InsurPlcySubcoverageVariant I_InsurPlcyCoverageBasic InsurPlcySubcoverageVariant
InsurPlcyVehInsurCoverEndDate I_InsurPlcyCoverageBasic InsurPlcyVehInsurCoverEndDate
InsurPlcyNrOfVehClaimsRestored I_InsurPlcyCoverageBasic InsurPlcyNrOfVehClaimsRestored
InsurPlcyCrteInsurEndMessage I_InsurPlcyCoverageBasic InsurPlcyCrteInsurEndMessage
InsurPlcyDiscProtIsActive I_InsurPlcyCoverageBasic InsurPlcyDiscProtIsActive
LastChangeDateTime I_InsurPlcyCoverageBasic LastChangeDateTime
InsurancePolicyPremium R_InsurApplicationPremium InsurancePolicyPremium
InsurPlcyPremiumJournalNumber R_InsurApplicationPremium InsurPlcyJrnlNmbr
InsurPlcyPremJournalEndNumber R_InsurApplicationPremium InsurPlcyJrnlEndNmbr
InsurPerdPremBfrTaxPaytAmt R_InsurApplicationPremium InsurPerdPremBfrTaxPaytAmt
InsurPerdPremAftTaxPaytAmt R_InsurApplicationPremium InsurPerdPremAftTaxPaytAmt
InsurPremType R_InsurApplicationPremium InsurPremType
InsurPlcyCvrgIsPremiumExempt R_InsurApplicationPremium InsurPlcyCvrgIsPremiumExempt
InsurPlcyCvrgPremExmpEndDate R_InsurApplicationPremium InsurPlcyCvrgPremExmpEndDate
InsurPlcyPremiumCurrency R_InsurApplicationPremium InsurPlcyPremiumCurrency
InsurPlcyTotAnnPremAmt R_InsurApplicationPremium InsurPlcyTotAnnPremAmt
InsurPlcyPerdPremBfrTxPaytAmt R_InsurApplicationPremium InsurPlcyPerdPremBfrTxPaytAmt
InsurPlcyPremiumTemplate R_InsurApplicationPremium InsurPlcyPremiumTemplate
_InsurApplContract _InsurApplContract
_InsurApplContrCvrgSurcharge _InsurApplContrCvrgSurcharge
_InsurApplContrCvrgLimit _InsurApplContrCvrgLimit
_InsurApplContrCvrgClause _InsurApplContrCvrgClause
_InsurApplContrCvrgDeductible _InsurApplContrCvrgDeductible
_InsurApplContrCvrgInsrdObj _InsurApplContrCvrgInsrdObj
_InsurApplContrCvrgSubCvrg _InsurApplContrCvrgSubCvrg
_InsurApplContrCvrgTypeRgnlCl _InsurApplContrCvrgTypeRgnlCl
_InsurApplContrCvrgPremComprn _InsurApplContrCvrgPremComprn
_InsurApplContrCvrgBonusMalus _InsurApplContrCvrgBonusMalus
_InsurApplContrCvrgBeneficiary _InsurApplContrCvrgBeneficiary
_InsurPlcyTemplateT _InsurPlcyTemplateT
_InsurContrCanclnReason _InsurContrCanclnReason
_InsurPlcyCvrgLifeCycSts _InsurPlcyCvrgLifeCycSts
_InsurPlcyCvrgSuspension _InsurPlcyCvrgSuspension
_InsurPlcyCvrgInsrdSumCalc _InsurPlcyCvrgInsrdSumCalc
_CoverageCurrency _CoverageCurrency
_PremiumCurrency _PremiumCurrency
_InsurPlcyCvrgPremExmpRsn _InsurPlcyCvrgPremExmpRsn
@EndUserText.label: 'Contract Coverage in Insurance Appl'
@VDM: {
  viewType:#COMPOSITE,
  lifecycle.contract.type:#PUBLIC_LOCAL_API
}
@AccessControl: {
  authorizationCheck: #PRIVILEGED_ONLY,
  personalData.blocking: #('TRANSACTIONAL_DATA'),
                    privilegedAssociations:  [  '_InsurApplContrCvrgSurcharge',
                                                '_InsurApplContrCvrgLimit',
                                                '_InsurApplContrCvrgClause',
                                                '_InsurApplContrCvrgDeductible',
                                                '_InsurApplContrCvrgInsrdObj',
                                                '_InsurApplContrCvrgSubCvrg',
                                                '_InsurApplContrCvrgBeneficiary' ]
}
@ObjectModel: {
   representativeKey: 'InsurPlcyCoverageID',
   semanticKey: [ 'InsurPlcyInsuranceCoverage' ],
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #D,
     sizeCategory:   #XL
   },
   supportedCapabilities: [ #CDS_MODELING_DATA_SOURCE ]
}
@Metadata: {
  allowExtensions:false,
  ignorePropagatedAnnotations:false
}
@Analytics: {
  technicalName: 'IAPlcyContrCvrg'
}

define view entity I_InsurApplContrCoverage
  as select from P_InsurPolicyJournalKeys  as PlcyJrnl
    inner join   I_InsurPlcyCoverageBasic  as Coverage              on  PlcyJrnl.InsurPlcyUUID                  =  Coverage.InsurPlcyUUID
                                                                    and PlcyJrnl.InsurPlcyInsurContr            =  Coverage.InsurPlcyInsurContr
                                                                    and PlcyJrnl.InsurPlcyContrDataDetnJrnlNmbr >= Coverage.InsurPlcyJrnlNmbr
                                                                    and PlcyJrnl.InsurPlcyContrDataDetnJrnlNmbr <  Coverage.InsurPlcyJrnlEndNmbr

  // Get Template of Contract

    inner join   I_InsurApplContract       as InsurApplContractTmpl on  Coverage.InsurPlcyUUID                  = InsurApplContractTmpl.InsurPlcyUUID
                                                                    and Coverage.InsurPlcyInsurContr            = InsurApplContractTmpl.InsurPlcyInsurContr
                                                                    and PlcyJrnl.InsurPlcyContrDataDetnJrnlNmbr = InsurApplContractTmpl.InsurPlcyContrDataDetnJrnlNmbr

  // Join to Regular Premium on Coveragelevel

    inner join   R_InsurApplicationPremium as RegularPremium        on  RegularPremium.InsurPlcyUUID                  = Coverage.InsurPlcyUUID
                                                                    and RegularPremium.InsurPlcyInsurContr            = Coverage.InsurPlcyInsurContr
                                                                    and RegularPremium.InsurPlcyCoveragePackageID     = Coverage.InsurPlcyCoveragePackageID
                                                                    and RegularPremium.InsurPlcyCoverageID            = Coverage.InsurPlcyCoverageID
                                                                    and RegularPremium.InsurPlcyContrDataDetnJrnlNmbr = PlcyJrnl.InsurPlcyContrDataDetnJrnlNmbr

    inner join   I_InsurPlcyRegPremConfig  as PremiumConfig         on  PremiumConfig.InsurPlcyProductTemplate = InsurApplContractTmpl.InsurPlcyProductTemplate
                                                                    and PremiumConfig.InsurPremType            = RegularPremium.InsurPremType

  association        to parent I_InsurApplContract     as _InsurApplContract         on  $projection.InsurPlcyUUID                  = _InsurApplContract.InsurPlcyUUID
                                                                                     and $projection.InsurPlcyInsurContr            = _InsurApplContract.InsurPlcyInsurContr
                                                                                     and $projection.InsurPlcyContrDataDetnJrnlNmbr = _InsurApplContract.InsurPlcyContrDataDetnJrnlNmbr

  composition [0..*] of I_InsurApplContrCvrgLimit      as _InsurApplContrCvrgLimit
  composition [0..*] of I_InsurApplContrCvrgClause     as _InsurApplContrCvrgClause
  composition [0..*] of I_InsurApplContrCvrgDeductible as _InsurApplContrCvrgDeductible
  composition [0..*] of I_InsurApplContrCvrgInsrdObj   as _InsurApplContrCvrgInsrdObj
  composition [0..*] of I_InsurApplContrCvrgSurcharge  as _InsurApplContrCvrgSurcharge
  composition [0..*] of I_InsurApplContrCvrgSubCvrg    as _InsurApplContrCvrgSubCvrg
  composition [0..1] of I_InsurApplContrCvrgTypeRgnlCl as _InsurApplContrCvrgTypeRgnlCl
  composition [0..1] of I_InsurApplContrCvrgPremComprn as _InsurApplContrCvrgPremComprn
  composition [0..*] of I_InsurApplContrCvrgBonusMalus as _InsurApplContrCvrgBonusMalus
  composition [0..*] of I_InsurApplContrCvrgBnfcy      as _InsurApplContrCvrgBeneficiary

  association [1..1] to I_Currency                     as _PremiumCurrency           on  $projection.InsurPlcyPremiumCurrency = _PremiumCurrency.Currency
  association [1..1] to I_Currency                     as _CoverageCurrency          on  $projection.InsurPlcyCoverageCurrency = _CoverageCurrency.Currency
  association [1..1] to I_InsurContrCanclnReason       as _InsurContrCanclnReason    on  $projection.InsurContrCanclnRsn = _InsurContrCanclnReason.InsurContrCanclnRsn
  association [1..1] to I_InsurPlcyCvrgLifeCycSts      as _InsurPlcyCvrgLifeCycSts   on  $projection.InsurPlcyCvrgLifeCycleStatus = _InsurPlcyCvrgLifeCycSts.InsurPlcyCvrgLifeCycleStatus
  association [1..1] to I_InsurPlcyCvrgInsrdSumCalc    as _InsurPlcyCvrgInsrdSumCalc on  $projection.InsurPlcyCvrgInsrdSumCalcMeth = _InsurPlcyCvrgInsrdSumCalc.InsurPlcyCvrgInsrdSumCalcMeth
  association [1..1] to I_InsurPlcyCvrgSuspension      as _InsurPlcyCvrgSuspension   on  $projection.InsurPlcyCoverageSuspension = _InsurPlcyCvrgSuspension.InsurPlcyCoverageSuspension
  association [1..*] to I_InsurPlcyTemplateT           as _InsurPlcyTemplateT        on  $projection.InsurPlcyElementaryProdTmpl = _InsurPlcyTemplateT.InsurPlcyTemplate
  association [1..1] to I_InsurPlcyCvrgPremExmpRsnLink as _InsurPlcyCvrgPremExmpRsn  on  $projection.InsurPlcyCvrgPremExmpReason = _InsurPlcyCvrgPremExmpRsn.InsurPlcyCvrgPremExmpReason
                                                                                     and $projection.InsurPlcyElementaryProdTmpl = _InsurPlcyCvrgPremExmpRsn.InsurancePolicyCoverageControl

{

  key Coverage.InsurPlcyUUID,
  key Coverage.InsurPlcyInsurContr,
  key Coverage.InsurPlcyCoveragePackageID,
  key Coverage.InsurPlcyCoverageID,
  key cast( PlcyJrnl.InsurPlcyContrDataDetnJrnlNmbr as /pm0/vdm_contr_detn_jrnlnmbr preserving type ) as InsurPlcyContrDataDetnJrnlNmbr,
      Coverage.InsurPlcyJrnlNmbr,
      Coverage.InsurPlcyJrnlEndNmbr,
      @Consumption.hidden: true
      Coverage.InsurPlcyProductPackageID,
      Coverage.InsurPlcyInsuranceCoverage,
      @ObjectModel.text.association: '_InsurPlcyTemplateT'
      Coverage.InsurPlcyElementaryProdTmpl,
      @Semantics.dateTime:true
      Coverage.InsurPlcyCoverageStartDateTime,
      @Semantics.dateTime:true
      Coverage.InsurPlcyCoverageEndDateTime,
      @ObjectModel.foreignKey.association: '_InsurPlcyCvrgPremExmpRsn'
      Coverage.InsurPlcyCvrgPremExmpReason,
      @ObjectModel.foreignKey.association: '_InsurPlcyCvrgLifeCycSts'
      Coverage.InsurPlcyCvrgLifeCycleStatus,
      @ObjectModel.foreignKey.association: '_InsurContrCanclnReason'
      Coverage.InsurContrCanclnRsn,
      @Semantics.dateTime:true
      Coverage.InsurPlcyCvrgCanclnDateTime,
      @ObjectModel.foreignKey.association: '_InsurPlcyCvrgSuspension'
      Coverage.InsurPlcyCoverageSuspension,
      @Semantics.dateTime:true
      Coverage.InsurPlcyCvrgSuspnStrtDateTime,
      @Semantics.dateTime:true
      Coverage.InsurPlcyCvrgSuspnEndDateTime,
      @Semantics.amount.currencyCode: 'InsurPlcyCoverageCurrency'
      Coverage.InsurPlcyCvrgInsuredSumAmount,
      @ObjectModel.foreignKey.association: '_InsurPlcyCvrgInsrdSumCalc'
      Coverage.InsurPlcyCvrgInsrdSumCalcMeth,
      Coverage.InsurPlcyCvrgInsuredSumPercent,
      @ObjectModel.foreignKey.association: '_CoverageCurrency'
      Coverage.InsurPlcyCoverageCurrency,
      //FS-PM Auto sibling specific fields

      Coverage.InsurPlcyBonusRestorerType,
      Coverage.InsurPlcyVehDeregistrationDate,
      Coverage.InsurPlcyBonusMalusIsNotCeded,
      Coverage.InsurPlcyInsurEndMsgSendDate,
      Coverage.InsurPlcySubcoverageVariant,
      Coverage.InsurPlcyVehInsurCoverEndDate,
      Coverage.InsurPlcyNrOfVehClaimsRestored,
      Coverage.InsurPlcyCrteInsurEndMessage,
      Coverage.InsurPlcyDiscProtIsActive,
      @Semantics.systemDateTime.lastChangedAt: true
      Coverage.LastChangeDateTime,

      RegularPremium.InsurancePolicyPremium,
      RegularPremium.InsurPlcyJrnlNmbr                                                                as InsurPlcyPremiumJournalNumber,
      RegularPremium.InsurPlcyJrnlEndNmbr                                                             as InsurPlcyPremJournalEndNumber,
      @Semantics.amount.currencyCode: 'InsurPlcyPremiumCurrency'
      RegularPremium.InsurPerdPremBfrTaxPaytAmt,
      @Semantics.amount.currencyCode: 'InsurPlcyPremiumCurrency'
      RegularPremium.InsurPerdPremAftTaxPaytAmt,
      RegularPremium.InsurPremType,
      @Semantics.booleanIndicator:true
      RegularPremium.InsurPlcyCvrgIsPremiumExempt,
      RegularPremium.InsurPlcyCvrgPremExmpEndDate,
      @ObjectModel.foreignKey.association: '_PremiumCurrency'
      RegularPremium.InsurPlcyPremiumCurrency,
      @Semantics.amount.currencyCode: 'InsurPlcyPremiumCurrency'
      RegularPremium.InsurPlcyTotAnnPremAmt,
      @Semantics.amount.currencyCode: 'InsurPlcyPremiumCurrency'
      RegularPremium.InsurPlcyPerdPremBfrTxPaytAmt,
      @ObjectModel.text.association: '_InsurPlcyTemplateT'
      RegularPremium.InsurPlcyPremiumTemplate,

      /* Associations */
      _InsurApplContract,
      _InsurApplContrCvrgSurcharge,
      _InsurApplContrCvrgLimit,
      _InsurApplContrCvrgClause,
      _InsurApplContrCvrgDeductible,
      _InsurApplContrCvrgInsrdObj,
      _InsurApplContrCvrgSubCvrg,
      _InsurApplContrCvrgTypeRgnlCl,
      _InsurApplContrCvrgPremComprn,
      _InsurApplContrCvrgBonusMalus,
      _InsurApplContrCvrgBeneficiary,

      @Consumption.hidden: true
      _InsurPlcyTemplateT,
      @Consumption.hidden: true
      _InsurContrCanclnReason,
      @Consumption.hidden: true
      _InsurPlcyCvrgLifeCycSts,
      @Consumption.hidden: true
      _InsurPlcyCvrgSuspension,
      @Consumption.hidden: true
      _InsurPlcyCvrgInsrdSumCalc,
      @Consumption.hidden: true
      _CoverageCurrency,
      @Consumption.hidden: true
      _PremiumCurrency,
      @Consumption.hidden: true
      _InsurPlcyCvrgPremExmpRsn

}
where
  Coverage.InsurPlcyCoveragePackageID = 0