P_KZ_DSVATRetOutDoc1

DDL: P_KZ_DSVATRETOUTDOC1 SQL: PKZDSVATRETOUT1 Type: view COMPOSITE

P_KZ_DSVATRetOutDoc1 is a Composite CDS View in SAP S/4HANA. It reads from 2 data sources (I_KZ_VATReturnCustomizing, I_JournalEntry) and exposes 13 fields with key fields StatryRptgEntity, StatryRptCategory, StatryRptRunID, CompanyCode, FiscalYear.

Data Sources (2)

SourceAliasJoin Type
I_KZ_VATReturnCustomizing Customazing inner
I_JournalEntry JournalEntry from

Parameters (6)

NameTypeDefault
P_StatryRptgEntity srf_reporting_entity
P_StatryRptCategory srf_rep_cat_id
P_StatryRptRunID srf_report_run_id
P_VATReturnVersion j_3rvatdversion
P_ReportingPeriodStartDate datum
P_ReportingPeriodEndDate datum

Annotations (7)

NameValueLevelField
AbapCatalog.sqlViewName PKZDSVATRETOUT1 view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #NOT_REQUIRED view
VDM.viewType #COMPOSITE view
VDM.private true view
AbapCatalog.preserveKey true view
AbapCatalog.compiler.compareFilter true view

Fields (13)

KeyFieldSource TableSource FieldDescription
KEY StatryRptgEntity
KEY StatryRptCategory
KEY StatryRptRunID
KEY CompanyCode I_JournalEntry CompanyCode
KEY FiscalYear I_JournalEntry FiscalYear
KEY AccountingDocument I_JournalEntry AccountingDocument
KEY AccountingDocumentItem DocumentItem AccountingDocumentItem
KEY SectionNum I_KZ_VATReturnCustomizing KZ_VATReturnSection
KEY LineItem I_KZ_VATReturnCustomizing KZ_VATLineItem
KEY OperationCode I_KZ_VATReturnCustomizing KZ_VATOperationCode
KEY ColumnNum I_KZ_VATReturnCustomizing KZ_VATReturnSectionColumn
TaxReportingDate I_JournalEntry TaxReportingDate
Customer DocumentItem Customer
@AbapCatalog.sqlViewName: 'PKZDSVATRETOUT1'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.viewType: #COMPOSITE
@VDM.private: true
@AbapCatalog.preserveKey:true 
@AbapCatalog.compiler.compareFilter:true 
define view P_KZ_DSVATRetOutDoc1
  with parameters

    P_StatryRptgEntity         : srf_reporting_entity,
    P_StatryRptCategory        : srf_rep_cat_id,
    P_StatryRptRunID           : srf_report_run_id,
    P_VATReturnVersion         : j_3rvatdversion,
    P_ReportingPeriodStartDate : datum,
    P_ReportingPeriodEndDate   : datum
  as select from I_JournalEntry                as JournalEntry

   left outer to many join         I_OperationalAcctgDocItem     as DocumentItem on  JournalEntry.CompanyCode        = DocumentItem.CompanyCode
                                                               and JournalEntry.AccountingDocument = DocumentItem.AccountingDocument
                                                               and JournalEntry.FiscalYear         = DocumentItem.FiscalYear
                                                               
    join         I_TaxItem                     as TaxItem      on  JournalEntry.CompanyCode        = TaxItem.CompanyCode
                                                               and JournalEntry.AccountingDocument = TaxItem.AccountingDocument
                                                               and JournalEntry.FiscalYear         = TaxItem.FiscalYear
                                                               //and DocumentItem.AccountingDocumentItem = TaxItem.TaxItem                                                               


    inner join         I_KZ_VATReturnCustomizing as Customazing  on(
                                                              Customazing.TaxCode = TaxItem.TaxCode
                                                              and Customazing.AccountingDocumentType = JournalEntry.AccountingDocumentType
                                                              and Customazing.TransactionTypeDetermination = TaxItem.TransactionTypeDetermination
                                                             )
                                                           or(
                                                             Customazing.TaxCode                    = TaxItem.TaxCode
                                                             and Customazing.AccountingDocumentType = JournalEntry.AccountingDocumentType
                                                             and Customazing.TransactionTypeDetermination = ''
                                                           )
                                                           or(
                                                             Customazing.TaxCode                    = TaxItem.TaxCode
                                                             and Customazing.AccountingDocumentType = ''
                                                             and Customazing.TransactionTypeDetermination = TaxItem.TransactionTypeDetermination
                                                           )
                                                           or(
                                                             Customazing.TaxCode                    = TaxItem.TaxCode
                                                             and Customazing.AccountingDocumentType = ''
                                                             and Customazing.TransactionTypeDetermination = ''
                                                           )



{

  key $parameters.P_StatryRptgEntity        as StatryRptgEntity,
  key $parameters.P_StatryRptCategory       as StatryRptCategory,
  key $parameters.P_StatryRptRunID          as StatryRptRunID,
  key JournalEntry.CompanyCode,
  key JournalEntry.FiscalYear,
  key JournalEntry.AccountingDocument,
  key DocumentItem.AccountingDocumentItem,
  key Customazing.KZ_VATReturnSection       as SectionNum,
  key Customazing.KZ_VATLineItem               as LineItem,
  key Customazing.KZ_VATOperationCode             as OperationCode,
  key Customazing.KZ_VATReturnSectionColumn as ColumnNum,
  JournalEntry.TaxReportingDate,
  DocumentItem.Customer

}
where
  // check DebitCreditCode type according to customizing

  (
        Customazing.DebitCreditCode        = ''
    or  JournalEntry.IsReversal                 =  ''
    and TaxItem.DebitCreditCode            =  Customazing.DebitCreditCode
    or  JournalEntry.IsReversal                 =  'X'
    and TaxItem.DebitCreditCode            <> Customazing.DebitCreditCode
  )
  and    Customazing.KZ_VATReturnSectionType = '07'
  and JournalEntry.TaxReportingDate       >= $parameters.P_ReportingPeriodStartDate
  and JournalEntry.TaxReportingDate       <= $parameters.P_ReportingPeriodEndDate
  and  Customazing.KZ_VATReturnVersion            = $parameters.P_VATReturnVersion
  and Customazing.TotalNumberIsCondition = ''
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_JOURNALENTRY",
"I_KZ_VATRETURNCUSTOMIZING",
"I_OPERATIONALACCTGDOCITEM",
"I_TAXITEM"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/