P_REQNTOORDERCYCLETIME2
Requisition To Order Cycle Time 2
P_REQNTOORDERCYCLETIME2 is a CDS View in S/4HANA. Requisition To Order Cycle Time 2. 1 CDS views read from this table.
CDS Views using this table (1)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| C_ReqnToOrderCycleTime | view | from | CONSUMPTION | Requisition To Order Cycle Time |
@AbapCatalog.sqlViewName: 'PMMREQORDCYCL2'
@ClientDependent: true
@AbapCatalog.compiler.compareFilter: true
@VDM.viewType: #CONSUMPTION
@VDM.private : true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
define view P_ReqnToOrderCycleTime2
with parameters
P_DisplayCurrency : displaycurrency,
P_StartDate : badat,
P_EndDate : badat
as select from P_PurchaseReqnItms(P_StartDate : $parameters.P_StartDate,
P_EndDate : $parameters.P_EndDate ) as PurchaseReqItem
inner join P_PurchaseOrderOutputStatus2(P_StartDate : $parameters.P_StartDate,
P_EndDate : $parameters.P_EndDate) as MessageHeader on MessageHeader.PurchaseRequisition = PurchaseReqItem.PurchaseRequisition
and MessageHeader.PurchaseRequisitionItem = PurchaseReqItem.PurchaseRequisitionItem
// inner join P_PRToFirstPurchasOrder1(P_StartDate : $parameters.P_StartDate,
// P_EndDate : $parameters.P_EndDate) as PurchaseOrderItem on PurchaseOrderItem.PurchaseRequisition = PurchaseReqItem.PurchaseRequisition
// and PurchaseOrderItem.PurchaseRequisitionItem = PurchaseReqItem.PurchaseRequisitionItem
// inner join P_PurchaseOrderOutputStatus1 as MessageHeader on PurchaseOrderItem.PurchaseOrder = MessageHeader.PurchaseOrder
// left outer to one join I_CalendarDate as CalendarDate on PurchaseReqItem.PurReqCreationDate = CalendarDate.CalendarDate
association [0..1] to I_Supplier as _Supplier on $projection.FixedSupplier = _Supplier.Supplier
{
key PurchaseReqItem.PurchaseRequisition,
key PurchaseReqItem.PurchaseRequisitionItem,
MessageHeader.PurchaseOrder,
/* Org Data */
PurchaseReqItem.PurchasingGroup,
PurchaseReqItem.PurchasingOrganization,
/* Supplier */
cast(PurchaseReqItem.FixedSupplier as md_supplier) as Supplier,
FixedSupplier,
cast( _Supplier._StandardAddress._Country.Country as mm_a_supplier_country ) as SupplierCountry,
/* Item Data */
PurchaseReqItem.Material,
PurchaseReqItem.MaterialGroup,
PurchaseReqItem.Plant,
PurchaseReqItem.ReleaseCode,
PurchaseReqItem.PurchaseRequisitionStatus,
PurchaseReqItem.ReleaseStrategy,
PurchaseReqItem.AccountAssignmentCategory,
PurchaseReqItem.MultipleAcctAssgmtDistribution,
/*Dates*/
PurReqCreationDate,
PurchaseReqItem.CreatedByUser,
PurchaseRequisitionType,
PurchaseReqItem.PurReqnItemCurrency,
PurchaseReqItem.PurReqnPriceQuantity,
PurchaseReqItem.RequestedQuantity,
// case when PurReqnPriceQuantity > 0 and PurReqnItemCurrency != ''
// then
cast(currency_conversion(
amount => PurchaseRequisitionPrice ,
source_currency => PurReqnItemCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => PurchaseReqItem.PurReqCreationDate,
exchange_rate_type => 'M'
) as abap.curr(21,5) ) *
division (RequestedQuantity, PurchaseReqItem.PurReqnPriceQuantity,5) as PurchaseRequisitionPrice, //2897312
// else 0
// end
MessageHeader.PostingDate as ProcessingDate,
case when PurReqCreationDate is not null
then (dats_days_between(PurReqCreationDate, MessageHeader.PostingDate))
else 0
end as CycleTime
}
where
PurReqnPriceQuantity > 0
and PurReqnItemCurrency != ''
union all select from P_PurchaseReqnItms(P_StartDate : $parameters.P_StartDate,
P_EndDate : $parameters.P_EndDate ) as PurchaseReqItem
inner join P_PurchaseOrderOutputStatus2(P_StartDate : $parameters.P_StartDate,
P_EndDate : $parameters.P_EndDate) as MessageHeader on MessageHeader.PurchaseRequisition = PurchaseReqItem.PurchaseRequisition
and MessageHeader.PurchaseRequisitionItem = PurchaseReqItem.PurchaseRequisitionItem
// inner join P_PRToFirstPurchasOrder1(P_StartDate : $parameters.P_StartDate,
// P_EndDate : $parameters.P_EndDate) as PurchaseOrderItem on PurchaseOrderItem.PurchaseRequisition = PurchaseReqItem.PurchaseRequisition
// and PurchaseOrderItem.PurchaseRequisitionItem = PurchaseReqItem.PurchaseRequisitionItem
// inner join P_PurchaseOrderOutputStatus1 as MessageHeader on PurchaseOrderItem.PurchaseOrder = MessageHeader.PurchaseOrder
// left outer to one join I_CalendarDate as CalendarDate on PurchaseReqItem.PurReqCreationDate = CalendarDate.CalendarDate
association [0..1] to I_Supplier as _Supplier on $projection.FixedSupplier = _Supplier.Supplier
{
key PurchaseReqItem.PurchaseRequisition,
key PurchaseReqItem.PurchaseRequisitionItem,
MessageHeader.PurchaseOrder,
/* Org Data */
PurchaseReqItem.PurchasingGroup,
PurchaseReqItem.PurchasingOrganization,
/* Supplier */
cast(PurchaseReqItem.FixedSupplier as md_supplier) as Supplier,
FixedSupplier,
cast( _Supplier._StandardAddress._Country.Country as mm_a_supplier_country ) as SupplierCountry,
/* Item Data */
PurchaseReqItem.Material,
PurchaseReqItem.MaterialGroup,
PurchaseReqItem.Plant,
PurchaseReqItem.ReleaseCode,
PurchaseReqItem.PurchaseRequisitionStatus,
PurchaseReqItem.ReleaseStrategy,
PurchaseReqItem.AccountAssignmentCategory,
PurchaseReqItem.MultipleAcctAssgmtDistribution,
/*Dates*/
PurReqCreationDate,
PurchaseReqItem.CreatedByUser,
PurchaseRequisitionType,
PurchaseReqItem.PurReqnItemCurrency,
PurchaseReqItem.PurReqnPriceQuantity,
PurchaseReqItem.RequestedQuantity,
0 as PurchaseRequisitionPrice,
MessageHeader.PostingDate as ProcessingDate,
case when PurReqCreationDate is not null
then (dats_days_between(PurReqCreationDate, MessageHeader.PostingDate))
else 0
end as CycleTime
}
where
PurReqnPriceQuantity <= 0
or PurReqnItemCurrency = ''