@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #S
@VDM.private: true
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #NOT_REQUIRED
@AbapCatalog.sqlViewName : 'PSOFProcFlow1'
define view P_SlsOrdFlfmtProcessFlow1
as select from
I_SalesDocument as SalesDocument
left outer to many join
I_SDDocumentProcessFlow as ProcFlow
on
SalesDocument.SalesDocument = ProcFlow.PrecedingDocument
and (PrecedingDocumentCategory = 'C' or --> Order
PrecedingDocumentCategory = 'I' or --> Order w/o charge
PrecedingDocumentCategory = 'L' --> Debit Memo Request)
)
and (
SubsequentDocumentCategory = 'M' or --> Invoice
SubsequentDocumentCategory = 'J' or --> Delivery
SubsequentDocumentCategory = 'O' or --> Credit Memo
SubsequentDocumentCategory = 'P' or --> Debit Memo
SubsequentDocumentCategory = 'I' or --> Order w/o charge
SubsequentDocumentCategory = 'L' --> Debit Memo Request
)
left outer to one join
I_DeliveryDocument as DeliveryDocument
on
SubsequentDocument = DeliveryDocument.DeliveryDocument
and SubsequentDocumentCategory = DeliveryDocument.SDDocumentCategory
{
//Key
key SubsequentDocument as Level1Document,
key SubsequentDocumentItem as Level1DocumentItem,
//SalesOrder
key cast (SalesDocument as vdm_sales_order) as SalesOrder,
SalesDocumentType as SalesOrderType,
//Category
SubsequentDocumentCategory as Level1DocumentCategory,
SalesDocument.SDDocumentCategory as SalesOrderCategory,
//Organization
SalesDocument.SalesOrganization,
SalesDocument.DistributionChannel,
SalesDocument.OrganizationDivision,
//Partner
SalesDocument.SoldToParty,
cast (SalesDocument._SoldToParty.CustomerName as vdm_sold_to_name) as SoldToPartyName,
//Status
case when
(
OverallTotalDeliveryStatus = 'A' or
OverallTotalDeliveryStatus = 'B'
)
then
'X'
else
''
end as DeliveryDocumentIsRequired,
case when
(
OverallOrdReltdBillgStatus = 'A' or
OverallOrdReltdBillgStatus = 'B' or
OverallDelivReltdBillgStatus = 'A' or
OverallDelivReltdBillgStatus = 'B'
)
then
'X'
else
''
end as BillingDocumentIsRequired
}
where ( SalesDocument.SDDocumentCategory = 'C' or --> Order
SalesDocument.SDDocumentCategory = 'I' or --> Order w/o charge
SalesDocument.SDDocumentCategory = 'L' ) --> Debit Memo Request
/*+[internal] {
"BASEINFO":
{
"FROM ":
[
"I_CUSTOMER",
"I_DELIVERYDOCUMENT",
"I_SALESDOCUMENT",
"I_SDDOCUMENTPROCESSFLOW"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Depth:
1
2
3
4
5
All
Reload
P_SlsOrdFlfmtProcessFlow1 view