I_SALESORDERINDELIVINCOMPLETE

CDS View

SOFM Incompleteness In Delivery

I_SALESORDERINDELIVINCOMPLETE is a CDS View in S/4HANA. SOFM Incompleteness In Delivery. It contains 4 fields. 2 CDS views read from this table.

CDS Views using this table (2)

ViewTypeJoinVDMDescription
C_DelivDocItemIncomplete view inner CONSUMPTION Delivery Doc Item Incomplete Data
I_DelivDocumentItemIncomplete view inner COMPOSITE SOFM Incomplete Delivery Document Item

Fields (4)

KeyField CDS FieldsUsed in Views
DistributionChannel DistributionChannel 1
DueDays DueDays 1
OrganizationDivision OrganizationDivision 1
SalesOrganization SalesOrganization 1
@ClientHandling.algorithm: #SESSION_VARIABLE 
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #S

@EndUserText.label:  'SOFM Incompleteness In Delivery'
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #CHECK
@AbapCatalog.sqlViewName: 'ISOFISSUEDE03'
                      

/*
DOCUMENTATION 
---------------------------------

  Note (added 27.9.2019 by AT):
  -replace union construction by non-union construction, but
   with some more boolean logic in 
       - calculation of DeliveryDocumentItem
       - where condition 
  -very below is the old coding until then (with union) 
*/

--AT11.08.2020 for all issues: VBKD-BSTKD (PurchaseOrderBYCustomer) no longer provided by issues (no true hdr attribute & too expensive)

define view I_SalesOrderInDelivIncomplete
//with parameters

//  @Consumption.hidden: true

//  @Environment.systemField: #SYSTEM_DATE

//  P_ReferenceDate : sydate


as select distinct from  P_SalesOrderInDelivDueDate     --DeliveryDocumentHeader Granularity

{
   //Key

  key cast(SalesOrder as vdm_sales_order) as SalesOrder,      
  key cast(DeliveryDocument as outbound_delivery) as DeliveryDocument,    
  --key cast('000000' as outbound_delivery_item) as DeliveryDocumentItem, 
//   key DeliveryDocumentItem,


  key case when --AT27.09.2019 complexity reduction: replace "union"
    ( HdrGeneralIncompletionStatus = 'A'  or HdrGeneralIncompletionStatus  = 'B'   or
      HeaderDelivIncompletionStatus = 'A'  or HeaderDelivIncompletionStatus = 'B'   or
      HdrGoodsMvtIncompletionStatus = 'A'  or HdrGoodsMvtIncompletionStatus = 'B'   or
      HeaderPackingIncompletionSts  = 'A'  or HeaderPackingIncompletionSts  = 'B'   or
      HeaderPickgIncompletionStatus = 'A'  or HeaderPickgIncompletionStatus = 'B' )
    then cast('000000' as outbound_delivery_item)
    else cast(DeliveryDocumentItem as outbound_delivery_item)
   end
  as DeliveryDocumentItem,

  //Issue

  cast('DE03'as issue_sof)   as Issue,
  cast('20_DE' as issue_cat) as IssueCategory,       

  @DefaultAggregation: #MIN
  cast(Dats_Days_Between( cast($session.system_date as dats), DueDate ) as due_days) as DueDays,        
  
   //Counter

  --cast(0 as ITEMS_IN_DELIVERY) as NmbrOfItemsInDelivery,
  cast( cast( 0 as abap.int4 ) as items_in_delivery )  as NmbrOfItemsInDelivery,
        
  //Organization

  SalesOrganization,
  DistributionChannel,
  OrganizationDivision,
  //Misc

   RequestedDeliveryDate,
   OverallSDProcessStatus,
   SalesDocumentDate,
   SalesGroup,
   SalesOffice,
   SoldToParty,
   --PurchaseOrderByCustomer,
  
  //Category

  SalesDocumentType as SalesOrderType    
 }
  where
  ( --Header/likp criteria
   (HdrGeneralIncompletionStatus  = 'A'  or HdrGeneralIncompletionStatus  = 'B'   or
    HeaderDelivIncompletionStatus = 'A'  or HeaderDelivIncompletionStatus = 'B'   or
    HdrGoodsMvtIncompletionStatus = 'A'  or HdrGoodsMvtIncompletionStatus = 'B'   or
    HeaderPackingIncompletionSts  = 'A'  or HeaderPackingIncompletionSts  = 'B'   or
    HeaderPickgIncompletionStatus = 'A'  or HeaderPickgIncompletionStatus = 'B' 
   ) and  
   (OverallGoodsMovementStatus = 'A'      or OverallGoodsMovementStatus    = 'B' ) and
   (GoodsMovementStatus = 'A'             or GoodsMovementStatus           = 'B' )
  ) 
  or
  ( --Item/lips criteria
   (ItemGeneralIncompletionStatus  = 'A'  or ItemGeneralIncompletionStatus  = 'B'  or
    ItemBillingIncompletionStatus =  'A'  or ItemBillingIncompletionStatus  = 'B'  or
    ItemPackingIncompletionStatus =  'A'  or ItemPackingIncompletionStatus  = 'B'  or
    ItemPickingIncompletionStatus  = 'A'  or ItemPickingIncompletionStatus  = 'B'  or
    ItemDeliveryIncompletionStatus = 'A'  or ItemDeliveryIncompletionStatus = 'B'  or  
    ItemGdsMvtIncompletionSts =      'A'  or ItemGdsMvtIncompletionSts      = 'B' 
   ) and  
   (GoodsMovementStatus = 'A'             or GoodsMovementStatus             = 'B' )
  )
 

--AT27.09.2019 complexity reduction: replace "union""  
//as select distinct from  P_SalesOrderInDelivDueDate     --DeliveryDocumentHeader Granularity

//

//{

//   //Key

//  key cast(SalesOrder as vdm_sales_order) as SalesOrder,      

//  key cast(DeliveryDocument as outbound_delivery) as DeliveryDocument,    

//  key cast('000000' as outbound_delivery_item) as DeliveryDocumentItem, 

//                    

//  //Issue

//  cast('DE03'as issue_sof)   as Issue,

//  cast('20_DE' as issue_cat) as IssueCategory,       

//

//  @DefaultAggregation: #MIN

//  cast(Dats_Days_Between( cast($session.system_date as dats), DueDate ) as due_days) as DueDays,        

//  

//   //Counter

//  --cast(0 as ITEMS_IN_DELIVERY) as NmbrOfItemsInDelivery,

//  cast( cast( 0 as abap.int4 ) as items_in_delivery )  as NmbrOfItemsInDelivery,

//        

//  //Organization

//  SalesOrganization,

//  DistributionChannel,

//  OrganizationDivision,

//  //Misc

//   RequestedDeliveryDate,

//   OverallSDProcessStatus,

//   SalesDocumentDate,

//   SalesGroup,

//   SalesOffice,

//   SoldToParty,

//   PurchaseOrderByCustomer,

//  

//  //Category

//  SalesDocumentType as SalesOrderType    

// }

//  where

//  ( HdrGeneralIncompletionStatus  = 'A'  or HdrGeneralIncompletionStatus  = 'B'   or

//    HeaderDelivIncompletionStatus = 'A'  or HeaderDelivIncompletionStatus = 'B'   or

//    HdrGoodsMvtIncompletionStatus = 'A'  or HdrGoodsMvtIncompletionStatus = 'B'   or

//    HeaderPackingIncompletionSts  = 'A'  or HeaderPackingIncompletionSts  = 'B'   or

//    HeaderPickgIncompletionStatus = 'A'  or HeaderPickgIncompletionStatus = 'B' ) and  

//  (OverallGoodsMovementStatus = 'A'      or OverallGoodsMovementStatus    = 'B' ) and

//  (GoodsMovementStatus = 'A'             or GoodsMovementStatus           = 'B' )

//

//  

//  union all                   

//select distinct from  P_SalesOrderInDelivItmDueDate  --DeliveryDocumentItem Granularity

//{

//  //Key

//  key SalesOrder,        

//  key DeliveryDocument,     

//  key DeliveryDocumentItem,

//                    

//  //Issue

//  cast('DE03'as issue_sof)   as Issue,

//  cast('20_DE' as issue_cat) as IssueCategory,       

//

//  @DefaultAggregation: #MIN

//  cast(Dats_Days_Between( cast($session.system_date as dats), DueDate ) as due_days) as DueDays,      

//  

//  //Counter

//  --cast(1 as ITEMS_IN_DELIVERY) as NmbrOfItemsInDelivery,  

//  cast( cast( 1 as abap.int4 ) as items_in_delivery )  as NmbrOfItemsInDelivery,

//        

//  //Organization

//  SalesOrganization,

//  DistributionChannel,

//  OrganizationDivision,

//  

//  //Misc

//   RequestedDeliveryDate,

//   OverallSDProcessStatus,

//   SalesDocumentDate,

//   SalesGroup,

//   SalesOffice,

//   SoldToParty,

//   PurchaseOrderByCustomer,

//  

//  //Category

//  SalesDocumentType as SalesOrderType    

//   

//}

//

//where

//  ( ItemGeneralIncompletionStatus  = 'A'  or ItemGeneralIncompletionStatus  = 'B'  or

//    ItemBillingIncompletionStatus =  'A'  or ItemBillingIncompletionStatus  = 'B'  or

//    ItemPackingIncompletionStatus =  'A'  or ItemPackingIncompletionStatus  = 'B'  or

//    ItemPickingIncompletionStatus  = 'A'  or ItemPickingIncompletionStatus  = 'B'  or

//    ItemDeliveryIncompletionStatus = 'A'  or ItemDeliveryIncompletionStatus = 'B'  or  

//    ItemGdsMvtIncompletionSts =      'A'  or ItemGdsMvtIncompletionSts      = 'B' ) and  

//  (GoodsMovementStatus = 'A'             or GoodsMovementStatus             = 'B' )

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