Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.
-- Derived SQL interpretation of CDS view P_NO_SAFTTaxRatioCalculation.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- SQL view name: PNOSAFTTAXRCALC
CREATE VIEW P_NO_SAFTTaxRatioCalculation AS
SELECT
JournalEntryItem.CompanyCode AS CompanyCode,
JournalEntryItem.FiscalYear AS FiscalYear,
JournalEntryItem.AccountingDocument AS AccountingDocument,
JournalEntryItem.LedgerGLLineItem AS LedgerGLLineItem,
JournalEntryItem.Ledger AS Ledger,
JournalEntryItem.SourceLedger AS SourceLedger,
JournalEntryItem.ChartOfAccounts AS ChartOfAccounts,
JournalEntryItem.PostingDate AS PostingDate,
JournalEntryItem.FinancialAccountType AS FinancialAccountType,
JournalEntryItem.GLAccount AS GLAccount,
JournalEntryItem.AlternativeGLAccount AS AlternativeGLAccount,
JournalEntryItem.ReferenceDocument AS ReferenceDocument,
JournalEntryItem.DocumentItemText AS DocumentItemText,
JournalEntryItem.CompanyCodeCurrency AS CompanyCodeCurrency,
JournalEntryItem.TransactionCurrency AS TransactionCurrency,
case when JournalEntryItem.TransactionTypeDetermination = ' ' and JournalEntryItem.ReconciliationAccountType <> 'V' and JournalEntryItem.FinancialAccountType = 'S' and SpecialGLAmountSum.AccountingDocument is null then JournalEntryItem.TaxCode when SpecialGLAmountSum.AccountingDocument is not null and JournalEntryItem.TransactionTypeDetermination = 'MWS' then JournalEntryItem.TaxCode else ' ' end as TaxCode AS TaxCodeelseendasTaxCode,
case when JournalEntryItem.TransactionTypeDetermination = ' ' and JournalEntryItem.ReconciliationAccountType <> 'V' and JournalEntryItem.FinancialAccountType = 'S' and SpecialGLAmountSum.AccountingDocument is null then coalesce(division(abs(TaxAmountSum.TaxRate),10,2) , 0) when SpecialGLAmountSum.AccountingDocument is not null and TaxSpGLSum.TaxRate is not initial and JournalEntryItem.TransactionTypeDetermination = 'MWS' then coalesce(division(abs(TaxSpGLSum.TaxRate),10,2) , 0) else 0 end as TaxRate AS TaxRate1020else0endasTaxRate,
case when TaxAmountSum.TaxAmountInCoCodeCrcy is not initial and TaxAmountSum.TaxAmountInCoCodeCrcy is not null and JournalItemTaxSum.TotalGrossAmountInCoCodeCrcy is not initial and JournalItemTaxSum.TotalGrossAmountInCoCodeCrcy is not null and JournalEntryItem.TransactionTypeDetermination = ' ' and JournalEntryItem.ReconciliationAccountType <> 'V' and JournalEntryItem.FinancialAccountType = 'S' and SpecialGLAmountSum.AccountingDocument is null then ( cast( TaxAmountSum.TaxAmountInCoCodeCrcy as abap.fltp) * (cast( abs(JournalEntryItem.AmountInCompanyCodeCurrency) as abap.fltp) / cast( JournalItemTaxSum.TotalGrossAmountInCoCodeCrcy as abap.fltp))) when SpecialGLAmountSum.AccountingDocument is not null and TaxSpGLSum.TaxAmountInCoCodeCrcy is not initial and JournalEntryItem.TransactionTypeDetermination = 'MWS' then ( cast( TaxSpGLSum.TaxAmountInCoCodeCrcy as abap.fltp) * (cast( abs(JournalEntryItem.AmountInCompanyCodeCurrency) as abap.fltp) / cast( SpecialGLAmountSum.AmountInCompanyCodeCurrency as abap.fltp))) else 0 end as TaxRatioCalculated AS fltpelse0endasTaxRatioCalculated,
case when TaxAmountSum.TaxBaseAmountInCoCodeCrcy is not initial and TaxAmountSum.TaxBaseAmountInCoCodeCrcy is not null and JournalItemTaxSum.TotalGrossAmountInCoCodeCrcy is not initial and JournalItemTaxSum.TotalGrossAmountInCoCodeCrcy is not null and JournalEntryItem.TransactionTypeDetermination = ' ' and JournalEntryItem.ReconciliationAccountType <> 'V' and JournalEntryItem.FinancialAccountType = 'S' and SpecialGLAmountSum.AccountingDocument is null then ( cast( TaxAmountSum.TaxBaseAmountInCoCodeCrcy as abap.fltp) * (cast( abs(JournalEntryItem.AmountInCompanyCodeCurrency) as abap.fltp) / cast( JournalItemTaxSum.TotalGrossAmountInCoCodeCrcy as abap.fltp))) when SpecialGLAmountSum.AccountingDocument is not null and TaxSpGLSum.TaxBaseAmountInCoCodeCrcy is not initial and JournalEntryItem.TransactionTypeDetermination = 'MWS' then ( cast( TaxSpGLSum.TaxBaseAmountInCoCodeCrcy as abap.fltp) * (cast( abs(JournalEntryItem.AmountInCompanyCodeCurrency) as abap.fltp) / cast( SpecialGLAmountSum.AmountInCompanyCodeCurrency as abap.fltp))) else 0 end as TaxBaseRatioCalculated AS fltpelse0endasTaxBaseRatioCalculated,
case when TaxAmountSum.TaxBaseAmountInTransCrcy is not initial and TaxAmountSum.TaxBaseAmountInTransCrcy is not null and JournalItemTaxSum.TotalGrossAmountInTransCrcy is not initial and JournalItemTaxSum.TotalGrossAmountInTransCrcy is not null and JournalEntryItem.TransactionTypeDetermination = ' ' and JournalEntryItem.ReconciliationAccountType <> 'V' and JournalEntryItem.FinancialAccountType = 'S' then ( cast( TaxAmountSum.TaxBaseAmountInTransCrcy as abap.fltp) * (cast( abs(JournalEntryItem.AmountInTransactionCurrency) as abap.fltp) / cast( JournalItemTaxSum.TotalGrossAmountInTransCrcy as abap.fltp))) else 0 end as TaxBaseRatioCalculatedTC AS fltpelse0endasTaxBaseRatioCalculatedTC,
cast( abs(round( JournalEntryItem.Quantity, 0)) as abap.int8 ) AS Quantity,
JournalEntryItem.CostCenter AS CostCenter,
JournalEntryItem.ControllingArea AS ControllingArea,
JournalEntryItem.CentralFinanceSalesDocument AS CentralFinanceSalesDocument,
JournalEntryItem.Customer AS Customer,
JournalEntryItem.Supplier AS Supplier,
JournalEntryItem.ReferenceDocumentType AS ReferenceDocumentType,
JournalEntryItem.LogicalSystem AS LogicalSystem,
JournalEntryItem.ReferenceSDDocument AS ReferenceSDDocument,
JournalEntryItem.ExchangeRate AS ExchangeRate,
JournalEntryItem._CompanyCode AS _CompanyCode,
JournalEntryItem._FiscalYear AS _FiscalYear,
JournalEntryItem._JournalEntry AS _JournalEntry,
JournalEntryItem._Ledger AS _Ledger,
JournalEntryItem._Supplier AS _Supplier,
JournalEntryItem._Customer AS _Customer,
JournalEntryItem._CustomerToBP AS _CustomerToBP,
JournalEntryItem._SupplierToBP AS _SupplierToBP,
JournalEntryItem._CFinPurchasingDocHistory AS _CFinPurchasingDocHistory,
JournalEntryItem._CompanyCodeCurrency AS _CompanyCodeCurrency,
JournalEntryItem._CostCenter AS _CostCenter,
JournalEntryItem._ControllingArea AS _ControllingArea
FROM I_SAFTJournalLineItem AS JournalEntryItem
;