P_SOFAProcFlow12

DDL: P_SOFAPROCFLOW12 SQL: PSOFAPROCF12 Type: view COMPOSITE Package: ODATA_SD_SOFA

SOFA Process Flow:: Level +1 Purchase Order

P_SOFAProcFlow12 is a Composite CDS View that provides data about "SOFA Process Flow:: Level +1 Purchase Order" in SAP S/4HANA. It reads from 3 data sources (I_PurOrdAccountAssignment, P_SDDocumentPurchOrdProcFlow, R_PurchaseOrderItem) and exposes 32 fields with key fields SalesDocument, SDDocumentCategory, PurchaseOrder, SDDocumentCategory, PurchaseOrder. Part of development package ODATA_SD_SOFA.

Data Sources (3)

SourceAliasJoin Type
I_PurOrdAccountAssignment POAccountAss inner
P_SDDocumentPurchOrdProcFlow ProcFlow inner
R_PurchaseOrderItem PurchaseOrderItem inner

Annotations (8)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
VDM.private true view
AccessControl.authorizationCheck #NOT_REQUIRED view
VDM.viewType #COMPOSITE view
AbapCatalog.sqlViewName PSOFAPROCF12 view

Fields (32)

KeyFieldSource TableSource FieldDescription
KEY SalesDocument SalesDocument
KEY SDDocumentCategory SDDocumentCategory
KEY PurchaseOrder P_SDDocumentPurchOrdProcFlow SubsequentDocument
SalesDocumentType SalesDocumentType
SalesOrganization SalesOrganization
DistributionChannel DistributionChannel
OrganizationDivision OrganizationDivision
OverallSDProcessStatus OverallSDProcessStatus
OverallTotalDeliveryStatus OverallTotalDeliveryStatus
OverallOrdReltdBillgStatus OverallOrdReltdBillgStatus
RequestedDeliveryDate RequestedDeliveryDate
OverallSDProcessStatus
SalesDocumentDate SalesDocumentDate
SalesGroup SalesGroup
SalesOffice SalesOffice
SoldToParty SoldToParty
KEY SDDocumentCategory SDDocumentCategory
KEY PurchaseOrder I_PurOrdAccountAssignment PurchaseOrder
SalesDocumentType SalesDocumentType
SalesOrganization SalesOrganization
DistributionChannel DistributionChannel
OrganizationDivision OrganizationDivision
OverallSDProcessStatus OverallSDProcessStatus
OverallTotalDeliveryStatus OverallTotalDeliveryStatus
OverallOrdReltdBillgStatus OverallOrdReltdBillgStatus
RequestedDeliveryDate RequestedDeliveryDate
OverallSDProcessStatus
SalesDocumentDate SalesDocumentDate
SalesGroup SalesGroup
SalesOffice SalesOffice
SoldToParty SoldToParty
PurchaseOrderByCustomer PurchaseOrderByCustomer
@ClientHandling.algorithm: #SESSION_VARIABLE 
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL

@VDM.private: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.viewType: #COMPOSITE
@AbapCatalog.sqlViewName: 'PSOFAPROCF12'

define view P_SOFAProcFlow12
as select distinct from  P_SOFAProcFlow00          as SalesDocument  --> Level 0
    inner join           P_SDDocumentPurchOrdProcFlow  as ProcFlow
     on SalesDocument.SalesDocument = ProcFlow.PrecedingDocument
{
  key  SalesDocument,
  key  SDDocumentCategory, 
  key  ProcFlow.SubsequentDocument as PurchaseOrder,
  
  SalesDocumentType,

  //Organization

  SalesOrganization,
  DistributionChannel,
  OrganizationDivision,

  OverallSDProcessStatus,
  OverallTotalDeliveryStatus, 
  OverallOrdReltdBillgStatus,
  
  //Misc

  RequestedDeliveryDate,
  --OverallSDProcessStatus,
  SalesDocumentDate,
  SalesGroup,
  SalesOffice,
  SoldToParty,
  PurchaseOrderByCustomer
  
}
where
      ProcFlow.PrecedingDocument != '000000' 
  and SalesDocument.SDDocumentCategory  = 'C' --> Order    
   or SalesDocument.SDDocumentCategory  = 'I' --> Order w/o charge     
   
union all select distinct from  P_SOFAProcFlow00          as SalesDocument  --> Level 0
    inner join           I_PurOrdAccountAssignment as POAccountAss 
     on SalesDocument.SalesDocument = POAccountAss.SalesOrder
     
    inner join            R_PurchaseOrderItem as PurchaseOrderItem
                          on POAccountAss.PurchaseOrder = PurchaseOrderItem.PurchaseOrder
                          and POAccountAss.PurchaseOrderItem = PurchaseOrderItem.PurchaseOrderItem
                          and PurchaseOrderItem.PurchasingDocumentItemOrigin != 'V'
{
  key  SalesDocument,
  key  SDDocumentCategory, 
  key  POAccountAss.PurchaseOrder,
  
  SalesDocumentType,

  //Organization

  SalesOrganization,
  DistributionChannel,
  OrganizationDivision,

  OverallSDProcessStatus,
  OverallTotalDeliveryStatus, 
  OverallOrdReltdBillgStatus,
  
  //Misc

  RequestedDeliveryDate,
  --OverallSDProcessStatus,
  SalesDocumentDate,
  SalesGroup,
  SalesOffice,
  SoldToParty,
  PurchaseOrderByCustomer
  
}
where
      POAccountAss.SalesOrderItem != '000000' 
  and SalesDocument.SDDocumentCategory  = 'C' --> Order    
   or SalesDocument.SDDocumentCategory  = 'I' --> Order w/o charge