P_WrkflwPurRequisitionItem
P_WrkflwPurRequisitionItem is a Consumption CDS View in SAP S/4HANA. It reads from 6 data sources and exposes 43 fields with key fields PurchaseRequisition, PurchaseRequisitionItem, PurchaseRequisitionItem.
Data Sources (6)
| Source | Alias | Join Type |
|---|---|---|
| I_Purchaserequisitionitem | PurchaseReqItem | from |
| I_Purchaserequisitionitem | PurchaseReqItem | union_all |
| I_PurchasingDocumentType | PurchasingDocumentType | inner |
| I_PurchasingDocumentType | PurchasingDocumentType | inner |
| P_PURREQNWORKFLOWAPPROVALTIME1 | WorkflowStatusOverview | inner |
| P_PURREQNWORKFLOWAPPROVALTIME1 | WorkflowStatusOverview | inner |
Parameters (3)
| Name | Type | Default |
|---|---|---|
| P_DisplayCurrency | displaycurrency | |
| P_StartDate | badat | |
| P_EndDate | badat |
Annotations (5)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | PWPURREQITEM | view | |
| VDM.viewType | #CONSUMPTION | view | |
| VDM.private | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view |
Fields (43)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PurchaseRequisition | I_Purchaserequisitionitem | PurchaseRequisition | |
| KEY | PurchaseRequisitionItem | I_Purchaserequisitionitem | PurchaseRequisitionItem | |
| PurchasingGroup | I_Purchaserequisitionitem | PurchasingGroup | ||
| PurchasingOrganization | I_Purchaserequisitionitem | PurchasingOrganization | ||
| CompanyCode | I_Purchaserequisitionitem | CompanyCode | ||
| Supplier | Supplier | |||
| Plant | I_Purchaserequisitionitem | Plant | ||
| Material | I_Purchaserequisitionitem | Material | ||
| MaterialGroup | I_Purchaserequisitionitem | MaterialGroup | ||
| AccountAssignmentCategory | I_Purchaserequisitionitem | AccountAssignmentCategory | ||
| PurReqCreationDate | PurReqCreationDate | |||
| CreatedByUser | I_Purchaserequisitionitem | CreatedByUser | ||
| PurReqnItemCurrency | I_Purchaserequisitionitem | PurReqnItemCurrency | ||
| PurReqnPriceQuantity | I_Purchaserequisitionitem | PurReqnPriceQuantity | ||
| PurchaseRequisitionType | PurchaseRequisitionType | |||
| ProcurementHubSourceSystem | I_Purchaserequisitionitem | ProcurementHubSourceSystem | ||
| RequestedQuantity | I_Purchaserequisitionitem | RequestedQuantity | ||
| WrkflwTskCreationUTCDateTime | WrkflwTskCreationUTCDateTime | |||
| WrkflwTskCompletionUTCDateTime | WrkflwTskCompletionUTCDateTime | |||
| ApprovalTime | ||||
| PurReqFlxblWrkflwApprvlLevel | ||||
| PurchaseRequisition | ||||
| KEY | PurchaseRequisitionItem | I_Purchaserequisitionitem | PurchaseRequisitionItem | |
| PurchasingGroup | I_Purchaserequisitionitem | PurchasingGroup | ||
| PurchasingOrganization | I_Purchaserequisitionitem | PurchasingOrganization | ||
| CompanyCode | I_Purchaserequisitionitem | CompanyCode | ||
| Supplier | Supplier | |||
| Plant | I_Purchaserequisitionitem | Plant | ||
| Material | I_Purchaserequisitionitem | Material | ||
| MaterialGroup | I_Purchaserequisitionitem | MaterialGroup | ||
| AccountAssignmentCategory | I_Purchaserequisitionitem | AccountAssignmentCategory | ||
| PurReqCreationDate | PurReqCreationDate | |||
| CreatedByUser | I_Purchaserequisitionitem | CreatedByUser | ||
| PurReqnItemCurrency | I_Purchaserequisitionitem | PurReqnItemCurrency | ||
| PurReqnPriceQuantity | I_Purchaserequisitionitem | PurReqnPriceQuantity | ||
| PurchaseRequisitionType | PurchaseRequisitionType | |||
| ProcurementHubSourceSystem | I_Purchaserequisitionitem | ProcurementHubSourceSystem | ||
| RequestedQuantity | I_Purchaserequisitionitem | RequestedQuantity | ||
| WrkflwTskCreationUTCDateTime | WrkflwTskCreationUTCDateTime | |||
| WrkflwTskCompletionUTCDateTime | WrkflwTskCompletionUTCDateTime | |||
| ApprovalTime | ||||
| PurReqFlxblWrkflwApprvlLevel | ||||
| TargetApprovalTime | TargetApprovalTime |
@AbapCatalog.sqlViewName: 'PWPURREQITEM'
@VDM.viewType: #CONSUMPTION
@VDM.private : true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
//@EndUserText.label: 'Purchase requisition with creation time'
define view P_WrkflwPurRequisitionItem
with parameters
P_DisplayCurrency : displaycurrency,
P_StartDate : badat,
P_EndDate : badat
as select from I_Purchaserequisitionitem as PurchaseReqItem
inner join I_PurchasingDocumentType as PurchasingDocumentType on PurchasingDocumentType.PurchasingDocumentCategory = PurchaseReqItem.PurchasingDocumentCategory
and PurchasingDocumentType.PurchasingDocumentType = PurchaseReqItem.PurchaseRequisitionType
inner join P_PURREQNWORKFLOWAPPROVALTIME1 as WorkflowStatusOverview on WorkflowStatusOverview.PurchaseRequisition = PurchaseReqItem.PurchaseRequisition
and WorkflowStatusOverview.PurchaseRequisitionItem = PurchaseReqItem.PurchaseRequisitionItem
{
key PurchaseReqItem.PurchaseRequisition,
key PurchaseReqItem.PurchaseRequisitionItem,
/* Org Data */
PurchaseReqItem.PurchasingGroup,
PurchaseReqItem.PurchasingOrganization,
PurchaseReqItem.CompanyCode,
/* Supplier */
Supplier,
/* Item Data */
PurchaseReqItem.Plant,
PurchaseReqItem.Material,
PurchaseReqItem.MaterialGroup,
PurchaseReqItem.AccountAssignmentCategory,
/*Dates*/
PurReqCreationDate,
PurchaseReqItem.CreatedByUser,
PurchaseReqItem.PurReqnItemCurrency,
cast( case when PurReqnItemCurrency = :P_DisplayCurrency
then division (PurchaseRequisitionPrice, PurReqnPriceQuantity,2)
else division(currency_conversion( amount => PurchaseRequisitionPrice ,
source_currency => PurReqnItemCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => PurReqCreationDate,
exchange_rate_type => 'M' ), PurReqnPriceQuantity,2)
end as bapre) as PurchaseRequisitionPrice,
PurchaseReqItem.PurReqnPriceQuantity,
PurchaseRequisitionType,
PurchaseReqItem.ProcurementHubSourceSystem,
PurchaseReqItem.RequestedQuantity,
WrkflwTskCreationUTCDateTime,
WrkflwTskCompletionUTCDateTime,
TSTMP_SECONDS_BETWEEN( WrkflwTskCreationUTCDateTime , WrkflwTskCompletionUTCDateTime , 'INITIAL' ) as ApprovalTime,
cast( 'I' as mmpur_ana_de_wrkfl_appr_level ) as PurReqFlxblWrkflwApprvlLevel,
TargetApprovalTime
}
where
(
PurchaseReqItem.PurReqnReleaseStatus = '05'
or PurchaseReqItem.PurReqnReleaseStatus = '08'
)
and ( PurchaseReqItem.IsOutline = '' or PurchaseReqItem.Material <> '' )
and PurReqnPriceQuantity > 0
// and PurReqCreationDate != '00000000'
and PurchasingDocumentType.PurgHasFlxblWorkflowApproval = 'X'
and PurReqCreationDate <= $parameters.P_EndDate
and PurReqCreationDate >= $parameters.P_StartDate
union all select from I_Purchaserequisitionitem as PurchaseReqItem
inner join I_PurchasingDocumentType as PurchasingDocumentType on PurchasingDocumentType.PurchasingDocumentCategory = PurchaseReqItem.PurchasingDocumentCategory
and PurchasingDocumentType.PurchasingDocumentType = PurchaseReqItem.PurchaseRequisitionType
inner join P_PURREQNWORKFLOWAPPROVALTIME1 as WorkflowStatusOverview on WorkflowStatusOverview.PurchaseRequisition = PurchaseReqItem.PurchaseRequisition
and WorkflowStatusOverview.PurchaseRequisitionItem = ''
{
key PurchaseReqItem.PurchaseRequisition,
key PurchaseReqItem.PurchaseRequisitionItem,
/* Org Data */
PurchaseReqItem.PurchasingGroup,
PurchaseReqItem.PurchasingOrganization,
PurchaseReqItem.CompanyCode,
/* Supplier */
Supplier,
/* Item Data */
PurchaseReqItem.Plant,
PurchaseReqItem.Material,
PurchaseReqItem.MaterialGroup,
PurchaseReqItem.AccountAssignmentCategory,
/*Dates*/
PurReqCreationDate,
PurchaseReqItem.CreatedByUser,
PurchaseReqItem.PurReqnItemCurrency,
cast( case when PurReqnItemCurrency = :P_DisplayCurrency
then division (PurchaseRequisitionPrice, PurReqnPriceQuantity,2)
else division(currency_conversion( amount => PurchaseRequisitionPrice ,
source_currency => PurReqnItemCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => PurReqCreationDate,
exchange_rate_type => 'M' ), PurReqnPriceQuantity,2)
end as bapre) as PurchaseRequisitionPrice,
PurchaseReqItem.PurReqnPriceQuantity,
PurchaseRequisitionType,
PurchaseReqItem.ProcurementHubSourceSystem,
PurchaseReqItem.RequestedQuantity,
WrkflwTskCreationUTCDateTime,
WrkflwTskCompletionUTCDateTime,
TSTMP_SECONDS_BETWEEN( WrkflwTskCreationUTCDateTime , WrkflwTskCompletionUTCDateTime , 'INITIAL' ) as ApprovalTime,
cast ( 'H' as mmpur_ana_de_wrkfl_appr_level ) as PurReqFlxblWrkflwApprvlLevel,
TargetApprovalTime
}
where
(
PurchaseReqItem.PurReqnReleaseStatus = '05'
or PurchaseReqItem.PurReqnReleaseStatus = '08'
)
and ( PurchaseReqItem.IsOutline = '' or PurchaseReqItem.Material <> '' )
and PurReqnPriceQuantity > 0
// and PurReqCreationDate != '00000000'
and PurchasingDocumentType.PurgHasFlxblWorkflowApproval = 'X'
and PurReqCreationDate <= $parameters.P_EndDate
and PurReqCreationDate >= $parameters.P_StartDate
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PURCHASEREQUISITIONITEM",
"I_PURCHASINGDOCUMENTTYPE",
"P_PURREQNWORKFLOWAPPROVALTIME1"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA