I_InvoiceList

DDL: I_INVOICELIST Type: view_entity BASIC Package: VDM_SD_BIL_IL

Invoice List

I_InvoiceList is a Basic CDS View (Dimension) that provides data about "Invoice List" in SAP S/4HANA. It reads from 1 data source (I_BillingDocumentBasic) and exposes 131 fields with key field InvoiceList. It has 6 associations to related views. Part of development package VDM_SD_BIL_IL.

Data Sources (1)

SourceAliasJoin Type
I_BillingDocumentBasic I_BillingDocumentBasic from

Associations (6)

CardinalityTargetAliasCondition
[0..*] I_InvoiceListItem _Item $projection.InvoiceList = _Item.InvoiceList
[1..*] I_InvoiceListPartner _Partner $projection.InvoiceList = _Partner.InvoiceList
[0..*] I_InvoiceListPrcgElmnt _PricingElement $projection.InvoiceList = _PricingElement.InvoiceList
[1..1] I_InvoiceListType _InvoiceListType $projection.InvoiceListType = _InvoiceListType.InvoiceListType
[0..1] I_InvoiceList _CancelledInvoiceList $projection.CancelledInvoiceList = _CancelledInvoiceList.InvoiceList
[1..1] I_InvoiceListEnhancedFields _EnhancedFields $projection.InvoiceList = _EnhancedFields.InvoiceList

Annotations (16)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
Analytics.internalName #LOCAL view
Analytics.technicalName ISDINVOICELIST view
EndUserText.label Invoice List view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.compositionRoot true view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.representativeKey InvoiceList view
ObjectModel.sapObjectNodeType.name InvoiceList view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #BASIC view

Fields (131)

KeyFieldSource TableSource FieldDescription
KEY InvoiceList
SDDocumentCategory SDDocumentCategory
InvoiceListType
CreatedByUser CreatedByUser
CreationDate CreationDate
CreationTime CreationTime
LastChangeDate LastChangeDate
LastChangeDateTime LastChangeDateTime
LogicalSystem LogicalSystem
SalesOrganization SalesOrganization
DistributionChannel DistributionChannel
Division Division
InvoiceListBillingDate BillingDocumentDate
InvoiceListIsCancelled
CancelledInvoiceList
InvoiceListCombinationCriteria
TotalNetAmount TotalNetAmount
TransactionCurrency TransactionCurrency
StatisticsCurrency StatisticsCurrency
TotalTaxAmount TotalTaxAmount
CustomerPriceGroup CustomerPriceGroup
PriceListType PriceListType
TaxDepartureCountry TaxDepartureCountry
VATRegistration VATRegistration
VATRegistrationOrigin VATRegistrationOrigin
VATRegistrationCountry VATRegistrationCountry
CustomerTaxClassification1 CustomerTaxClassification1
CustomerTaxClassification2 CustomerTaxClassification2
CustomerTaxClassification3 CustomerTaxClassification3
CustomerTaxClassification4 CustomerTaxClassification4
CustomerTaxClassification5 CustomerTaxClassification5
CustomerTaxClassification6 CustomerTaxClassification6
CustomerTaxClassification7 CustomerTaxClassification7
CustomerTaxClassification8 CustomerTaxClassification8
CustomerTaxClassification9 CustomerTaxClassification9
IsEUTriangularDeal IsEUTriangularDeal
SDPricingProcedure SDPricingProcedure
ShippingCondition ShippingCondition
IncotermsVersion IncotermsVersion
IncotermsClassification IncotermsClassification
IncotermsTransferLocation IncotermsTransferLocation
IncotermsLocation1 IncotermsLocation1
IncotermsLocation2 IncotermsLocation2
PayerParty PayerParty
ContractAccount ContractAccount
CustomerPaymentTerms CustomerPaymentTerms
PaymentMethod PaymentMethod
PaymentReference PaymentReference
FixedValueDate FixedValueDate
AdditionalValueDays AdditionalValueDays
SEPAMandate SEPAMandate
CompanyCode CompanyCode
FiscalYear FiscalYear
AccountingDocument AccountingDocument
FiscalPeriod FiscalPeriod
CustomerAccountAssignmentGroup CustomerAccountAssignmentGroup
AccountingExchangeRateIsSet AccountingExchangeRateIsSet
AccountingExchangeRate AccountingExchangeRate
ExchangeRateDate ExchangeRateDate
ExchangeRateType ExchangeRateType
DocumentReferenceID DocumentReferenceID
AssignmentReference AssignmentReference
DunningArea DunningArea
DunningBlockingReason DunningBlockingReason
DunningKey DunningKey
InternalFinancialDocument InternalFinancialDocument
SoldToParty SoldToParty
PartnerCompany PartnerCompany
PurchaseOrderByCustomer PurchaseOrderByCustomer
CustomerGroup CustomerGroup
Country Country
CityCode CityCode
SalesDistrict SalesDistrict
Region Region
County County
CreditControlArea CreditControlArea
PricingDocument PricingDocument
OverallSDProcessStatus OverallSDProcessStatus
AccountingPostingStatus AccountingPostingStatus
AccountingTransferStatus AccountingTransferStatus
OvrlItmGeneralIncompletionSts OvrlItmGeneralIncompletionSts
OverallPricingIncompletionSts OverallPricingIncompletionSts
_EnhancedFields _EnhancedFields
_Item _Item
_Partner _Partner
_PricingElement _PricingElement
_InvoiceListType _InvoiceListType
_CreatedByUser _CreatedByUser
_LogicalSystem _LogicalSystem
_SalesOrganization _SalesOrganization
_DistributionChannel _DistributionChannel
_Division _Division
_CancelledInvoiceList _CancelledInvoiceList
_TransactionCurrency _TransactionCurrency
_StatisticsCurrency _StatisticsCurrency
_CustomerPriceGroup _CustomerPriceGroup
_PriceListType _PriceListType
_TaxDepartureCountry _TaxDepartureCountry
_VATRegistrationCountry _VATRegistrationCountry
_SDPricingProcedure _SDPricingProcedure
_ShippingCondition _ShippingCondition
_IncotermsClassification _IncotermsClassification
_IncotermsVersion _IncotermsVersion
_PayerParty _PayerParty
_CustomerPaymentTerms _CustomerPaymentTerms
_CompanyCode _CompanyCode
_FiscalYear _FiscalYear
_AccountingDocument _AccountingDocument
_CustomerAccountAssgmtGroup _CustomerAccountAssgmtGroup
_ExchangeRateType _ExchangeRateType
_DunningArea _DunningArea
_DunningBlockingReason _DunningBlockingReason
_SoldToParty _SoldToParty
_CustomerGroup _CustomerGroup
_Country _Country
_CityCode _CityCode
_SalesDistrict _SalesDistrict
_Region _Region
_County _County_2
_CreditControlArea _CreditControlArea
_SDDocumentCategory _SDDocumentCategory
_VATRegistrationOrigin _VATRegistrationOrigin
_DunningKey _DunningKey
_PaymentMethod _PaymentMethod
_OverallSDProcessStatus _OverallSDProcessStatus
_AccountingPostingStatus _AccountingPostingStatus
_AccountingTransferStatus _AccountingTransferStatus
_OvrlItmGeneralIncompletionSts _OvrlItmGeneralIncompletionSts
_OverallPricingIncompletionSts _OverallPricingIncompletionSts
_DunningAreaText _DunningAreaText
_CreditControlAreaText _CreditControlAreaText
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #('TRANSACTIONAL_DATA')
@AccessControl.privilegedAssociations: [ '_CreatedByUser', '_DunningAreaText', '_CreditControlAreaText' ]

@Analytics.dataCategory: #DIMENSION

@Analytics.dataExtraction: { enabled: true,
                             delta.changeDataCapture.mapping: [ { table: 'vbrk',
                                                                  role: #MAIN,
                                                                  viewElement: [ 'InvoiceList' ],
                                                                  tableElement: [ 'vbeln' ] } ] }

@Analytics.internalName: #LOCAL
@Analytics.technicalName: 'ISDINVOICELIST'

@EndUserText.label: 'Invoice List'

@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true

@ObjectModel.compositionRoot: true
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@ObjectModel.representativeKey: 'InvoiceList'
@ObjectModel.sapObjectNodeType.name: 'InvoiceList'

@ObjectModel.supportedCapabilities: [ #ANALYTICAL_DIMENSION,
                                      #CDS_MODELING_DATA_SOURCE,
                                      #CDS_MODELING_ASSOCIATION_TARGET,
                                      #SQL_DATA_SOURCE,
                                      #EXTRACTION_DATA_SOURCE ]

@ObjectModel.usageType: { dataClass: #TRANSACTIONAL, serviceQuality: #A, sizeCategory: #L }

@VDM.viewType: #BASIC

define view entity I_InvoiceList
  as select from I_BillingDocumentBasic

  // Association

  association [0..*] to I_InvoiceListItem           as _Item                 on $projection.InvoiceList = _Item.InvoiceList

  association [1..*] to I_InvoiceListPartner        as _Partner              on $projection.InvoiceList = _Partner.InvoiceList
  association [0..*] to I_InvoiceListPrcgElmnt      as _PricingElement       on $projection.InvoiceList = _PricingElement.InvoiceList
  association [1..1] to I_InvoiceListType           as _InvoiceListType      on $projection.InvoiceListType = _InvoiceListType.InvoiceListType

  association [0..1] to I_InvoiceList               as _CancelledInvoiceList on $projection.CancelledInvoiceList = _CancelledInvoiceList.InvoiceList

  association [1..1] to I_InvoiceListEnhancedFields as _EnhancedFields       on $projection.InvoiceList = _EnhancedFields.InvoiceList

{
      // key

  key cast(BillingDocument as vbeln_rl preserving type)                                 as InvoiceList,

      // category

      @ObjectModel.foreignKey.association: '_SDDocumentCategory'
      SDDocumentCategory,

      @ObjectModel.foreignKey.association: '_InvoiceListType'
      cast(BillingDocumentType as invoicelisttype preserving type)                      as InvoiceListType,

      // admin

      @Semantics.personalData.isPotentiallySensitive: true
      @Semantics.user.createdBy: true
      CreatedByUser,

      @Semantics.systemDate.createdAt: true
      CreationDate,

      @Semantics.systemTime.createdAt
      CreationTime,

      @Semantics.systemDate.lastChangedAt: true
      LastChangeDate,

      @Semantics.systemDateTime.lastChangedAt: true
      LastChangeDateTime,

      @ObjectModel.foreignKey.association: '_LogicalSystem'
      LogicalSystem,

      // org

      @ObjectModel.foreignKey.association: '_SalesOrganization'
      SalesOrganization,

      @ObjectModel.foreignKey.association: '_DistributionChannel'
      DistributionChannel,

      @ObjectModel.foreignKey.association: '_Division'
      Division,

      // billing

      BillingDocumentDate                                                               as InvoiceListBillingDate,
      cast(BillingDocumentIsCancelled as invoice_list_is_canceled preserving type)      as InvoiceListIsCancelled,

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_InvoiceListStdVH', element: 'InvoiceList' } } ]
      @ObjectModel.foreignKey.association: '_CancelledInvoiceList'
      cast(CancelledBillingDocument as canceled_invoice_list preserving type)           as CancelledInvoiceList,

      cast(BillingDocCombinationCriteria as invoice_list_comb_criteria preserving type) as InvoiceListCombinationCriteria,

      // pricing

      @Semantics.amount.currencyCode: 'TransactionCurrency'
      TotalNetAmount,

      @ObjectModel.foreignKey.association: '_TransactionCurrency'
      TransactionCurrency,

      @ObjectModel.foreignKey.association: '_StatisticsCurrency'
      StatisticsCurrency,

      @Semantics.amount.currencyCode: 'TransactionCurrency'
      TotalTaxAmount,

      @ObjectModel.foreignKey.association: '_CustomerPriceGroup'
      CustomerPriceGroup,

      @ObjectModel.foreignKey.association: '_PriceListType'
      PriceListType,

      @ObjectModel.foreignKey.association: '_TaxDepartureCountry'
      TaxDepartureCountry,

      VATRegistration,

      @ObjectModel.foreignKey.association: '_VATRegistrationOrigin'
      VATRegistrationOrigin,

      @ObjectModel.foreignKey.association: '_VATRegistrationCountry'
      VATRegistrationCountry,

      CustomerTaxClassification1,
      CustomerTaxClassification2,
      CustomerTaxClassification3,
      CustomerTaxClassification4,
      CustomerTaxClassification5,
      CustomerTaxClassification6,
      CustomerTaxClassification7,
      CustomerTaxClassification8,
      CustomerTaxClassification9,
      IsEUTriangularDeal,

      @ObjectModel.foreignKey.association: '_SDPricingProcedure'
      SDPricingProcedure,

      // shipping

      @ObjectModel.foreignKey.association: '_ShippingCondition'
      ShippingCondition,

      @ObjectModel.foreignKey.association: '_IncotermsVersion'
      IncotermsVersion,

      @ObjectModel.foreignKey.association: '_IncotermsClassification'
      IncotermsClassification,

      IncotermsTransferLocation,
      IncotermsLocation1,
      IncotermsLocation2,

      // payment

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_Customer_VH', element: 'Customer' } } ]
      @ObjectModel.foreignKey.association: '_PayerParty'
      PayerParty,

      ContractAccount,

      @ObjectModel.foreignKey.association: '_CustomerPaymentTerms'
      CustomerPaymentTerms,

      @ObjectModel.foreignKey.association: '_PaymentMethod'
      PaymentMethod,

      PaymentReference,
      FixedValueDate,
      AdditionalValueDays,
      SEPAMandate,

      // accounting

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CompanyCodeStdVH', element: 'CompanyCode' } } ]
      @ObjectModel.foreignKey.association: '_CompanyCode'
      CompanyCode,

      @ObjectModel.foreignKey.association: '_FiscalYear'
      FiscalYear,

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_AccountingDocumentStdVH', element: 'AccountingDocument' },
                                            additionalBinding: [ { localElement: 'CompanyCode', element: 'CompanyCode' },
                                                                 { localElement: 'FiscalYear',  element: 'FiscalYear'  } ] } ]
      @ObjectModel.foreignKey.association: '_AccountingDocument'
      AccountingDocument,

      FiscalPeriod,

      @ObjectModel.foreignKey.association: '_CustomerAccountAssgmtGroup'
      CustomerAccountAssignmentGroup,

      AccountingExchangeRateIsSet,
      AccountingExchangeRate,
      ExchangeRateDate,

      @ObjectModel.foreignKey.association: '_ExchangeRateType'
      ExchangeRateType,

      DocumentReferenceID,
      AssignmentReference,

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_DunningAreaStdVH', element: 'DunningArea' },
                                            additionalBinding: [ { localElement: 'CompanyCode', element: 'CompanyCode' } ] } ]
      @ObjectModel.foreignKey.association: '_DunningArea'
      @ObjectModel.text.association: '_DunningAreaText'
      DunningArea,

      @ObjectModel.foreignKey.association: '_DunningBlockingReason'
      DunningBlockingReason,

      @ObjectModel.foreignKey.association: '_DunningKey'
      DunningKey,

      InternalFinancialDocument,

      // sales

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_Customer_VH', element: 'Customer' } } ]
      @ObjectModel.foreignKey.association: '_SoldToParty'
      SoldToParty,

      PartnerCompany,
      PurchaseOrderByCustomer,

      @ObjectModel.foreignKey.association: '_CustomerGroup'
      CustomerGroup,

      @ObjectModel.foreignKey.association: '_Country'
      Country,

      @ObjectModel.foreignKey.association: '_CityCode'
      CityCode,

      @ObjectModel.foreignKey.association: '_SalesDistrict'
      SalesDistrict,

      @ObjectModel.foreignKey.association: '_Region'
      Region,

      @ObjectModel.foreignKey.association: '_County'
      County,

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CreditControlAreaStdVH', element: 'CreditControlArea' } } ]
      @ObjectModel.foreignKey.association: '_CreditControlArea'
      @ObjectModel.text.association: '_CreditControlAreaText'
      CreditControlArea,

      PricingDocument,

      // status

      @ObjectModel.foreignKey.association: '_OverallSDProcessStatus'
      OverallSDProcessStatus,

      @ObjectModel.foreignKey.association: '_AccountingPostingStatus'
      AccountingPostingStatus,

      @ObjectModel.foreignKey.association: '_AccountingTransferStatus'
      AccountingTransferStatus,

      @ObjectModel.foreignKey.association: '_OvrlItmGeneralIncompletionSts'
      OvrlItmGeneralIncompletionSts,

      @ObjectModel.foreignKey.association: '_OverallPricingIncompletionSts'
      OverallPricingIncompletionSts,

      // association

      _EnhancedFields,

      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _Item,

      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _Partner,

      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _PricingElement,

      _InvoiceListType,
      _CreatedByUser,
      _LogicalSystem,
      _SalesOrganization,
      _DistributionChannel,
      _Division,
      _CancelledInvoiceList,
      _TransactionCurrency,
      _StatisticsCurrency,
      _CustomerPriceGroup,
      _PriceListType,
      _TaxDepartureCountry,
      _VATRegistrationCountry,
      _SDPricingProcedure,
      _ShippingCondition,
      _IncotermsClassification,
      _IncotermsVersion,
      _PayerParty,
      _CustomerPaymentTerms,
      _CompanyCode,
      _FiscalYear,
      _AccountingDocument,
      _CustomerAccountAssgmtGroup,
      _ExchangeRateType,
      _DunningArea,
      _DunningBlockingReason,
      _SoldToParty,
      _CustomerGroup,
      _Country,
      _CityCode,
      _SalesDistrict,
      _Region,
      _County_2                                                                         as _County,

      _CreditControlArea,

      /* start suppress warning calculated_field_check */
      _SDDocumentCategory,
      _VATRegistrationOrigin,
      _DunningKey,
      _PaymentMethod,
      _OverallSDProcessStatus,
      _AccountingPostingStatus,
      _AccountingTransferStatus,
      _OvrlItmGeneralIncompletionSts,
      _OverallPricingIncompletionSts,
      /* end suppress warning calculated_field_check */

      @Consumption.hidden: true
      _DunningAreaText,

      @Consumption.hidden: true
      _CreditControlAreaText
}

where SDDocumentCategory = '3' or SDDocumentCategory = '4'