I_InsurOpenApplInsuredObject

DDL: I_INSUROPENAPPLINSUREDOBJECT Type: view_entity COMPOSITE

Cvrg InsOb of Cvrg Pckg in InsurOpenAppl

I_InsurOpenApplInsuredObject is a Composite CDS View that provides data about "Cvrg InsOb of Cvrg Pckg in InsurOpenAppl" in SAP S/4HANA. It reads from 1 data source (I_InsurPlcyInsuredObjectBasic) and exposes 29 fields with key fields InsurPlcyApplUUID, InsuranceApplication, InsurPlcyInsurContr, InsurPlcyCoveragePackageID, InsurPlcyCoverageID. It has 11 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_InsurPlcyInsuredObjectBasic Subject from

Associations (11)

CardinalityTargetAliasCondition
[1..1] I_InsurInsrdObjectCategory _InsurInsrdObjectCategory $projection.InsurPlcyInsuredObjectCategory = _InsurInsrdObjectCategory.InsurPlcyInsuredObjectCategory
[1..1] I_InsurInsrdObjSubCategory _InsurInsrdObjSubCategory $projection.InsurPlcyInsrdObjSubCategory = _InsurInsrdObjSubCategory.InsurPlcyInsrdObjSubCategory
[1..*] I_InsurPlcyTemplateT _InsurPlcyTemplateT $projection.InsurPlcyInsrdObjectTemplate = _InsurPlcyTemplateT.InsurPlcyTemplate
[1..1] I_InsurInsurableObject _InsurInsurableObject $projection.InsurPlcyInsrdObjUnqID = _InsurInsurableObject.InsurInsrblObj and $projection.InsurInsrblObjJrnlNmbr = _InsurInsurableObject.InsurInsrblObjJrnlNmbr
[0..*] I_InsOpApCvrgInsrdObjectClause _InsOpApCvrgInsrdObjClause
[0..*] I_InsOpApCvrgInsrdObjDcbl _InsOpApCvrgInsrdObjDcbl
[0..*] I_InsOpApCvrgObjSurchrgDisc _InsOpApCvrgObjSurchrgDisc
[0..1] I_InsOpApCvrgInsuredVehicle _InsOpApCvrgInsuredVehicle
[0..*] I_InsOpApCoverageNamedDriver _InsOpApCvrgNamedDriver
[0..*] I_InsOpApCvrgSpclEquipment _InsOpApCvrgSpclEquipment
[0..1] I_InsOpApCvrgPckgCvrgBuilding _InsOpApCvrgPckgCvrgBldng

Annotations (11)

NameValueLevelField
EndUserText.label Cvrg InsOb of Cvrg Pckg in InsurOpenAppl view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
ObjectModel.representativeKey InsurPlcyInsuredObjectID view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #L view
Metadata.allowExtensions false view
Metadata.ignorePropagatedAnnotations false view
Analytics.technicalName IOAInsrdObj view

Fields (29)

KeyFieldSource TableSource FieldDescription
KEY InsurPlcyApplUUID OpenApplJrnl InsurPlcyApplUUID
KEY InsuranceApplication
KEY InsurPlcyInsurContr I_InsurPlcyInsuredObjectBasic InsurPlcyInsurContr
KEY InsurPlcyCoveragePackageID I_InsurPlcyInsuredObjectBasic InsurPlcyCoveragePackageID
KEY InsurPlcyCoverageID I_InsurPlcyInsuredObjectBasic InsurPlcyCoverageID
KEY InsurPlcyInsuredObjectID I_InsurPlcyInsuredObjectBasic InsurPlcyInsuredObjectID
KEY InsurPlcyContrDataDetnJrnlNmbr
InsurPlcyJrnlNmbr I_InsurPlcyInsuredObjectBasic InsurPlcyJrnlNmbr
InsurPlcyJrnlEndNmbr I_InsurPlcyInsuredObjectBasic InsurPlcyJrnlEndNmbr
InsurPlcyProductPackageID I_InsurPlcyInsuredObjectBasic InsurPlcyProductPackageID
InsurPlcyUUID OpenApplJrnl InsurPlcyUUID
InsurPlcyInsrdObjectTemplate I_InsurPlcyInsuredObjectBasic InsurPlcyInsrdObjectTemplate
InsurPlcyInsuredObjectCategory I_InsurPlcyInsuredObjectBasic InsurPlcyInsuredObjectCategory
InsurPlcyInsrdObjSubCategory I_InsurPlcyInsuredObjectBasic InsurPlcyInsrdObjSubCategory
InsurPlcyInsrdObjUnqID I_InsurPlcyInsuredObjectBasic InsurPlcyInsrdObjUnqID
InsurInsrblObjJrnlNmbr I_InsurPlcyInsuredObjectBasic InsurInsrblObjJrnlNmbr
LastChangeDateTime I_InsurPlcyInsuredObjectBasic LastChangeDateTime
_InsurOpenApplCoverage _InsurOpenApplCoverage
_InsOpApCvrgInsrdObjClause _InsOpApCvrgInsrdObjClause
_InsOpApCvrgInsrdObjDcbl _InsOpApCvrgInsrdObjDcbl
_InsOpApCvrgObjSurchrgDisc _InsOpApCvrgObjSurchrgDisc
_InsOpApCvrgInsuredVehicle _InsOpApCvrgInsuredVehicle
_InsOpApCvrgNamedDriver _InsOpApCvrgNamedDriver
_InsOpApCvrgSpclEquipment _InsOpApCvrgSpclEquipment
_InsOpApCvrgPckgCvrgBldng _InsOpApCvrgPckgCvrgBldng
_InsurPlcyTemplateT _InsurPlcyTemplateT
_InsurInsrdObjectCategory _InsurInsrdObjectCategory
_InsurInsrdObjSubCategory _InsurInsrdObjSubCategory
_InsurInsurableObject _InsurInsurableObject
@EndUserText.label: 'Cvrg InsOb of Cvrg Pckg in InsurOpenAppl'
@VDM: {
  viewType:#COMPOSITE,
  lifecycle.contract.type:#PUBLIC_LOCAL_API
}
@AccessControl: {
  authorizationCheck: #PRIVILEGED_ONLY,
  personalData.blocking: #('TRANSACTIONAL_DATA'),
  privilegedAssociations:  [  '_InsOpApCvrgInsrdObjClause',
                              '_InsOpApCvrgInsrdObjDcbl',
                              '_InsOpApCvrgObjSurchrgDisc',
//                              '_InsurApplCvrgInsuredVehicle',

//                              '_InsurApplCvrgNamedDriver',

//                              '_InsurApplCvrgSpclEquipment'

                                '_InsOpApCvrgPckgCvrgBldng']
}
@ObjectModel: {
   representativeKey: 'InsurPlcyInsuredObjectID',
   semanticKey: [ 'InsurPlcyInsrdObjUnqID' ],
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #D,
     sizeCategory:   #L
   },
   supportedCapabilities: [ #CDS_MODELING_DATA_SOURCE ]
}
@Metadata: {
  allowExtensions:false,
  ignorePropagatedAnnotations:false
}
@Analytics: {
  technicalName: 'IOAInsrdObj'
}
define view entity I_InsurOpenApplInsuredObject
  as select from           I_InsurPlcyInsuredObjectBasic as Subject

    left outer to one join P_InsurOpenApplInsrdObjLatest as OpenApplJrnl on  (
        OpenApplJrnl.InsurPlcyUUID                                                                                       = Subject.InsurPlcyUUID
        or OpenApplJrnl.InsurPlcyApplUUID                                                                                = Subject.InsurPlcyUUID
      )
                                                                         and OpenApplJrnl.InsurPlcyInsurContr            = Subject.InsurPlcyInsurContr
                                                                         and OpenApplJrnl.InsurPlcyCoveragePackageID     = Subject.InsurPlcyCoveragePackageID
                                                                         and OpenApplJrnl.InsurPlcyCoverageID            = Subject.InsurPlcyCoverageID
                                                                         and OpenApplJrnl.InsurPlcyInsuredObjectID       = Subject.InsurPlcyInsuredObjectID
                                                                         and OpenApplJrnl.InsurPlcyJrnlNmbr              = Subject.InsurPlcyJrnlNmbr
                                                                         and OpenApplJrnl.InsurPlcyContrDataDetnJrnlNmbr < Subject.InsurPlcyJrnlEndNmbr


  association        to parent I_InsurOpenApplCoverage as _InsurOpenApplCoverage    on  $projection.InsurPlcyApplUUID              = _InsurOpenApplCoverage.InsurPlcyApplUUID
                                                                                    and $projection.InsuranceApplication           = _InsurOpenApplCoverage.InsuranceApplication
                                                                                    and $projection.InsurPlcyInsurContr            = _InsurOpenApplCoverage.InsurPlcyInsurContr
                                                                                    and $projection.InsurPlcyCoveragePackageID     = _InsurOpenApplCoverage.InsurPlcyCoveragePackageID
                                                                                    and $projection.InsurPlcyCoverageID            = _InsurOpenApplCoverage.InsurPlcyCoverageID
                                                                                    and $projection.InsurPlcyContrDataDetnJrnlNmbr = _InsurOpenApplCoverage.InsurPlcyContrDataDetnJrnlNmbr

  composition [0..*] of I_InsOpApCvrgInsrdObjectClause as _InsOpApCvrgInsrdObjClause
  composition [0..*] of I_InsOpApCvrgInsrdObjDcbl      as _InsOpApCvrgInsrdObjDcbl
  composition [0..*] of I_InsOpApCvrgObjSurchrgDisc    as _InsOpApCvrgObjSurchrgDisc
  composition [0..1] of I_InsOpApCvrgInsuredVehicle    as _InsOpApCvrgInsuredVehicle
  composition [0..*] of I_InsOpApCoverageNamedDriver   as _InsOpApCvrgNamedDriver
  composition [0..*] of I_InsOpApCvrgSpclEquipment     as _InsOpApCvrgSpclEquipment
  composition [0..1] of I_InsOpApCvrgPckgCvrgBuilding  as _InsOpApCvrgPckgCvrgBldng

  association [1..1] to I_InsurInsrdObjectCategory     as _InsurInsrdObjectCategory on  $projection.InsurPlcyInsuredObjectCategory = _InsurInsrdObjectCategory.InsurPlcyInsuredObjectCategory
  association [1..1] to I_InsurInsrdObjSubCategory     as _InsurInsrdObjSubCategory on  $projection.InsurPlcyInsrdObjSubCategory = _InsurInsrdObjSubCategory.InsurPlcyInsrdObjSubCategory
  association [1..*] to I_InsurPlcyTemplateT           as _InsurPlcyTemplateT       on  $projection.InsurPlcyInsrdObjectTemplate = _InsurPlcyTemplateT.InsurPlcyTemplate

  association [1..1] to I_InsurInsurableObject         as _InsurInsurableObject     on  $projection.InsurPlcyInsrdObjUnqID = _InsurInsurableObject.InsurInsrblObj
                                                                                    and $projection.InsurInsrblObjJrnlNmbr = _InsurInsurableObject.InsurInsrblObjJrnlNmbr

{

  key OpenApplJrnl.InsurPlcyApplUUID,
  key cast( OpenApplJrnl.InsuranceApplication as /pm0/vdm_applicationnr_tt preserving type )              as InsuranceApplication,
  key Subject.InsurPlcyInsurContr,
  key Subject.InsurPlcyCoveragePackageID,
  key Subject.InsurPlcyCoverageID,
  key Subject.InsurPlcyInsuredObjectID,
  key cast( OpenApplJrnl.InsurPlcyContrDataDetnJrnlNmbr as /pm0/vdm_contr_detn_jrnlnmbr preserving type ) as InsurPlcyContrDataDetnJrnlNmbr,
      Subject.InsurPlcyJrnlNmbr,
      Subject.InsurPlcyJrnlEndNmbr,
      @Consumption.hidden: true
      Subject.InsurPlcyProductPackageID,
      OpenApplJrnl.InsurPlcyUUID,
      @ObjectModel.text.association: '_InsurPlcyTemplateT'
      Subject.InsurPlcyInsrdObjectTemplate,
      @ObjectModel.foreignKey.association: '_InsurInsrdObjectCategory'
      Subject.InsurPlcyInsuredObjectCategory,
      @ObjectModel.foreignKey.association: '_InsurInsrdObjSubCategory'
      Subject.InsurPlcyInsrdObjSubCategory,
      @ObjectModel.foreignKey.association: '_InsurInsurableObject'
      Subject.InsurPlcyInsrdObjUnqID,
      Subject.InsurInsrblObjJrnlNmbr,
      @Semantics.systemDateTime.lastChangedAt: true
      Subject.LastChangeDateTime,

      /* Associations */
      _InsurOpenApplCoverage,
      _InsOpApCvrgInsrdObjClause,
      _InsOpApCvrgInsrdObjDcbl,
      _InsOpApCvrgObjSurchrgDisc,
      _InsOpApCvrgInsuredVehicle,
      _InsOpApCvrgNamedDriver,
      _InsOpApCvrgSpclEquipment,
      _InsOpApCvrgPckgCvrgBldng,

      @Consumption.hidden: true
      _InsurPlcyTemplateT,
      @Consumption.hidden: true
      _InsurInsrdObjectCategory,
      @Consumption.hidden: true
      _InsurInsrdObjSubCategory,
      _InsurInsurableObject

}
where
      Subject.InsurPlcyCoveragePackageID <> 0
  and Subject.InsurPlcyCoverageID        <> 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_INSURPLCYINSUREDOBJECTBASIC",
"P_INSUROPENAPPLINSRDOBJLATEST"
],
"ASSOCIATED":
[
"I_INSOPAPCOVERAGENAMEDDRIVER",
"I_INSOPAPCVRGINSRDOBJDCBL",
"I_INSOPAPCVRGINSRDOBJECTCLAUSE",
"I_INSOPAPCVRGINSUREDVEHICLE",
"I_INSOPAPCVRGOBJSURCHRGDISC",
"I_INSOPAPCVRGPCKGCVRGBUILDING",
"I_INSOPAPCVRGSPCLEQUIPMENT",
"I_INSURINSRDOBJECTCATEGORY",
"I_INSURINSRDOBJSUBCATEGORY",
"I_INSURINSURABLEOBJECT",
"I_INSUROPENAPPLCOVERAGE",
"I_INSURPLCYTEMPLATET"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/