SRF_RUHelperVATReturn_Link

DDL: SRF_RUHELPERVATRETURN_LINK SQL: SRFRUHELPVRL Type: view

SRF_RUHelperVATReturn_Link is a CDS View in SAP S/4HANA. It reads from 1 data source (I_SAPClient).

Data Sources (1)

SourceAliasJoin Type
I_SAPClient I_SAPClient from

Parameters (6)

NameTypeDefault
P_IncomingInvoiceDate datum
P_AmountInTransCrcy aflex17d2o23s
P_TaxAmountInTransCrcy aflex17d2o23s
P_AmountDiffInTransCrcy aflex17d2o23s
P_TaxAmountDiffInTransCrcy aflex17d2o23s
P_PositiveNegativeLine char1

Annotations (5)

NameValueLevelField
AbapCatalog.sqlViewName SRFRUHELPVRL view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_ALLOWED view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #P view
@AbapCatalog.sqlViewName: 'SRFRUHELPVRL'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_ALLOWED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.serviceQuality: #P
define view  SRF_RUHelperVATReturn_Link with parameters
    P_IncomingInvoiceDate      : datum,
    P_AmountInTransCrcy        : aflex17d2o23s,
    P_TaxAmountInTransCrcy     : aflex17d2o23s,
    P_AmountDiffInTransCrcy    : aflex17d2o23s,
    P_TaxAmountDiffInTransCrcy : aflex17d2o23s,
    P_PositiveNegativeLine     : char1
        
  as select from I_SAPClient //dummy select, CDS view only used for calculations

{
  
  case $parameters.P_IncomingInvoiceDate
       when '00000000' then ''
       when '' then ''
       else concat( substring(cast($parameters.P_IncomingInvoiceDate as char8),7,2),
                    concat('.',
                            concat( substring(cast($parameters.P_IncomingInvoiceDate as char8),5,2),
                                    concat('.',substring(cast($parameters.P_IncomingInvoiceDate as char8),1,4))
                                  )
                          )
                  )
  end                                                                                                                   as IncomingInvoiceDate,
  
  case $parameters.P_PositiveNegativeLine
       when 'N' then -abs($parameters.P_AmountInTransCrcy)                                                       
                else abs($parameters.P_AmountInTransCrcy)
  end                                                                                                                   as AmountInTransCrcy,

  case $parameters.P_PositiveNegativeLine
       when 'N' then -abs($parameters.P_TaxAmountInTransCrcy)                                         
                else abs($parameters.P_TaxAmountInTransCrcy)
  end                                                                                                                   as TaxAmountInTransCrcy,

  //increase amounts

  case $parameters.P_PositiveNegativeLine
       when 'N' then case $parameters.P_TaxAmountDiffInTransCrcy + abs($parameters.P_TaxAmountDiffInTransCrcy)
                          when 0 then -abs($parameters.P_AmountDiffInTransCrcy)                                                   
                          else 0
                     end
                else case $parameters.P_TaxAmountDiffInTransCrcy + abs($parameters.P_TaxAmountDiffInTransCrcy)
                          when 0 then 0
                          else abs($parameters.P_AmountDiffInTransCrcy)                                                    
                     end
  end                                                                                                                   as AmountIncrInTransCrcy,


  case $parameters.P_PositiveNegativeLine
       when 'N' then case $parameters.P_TaxAmountDiffInTransCrcy + abs($parameters.P_TaxAmountDiffInTransCrcy)
                          when 0 then -abs($parameters.P_TaxAmountDiffInTransCrcy)                                
                          else 0
                     end
                else case $parameters.P_TaxAmountDiffInTransCrcy + abs($parameters.P_TaxAmountDiffInTransCrcy)
                          when 0 then 0
                          else abs($parameters.P_TaxAmountDiffInTransCrcy)                                                 
                     end
  end                                                                                                                   as TaxIncrInTransCrcy,

  //decrease amounts

  case $parameters.P_PositiveNegativeLine
       when 'N' then case $parameters.P_TaxAmountDiffInTransCrcy + abs($parameters.P_TaxAmountDiffInTransCrcy)
                          when 0 then 0
                          else -abs($parameters.P_AmountDiffInTransCrcy)                                         
                      end
                else case $parameters.P_TaxAmountDiffInTransCrcy + abs($parameters.P_TaxAmountDiffInTransCrcy)
                          when 0 then abs($parameters.P_AmountDiffInTransCrcy)                                          
                          else 0
                      end
  end                                                                                                                   as AmountDecrInTransCrcy,

  case $parameters.P_PositiveNegativeLine
       when 'N' then case $parameters.P_TaxAmountDiffInTransCrcy + abs($parameters.P_TaxAmountDiffInTransCrcy)
                          when 0 then 0
                          else -abs($parameters.P_TaxAmountDiffInTransCrcy)                   
                     end
                 else case $parameters.P_TaxAmountDiffInTransCrcy + abs($parameters.P_TaxAmountDiffInTransCrcy)
                           when 0 then abs($parameters.P_TaxAmountDiffInTransCrcy)                      
                           else 0
                      end
  end                                                                                                                   as TaxDecrInTransCrcy
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_SAPCLIENT"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/