I_InsurApplCoverage

DDL: I_INSURAPPLCOVERAGE Type: view_entity COMPOSITE Package: VDM_PM_PLCY_APPL_COMMON

Coverage of Cvrg Package in Insur Appl

I_InsurApplCoverage is a Composite CDS View that provides data about "Coverage of Cvrg Package in Insur Appl" in SAP S/4HANA. It reads from 5 data sources (I_InsurPlcyCoverageBasic, I_InsurApplContract, P_InsurPolicyJournalKeys, I_InsurPlcyRegPremConfig, R_InsurApplicationPremium) and exposes 63 fields with key fields InsurPlcyUUID, InsurPlcyInsurContr, InsurPlcyCoveragePackageID, InsurPlcyCoverageID, InsurPlcyContrDataDetnJrnlNmbr. It has 17 associations to related views. Part of development package VDM_PM_PLCY_APPL_COMMON.

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 (17)

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_InsurApplCvrgSurchrgDiscount _InsurApplCvrgSurchrgDiscount
[0..*] I_InsurApplCoverageLimit _InsurApplCoverageLimit
[0..*] I_InsurApplCvrgClause _InsurApplCvrgClause
[0..*] I_InsurApplCvrgDeductible _InsurApplCvrgDeductible
[0..*] I_InsurApplInsuredObject _InsurApplInsuredObject
[0..*] I_InsurApplSubCoverage _InsurApplSubCoverage
[0..*] I_InsurApplCvrgTypeRegionalCl _InsurApplCvrgTypeRegionalCl
[0..*] I_InsurApplCvrgPremComparison _InsurApplCvrgPremComparison
[0..*] I_InsurApplCoverageBonusMalus _InsurApplCoverageBonusMalus

Annotations (11)

NameValueLevelField
EndUserText.label Coverage of Cvrg Package in Insur 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 IACvrg view

Fields (63)

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
_InsurApplCoveragePackage _InsurApplCoveragePackage
_InsurApplCvrgSurchrgDiscount _InsurApplCvrgSurchrgDiscount
_InsurApplCoverageLimit _InsurApplCoverageLimit
_InsurApplCvrgClause _InsurApplCvrgClause
_InsurApplCvrgTypeRegionalCl _InsurApplCvrgTypeRegionalCl
_InsurApplCvrgPremComparison _InsurApplCvrgPremComparison
_InsurApplCvrgDeductible _InsurApplCvrgDeductible
_InsurApplInsuredObject _InsurApplInsuredObject
_InsurApplSubCoverage _InsurApplSubCoverage
_InsurApplCoverageBonusMalus _InsurApplCoverageBonusMalus
_InsurPlcyTemplateT _InsurPlcyTemplateT
_InsurContrCanclnReason _InsurContrCanclnReason
_InsurPlcyCvrgLifeCycSts _InsurPlcyCvrgLifeCycSts
_InsurPlcyCvrgSuspension _InsurPlcyCvrgSuspension
_InsurPlcyCvrgInsrdSumCalc _InsurPlcyCvrgInsrdSumCalc
_CoverageCurrency _CoverageCurrency
_PremiumCurrency _PremiumCurrency
_InsurPlcyCvrgPremExmpRsn _InsurPlcyCvrgPremExmpRsn
@EndUserText.label: 'Coverage of Cvrg Package in Insur Appl'
@VDM: {
  viewType:#COMPOSITE,
  lifecycle.contract.type:#PUBLIC_LOCAL_API
}
@AccessControl: {
  authorizationCheck: #PRIVILEGED_ONLY,
  personalData.blocking: #('TRANSACTIONAL_DATA'),
                    privilegedAssociations:  [  '_InsurApplCvrgSurchrgDiscount',
                                                '_InsurApplCoverageLimit',
                                                '_InsurApplCvrgClause',
                                                '_InsurApplCvrgDeductible',
                                                '_InsurApplInsuredObject',
                                                '_InsurApplSubCoverage',
                                                '_InsurApplCvrgTypeRegionalCl',
                                                '_InsurApplCvrgPremComparison']
}
@ObjectModel: {
   representativeKey: 'InsurPlcyCoverageID',
   semanticKey: [ 'InsurPlcyInsuranceCoverage' ],
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #D,
     sizeCategory:   #XL
   },
   supportedCapabilities: [ #CDS_MODELING_DATA_SOURCE ]
}
@Metadata: {
  allowExtensions:false,
  ignorePropagatedAnnotations:false
}
@Analytics: {
  technicalName: 'IACvrg'
}

define view entity I_InsurApplCoverage
  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
  // Filter Premium Objects

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

  association        to parent I_InsurApplCoveragePackage as _InsurApplCoveragePackage  on  $projection.InsurPlcyUUID                  = _InsurApplCoveragePackage.InsurPlcyUUID
                                                                                        and $projection.InsurPlcyInsurContr            = _InsurApplCoveragePackage.InsurPlcyInsurContr
                                                                                        and $projection.InsurPlcyCoveragePackageID     = _InsurApplCoveragePackage.InsurPlcyCoveragePackageID
                                                                                        and $projection.InsurPlcyContrDataDetnJrnlNmbr = _InsurApplCoveragePackage.InsurPlcyContrDataDetnJrnlNmbr

  composition [0..*] of I_InsurApplCvrgSurchrgDiscount    as _InsurApplCvrgSurchrgDiscount
  composition [0..*] of I_InsurApplCoverageLimit          as _InsurApplCoverageLimit
  composition [0..*] of I_InsurApplCvrgClause             as _InsurApplCvrgClause
  composition [0..*] of I_InsurApplCvrgDeductible         as _InsurApplCvrgDeductible
  composition [0..*] of I_InsurApplInsuredObject          as _InsurApplInsuredObject
  composition [0..*] of I_InsurApplSubCoverage            as _InsurApplSubCoverage
  composition [0..*] of I_InsurApplCvrgTypeRegionalCl     as _InsurApplCvrgTypeRegionalCl
  composition [0..*] of I_InsurApplCvrgPremComparison     as _InsurApplCvrgPremComparison
  composition [0..*] of I_InsurApplCoverageBonusMalus     as _InsurApplCoverageBonusMalus

  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 */
      _InsurApplCoveragePackage,
      _InsurApplCvrgSurchrgDiscount,
      _InsurApplCoverageLimit,
      _InsurApplCvrgClause,
      _InsurApplCvrgTypeRegionalCl,
      _InsurApplCvrgPremComparison,
      _InsurApplCvrgDeductible,
      _InsurApplInsuredObject,
      _InsurApplSubCoverage,
      _InsurApplCoverageBonusMalus,

      @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