P_REFUNDEDQUANTITY

CDS View

P_REFUNDEDQUANTITY is a CDS View in S/4HANA. It contains 2 fields. 1 CDS views read from this table.

CDS Views using this table (1)

ViewTypeJoinVDMDescription
P_RefundedQuantitySum view from CONSUMPTION

Fields (2)

KeyField CDS FieldsUsed in Views
KEY CustomerReturn CustomerReturn 1
KEY CustomerReturnItem CustomerReturnItem 1
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.sqlViewName: 'PRFNDEDQTY'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@VDM.private: true
@VDM.viewType: #CONSUMPTION
@AccessControl.authorizationCheck: #NOT_REQUIRED

// This private view is used to calculate the refunded quantity

// SalesDocumentItemBasic needs to be used to reduce complexity

// ARM SDF is different from Lean Customer's sales order without charge


define view P_RefundedQuantity 
// Collect data of refunding with CMR

  as select from I_SalesDocumentItemBasic as CreditMemoRequestItem
  inner join I_SalesDocumentItemBasic     as CustomerReturnItem     on CustomerReturnItem.SalesDocument     = CreditMemoRequestItem.ReferenceSDDocument
                                                                   and CustomerReturnItem.SalesDocumentItem = CreditMemoRequestItem.ReferenceSDDocumentItem
                                                                   and CreditMemoRequestItem.ReferenceSDDocumentCategory = 'H'
  inner join I_SalesDocumentBasic         as CreditMemoRequest      on CreditMemoRequest.SalesDocument = CreditMemoRequestItem.SalesDocument 
  inner join I_SalesDocumentBasic         as CustomerReturn         on CustomerReturn.SalesDocument    = CustomerReturnItem.SalesDocument 
  
 {
        key CustomerReturnItem.SalesDocument                        as CustomerReturn,
        key CustomerReturnItem.SalesDocumentItem                    as CustomerReturnItem,
        key CreditMemoRequestItem.SalesDocument                     as SalesDocument,
        key CreditMemoRequestItem.SalesDocumentItem                 as SalesDocumentItem,
        
        CustomerReturnItem.OrderQuantity                            as ReturnQuantity,
        CustomerReturnItem.OrderQuantityUnit                        as ReturnQuantityUnit,
        CustomerReturnItem.BaseUnit                                 as ReturnBaseUnit,
        
        CreditMemoRequestItem.TargetQuantity                        as CustReturnItmRefundedQty,
        CreditMemoRequestItem.TargetQuantityUnit                    as RefundedQuantityUnit,
        CreditMemoRequestItem.RequestedQuantityInBaseUnit           as RefundedQuantityInBaseUnit,
        CreditMemoRequestItem.BaseUnit
               
} 
where CustomerReturn.SDDocumentCategory = 'H' 
  and CreditMemoRequest.SDDocumentCategory = 'K'

union  
// Collect data of refunding with SDF

  select from I_AdvncdRetsMgmtProcExecuted as AdvncdRetsMgmtProcExecuted
  inner join I_CustomerReturnItem          as  CustomerReturnItem     on CustomerReturnItem.RetsMgmtProcess    = AdvncdRetsMgmtProcExecuted.RetsMgmtProcess                                                                          
                                                                     and CustomerReturnItem.CustomerReturnItem = AdvncdRetsMgmtProcExecuted.RetsMgmtProcessItem
{
  key CustomerReturnItem.CustomerReturn                               as CustomerReturn,
  key CustomerReturnItem.CustomerReturnItem                           as CustomerReturnItem,
  key AdvncdRetsMgmtProcExecuted.ReturnsDocument                      as SalesDocument,
  key right(AdvncdRetsMgmtProcExecuted.ReturnsDocumentItem, 6)        as SalesDocumentItem,
  
      CustomerReturnItem.OrderQuantity                                as ReturnQuantity,
      CustomerReturnItem.OrderQuantityUnit                            as ReturnQuantityUnit,
      CustomerReturnItem.BaseUnit                                     as ReturnBaseUnit,

      (DIVISION (AdvncdRetsMgmtProcExecuted.ReplacedMaterialQuantity * CustomerReturnItem.OrderToBaseQuantityDnmntr, CustomerReturnItem.OrderToBaseQuantityNmrtr,3))  as CustReturnItmRefundedQty,
      CustomerReturnItem.OrderQuantityUnit                            as RefundedQuantityUnit,
      AdvncdRetsMgmtProcExecuted.ReplacedMaterialQuantity             as RefundedQuantityInBaseUnit,
      AdvncdRetsMgmtProcExecuted.ReplacedMaterialQtyUnit              as BaseUnit
      
} 
where AdvncdRetsMgmtProcExecuted.RetsMgmtProcessStep = '1211'
  and AdvncdRetsMgmtProcExecuted.ReturnsDocumentType = '13'   

union  
// Collect data of refunding with Credit Memo directly

  select from I_AdvncdRetsMgmtProcExecuted as  AdvncdRetsMgmtProcExecuted
  inner join I_CustomerReturnItem          as  CustomerReturnItem     on CustomerReturnItem.RetsMgmtProcess    = AdvncdRetsMgmtProcExecuted.RetsMgmtProcess                                                                          
                                                                     and CustomerReturnItem.CustomerReturnItem = AdvncdRetsMgmtProcExecuted.RetsMgmtProcessItem
{
  key CustomerReturnItem.CustomerReturn                               as CustomerReturn,
  key CustomerReturnItem.CustomerReturnItem                           as CustomerReturnItem,
  key AdvncdRetsMgmtProcExecuted.ReturnsDocument                      as SalesDocument,
  key right(AdvncdRetsMgmtProcExecuted.ReturnsDocumentItem, 6)        as SalesDocumentItem,
  
      CustomerReturnItem.OrderQuantity                                as ReturnQuantity,
      CustomerReturnItem.OrderQuantityUnit                            as ReturnQuantityUnit,
      CustomerReturnItem.BaseUnit                                     as ReturnBaseUnit,
     
      CustomerReturnItem.OrderQuantity                                as CustReturnItmRefundedQty,
      CustomerReturnItem.OrderQuantityUnit                            as RefundedQuantityUnit,
      CustomerReturnItem.RequestedQuantityInBaseUnit                  as RefundedQuantityInBaseUnit,
      CustomerReturnItem.BaseUnit                                     as BaseUnit
} 
where AdvncdRetsMgmtProcExecuted.ReturnsDocumentType          = '10'
  and AdvncdRetsMgmtProcExecuted.ReturnsReferenceDocumentType = '00'
  and AdvncdRetsMgmtProcExecuted.ReturnsReferenceDocument     = CustomerReturnItem.CustomerReturn
  and AdvncdRetsMgmtProcExecuted.ReturnsDocumentStatus        = ''

  
  
  
  
  
 /*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ADVNCDRETSMGMTPROCEXECUTED",
"I_CUSTOMERRETURNITEM",
"I_SALESDOCUMENTBASIC",
"I_SALESDOCUMENTITEMBASIC"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/