Model: Procurement - Specifications for Fact Table: PURCHASE ORDER LINE

On this page you will find the specifications regarding the Model: Procurement and Fact Table: PURCHASE ORDER LINE.

This model fact represents purchase order line and is based on the IFS Cloud fact view FACT_PURCHASE_ORDER_LINE. All models that refer to this table will have the attributes and hierarchies as described below.

Attributes

Attribute Description (where applicable)
Blanket Order (Agreement No) Blanket Order No for Order Lines bought against agreement.
Buying Unit of Measure Default Buying Unit of Measure Code
Currency Code Order Currency Code
Delivery Days Early Interval Interval describing the number of days an order line was delivered too early compared to wanted delivery date.
Delivery Days Late Interval Interval describing the number of days an order line was delivered too late compared to wanted delivery date.
Delivery Days Off Time Interval Interval describing the number of deviation days an order line was delivered compared to wanted delivery date.
Demand Code Reason for Purcahse Order creation
Freeze Flag Indicator telling whether order line is frozen.
Invoicing Supplier Invoicing Supplier ID
Purchase Order Purchase Order Number
Purchase Order Line Built as PURCHASE ORDER + ' - ' + LINE NUMBER + ' - ' + RELEASE NUMBER
Purchase Order Line Status Status description of order line
Rental True/False indicator
Requisition No Purchase Requisition number if applicable

Measures (table to be generated as far as possible)

Aggregation of measures is based on SUM if not explicitly noted.

This section describes the basic measures in the cube. These are either measures defined in the core Information Source, in the model itself or in the ETL process. The columns have the following meaning:

Measure Calculated Y/N Contains Time Intelligence Y/N Definition/Note (where applicable) Aggregation Type Hidden Y/N Measure Expression
Discount Amount RC Y Y Reporting Currency calculation Sum N SUMX('PURCHASE ORDER LINE', DIVIDE([REP_CURR_DISCOUNT_AMOUNT_BASE],[Currency Rate]))
Net Amount POL RC N Y Sum N SUMX('PURCHASE ORDER LINE', DIVIDE([REP_CURR_NET_LINE_PRICE_BASE],[Currency Rate]))
Additional Cost Amount Curr N Y Sum N SUM([ADDITIONAL_COST_AMOUNT])
Avg Delivery Days Early Y Y Sum Delivery Days Early/Count Early Order Lines Average N DIVIDE([Sum Delivery Days Early],[Count Early OrderLines])
Avg Delivery Days Late Y Y Sum Delivery Days Late/Count Late Order Lines Average N DIVIDE([Sum Delivery Days Late],[Count Late OrderLines])
Avg Delivery Days Off Time Y Y Sum Delivery Days Off Time/(Count Early Order Lines + Count Late Order Lines) Average N DIVIDE([Sum Delivery Days Off Time],([Count Early OrderLines]+[Count Late OrderLines]))
Base Price N N Sum N SUM([BUY_UNIT_PRICE])
Complete Orderlines % Y Y Count Complete Orderlines/ Count Purchase Order Lines Average N DIVIDE([Count Complete OrderLines], [Count Purchase OrderLines])
Count Agreement OrderLines N Y Sum N SUM([COUNT_AGREEMENT_ORDER])
Count Cancelled OrderLines N Y Sum N SUM([COUNT_CANCELLED_ORDER_LINE])
Count Complete OrderLines Y Y TRUE if Incomplete Orderlines = FALSE Sum N SUM([COUNT_COMPLETE_ORDER_LINE])
Count Damaged OrderLines N Y Sum N SUM([COUNT_DAMAGE_ORDER_LINE])
Count Early OrderLines N Y Sum N SUM([COUNT_EARLY_ORDER_LINE])
Count Incomplete OrderLines N Y Sum N SUM([COUNT_INCOMPLETE_ORDER_LINE])
Count Late OrderLines N Y Sum N SUM([COUNT_LATE_ORDER_LINE])
Count OrderLines On Time N Y Sum N SUM([COUNT_ON_TIME_ORDER_LINE])
Count Perfect OrderLines N Y Sum N SUM([COUNT_PERFECT_ORDER_LINE])
Count Purchase OrderLines N Y Sum N SUM([COUNT_ORDER_LINE])
Discount Amount Base N Y Sum N SUM([DISCOUNT_AMOUNT_BASE])
Discount Amount Curr N Sum N SUM([DISCOUNT_AMOUNT_CURR])
Early OrderLines % Y Y Sum N DIVIDE( [Count Early OrderLines] , [Count Purchase OrderLines] )
Incomplete Orderlines % Y Y Count Incomplete Orderlines/ Count Purchase Order Lines Average N DIVIDE([Count Incomplete OrderLines], [Count Purchase OrderLines])
Inv Qty Arrived Y Y Count Incomplete Orderlines/ Count Purchase Order Lines Average N SUM([INV_QTY_ARRIVED])
Inv Qty Damaged N Y Sum N SUM([INV_QTY_DAMAGED])
Inv Qty Incomplete N Y Sum N SUM([INV_QTY_INCOMPLETE])
Inv Qty Invoiced N Y Sum N SUM([INV_QTY_INVOICED])
Inv Qty Pegged N Y Sum N SUM([INV_QTY_PEGGED])
Inv Qty Returned N Y Sum N SUM([INV_QTY_RETURNED])
Inv Qty Returned Credit N Y Sum N SUM([INV_QTY_RETURNED_CREDIT])
Inv Qty Returned Rework N Y Sum N SUM([INV_QTY_RETURNED_REWORK])
Inv Qty Scrapped N Y Sum N SUM([INV_QTY_SCRAPPED])
Inv Qty Scrapped At Supplier N Y Sum N SUM([INV_QTY_SCRAPPED_AT_SUPPLIER])
Inv Qty Scrapped Credit N Y Sum N SUM([INV_QTY_SCRAPPED_CREDIT])
Inv Qty Scrapped No Credit N Y Sum N SUM([INV_QTY_SCRAPPED_NO_CREDIT])
Late OrderLines % Y Y Count Late Orderlines/ Count Purchase Order Lines Average N DIVIDE( [Count Late OrderLines] , [Count Purchase OrderLines] )
Net Amount in Base Curr POL N Y Sum N SUM([NET_LINE_PRICE_BASE])
Net Amount in Order Curr POL N N Sum N SUM([NET_LINE_PRICE_CURR])
Orderlines On Time % Y Y Count Orderlines on Time/ Count Purchase Order Lines Average N DIVIDE([Count OrderLines On Time] , [Count Purchase OrderLines])
Perfect Orderlines % Y Y Count Perfect Orderlines/ Count Purchase Order Lines Average N DIVIDE( [Count Perfect OrderLines] , [Count Purchase OrderLines] )
Qty Arrived N Y Sum N SUM([QTY_ARRIVED])
Qty Invent N Y Sum N SUM([INVENT_QTY])
Qty Invoiced POL N Y Sum N SUM([QTY_INVOICED])
Qty Pegged N Y Sum N SUM([QTY_PEGGED])
Qty Purchase N Y Sum N SUM([PURCHASE_QTY])
Qty Returned N Y Sum N SUM([QTY_RETURNED])
Qty Returned Credit N Y Sum N SUM([QTY_RETURNED_CREDIT])
Qty Scrapped N Y Sum N SUM([QTY_SCRAPPED])
Qty Scrapped at Supplier N Y Sum N SUM([QTY_SCRAPPED_AT_SUPPLIER])
Qty Scrapped Credit N Y Sum N SUM([QTY_SCRAPPED_CREDIT])

Time Intelligence Measures

Time based measures are calculated in the cube with respect to other measures. The table below defines the meaning/definition of  the different time measures. These measures need to be used with a specific time dimension hierarchy [REPORTING_DATE].[RepDateMFHy].

Measure Meaning
YTD Aggregated value for current month in current  year. E.g. for period 202010 Ytd represents sum of periods 202000-202010.
R12 For a given period, the sum all months from one year back up to the previous month. E.g. Rolling 12 for 202010 is the sum of months 201910 - 202009
PY Previous Year
The value of the corresponding month one year back. E.g. for month 202010, the value of month 201910.
YTD PY Year to Date Previous Year
Aggregated value for corresponding month one year back. E.g. for month 202010 YTD Previous Year represents sum of months 201901-201910.
R12 PY Rolling 12 (completed) Months Previous Year
For a given month, first going one year back, then taking the sum of all months from one (more) year back up to the previous month. E.g. for month 202010 the sum of month 201810-201909
Avg XXX Ytd Sum XXX YTD/Count XXX YTD
Avg XXX R12 Sum XXX R12/Count XXX R12
XXX % YTD Count XXX YTD/Count YYY YTD
XXX % R12 Count XXX R12/Count XXX R12

USED BY MODEL(S)

Model Name

Data source Information

The data source for this object is defined using IFS Developer Tool. Further Transformations are done using Power BI.

Additional information can be found in the online documentation of Information Sources.

Model Table BI Access View Referenced Information Source Recommended Access Type
PURCHASE ORDER LINE FACT_PURCHASE_ORD_LINE_PQ_BI FACT_PURCHASE_ORD_LINE_PQ On Line

SPECIAL INFO

This fact supports Reporting Date, i.e. a time dimension that can be used to when doing cross product/module reporting. This date is also used when finding the currency rate for calculation of reporting currency amounts.