On this page you will find the specifications regarding the Model: Sales and Fact Table: CUSTOMER ORDER LINE.
This model fact represents customer order lines and it is based on the fact FACT_CUSTOMER_ORDER_LINE in IFS Cloud. All models that refer to this table will have the attributes and hierarchies as described below.
Attribute | Description (where applicable) |
Line Status | State (db value) of the customer order line (STATE) |
Invoice Blocked | Defined as the description of invoice blocked attribute (INVOICE_BLOCKED_DESC) |
Supply Code | Defined as the description of the supply code (SUPPLY_CODE_DESC) |
Price Source | Price Source Type in clear text |
Price Source ID | Price Source ID - Agreement number, Campaign ID etc. |
Tax Code | Defined as the description of the vat (tax) code (FEE_CODE_DESC) |
Demand Code | Defined as the description (client value) of demand code (DEMAND_CODE_DESC) |
PriceList No | Price list number used on order line |
Rental | Rental Indicator TRUE/FALSE |
Currency Code | The currency code for currency based amounts |
Agreement No | If Price Source = AGREEMENT, PRICE_SOURCE_ID is displayed |
Campaign ID | If Price Source = CAMPAIGN, PRICE_SOURCE_ID is displayed |
Ship Days Early Interval | Interval describing the number of days an order line was shipped too early compared to planned ship date (SHIP_DAYS_EARLY) |
Ship Days Late Interval | Interval describing the number of days an order line was shipped too late compared to planned ship date (SHIP_DAYS_LATE) |
Ship Days Off Time Interval | Interval describing the number of deviation days an order line was shipped compared to planned ship date (SHIP_DAYS_OFF_TIME) |
Customer Order Line | Defined as ORDER_NO_KEY + ' - ' + LINE_NO_KEY + ' - ' + REL_NO_KEY + ' - ' + ' - ' + LINE_ITEM_NO_KEY |
Sales Price | |
Sales Incl Tax |
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 |
Avg Ship Days Early | Y | Y | Sum Ship Days Early/Count Early Order Lines | Average | N | DIVIDE ( [Sum Ship Days Early], [Count Early Order Lines] ) |
Avg Ship Days Late | Y | N | Sum Ship Days Late/Count Late Order Lines | Average | N | divide([Sum Ship Days Late],[Count Late Order Lines],0) |
Avg Ship Days Off Time | Y | N | Sum Ship Days Off Time/(Count Early Order Lines +Count Late Order Lines) | Average | N | DIVIDE ( [Sum Ship Days Off Time], [Count Early Order Lines] + [Count Late Order Lines] ) |
Complete Order Lines % | Y | Y | Count Complete Order Line / Count CO Line | Average | N | divide(( [Count CO Line] - [Count Incomplete Order Line] ) , [Count CO Line]) |
Count Agreement Order Lines | N | Y | Sum | N | SUM( 'CUSTOMER ORDER LINE'[COUNT_AGREEMENT_ORDER]) | |
Count CO Line | N | Y | Sum | N | SUM([COUNT_ORDER_LINE]) | |
Count Campaign Order Lines | N | Y | Sum | N | SUM([COUNT_CAMPAIGN_ORDER]) | |
Count Complete Order Line | N | Y | Sum | N | [Count CO Line] - [Count Incomplete Order Line] | |
Count Delivered Not Invoiced | N | Y | Sum | N | SUM([COUNT_DELIVERED_NOT_INVOICED]) | |
Count Delivered Order Line | N | Y | Sum | N | SUM([COUNT_DELIVERED_ORDER_LINE]) | |
Count Delivered as Planned | N | Y | Sum | N | SUM([COUNT_DELIVERED_AS_PLANNED]) | |
Count Delivered as Promised | N | Y | Sum | N | SUM([COUNT_DELIVERED_AS_PROMISED]) | |
Count Delivered as Requested | N | Y | Sum | N | SUM([COUNT_DELIVERED_AS_REQUESTED]) | |
Count Early Order Lines | N | Y | Sum | N | SUM([COUNT_EARLY_ORDER_LINE]) | |
Count Incomplete Order Line | N | Y | Sum | N | SUM([COUNT_INCOMPLETE_ORDER_LINE]) | |
Count Late Order Lines | N | Y | Sum | N | SUM([COUNT_LATE_ORDER_LINE]) | |
Count On Time Order Line | N | Y | Sum | N | SUM([COUNT_ON_TIME_ORDER_LINE]) | |
Count Perfect Order Line | N | Y | Sum | N | SUM([COUNT_PERFECT_ORDER_LINE]) | |
Count PriceList Order Lines | N | Y | Sum | N | SUM([COUNT_PRICELIST_ORDER]) | |
Count SalesPart Order Lines | N | Y | Sum | N | SUM([COUNT_BASEPRICE_ORDER]) | |
Early Order Lines % | Y | Y | Count Early Order Lines / Count CO Line | Average | N | divide([Count Early Order Lines], [Count CO Line], BLANK()) |
Incomplete Order Lines % | Y | Y | Count Incomplete Order Lines / Count CO Line | Average | N | divide([Count Incomplete Order Line], [Count CO Line] ) |
Late Order Lines % | Y | Y | Count Late Order Lines / Count CO Line | Average | N | divide([Count Late Order Lines], [Count CO Line], BLANK()) |
Net Amount in Base Curr CO Line | N | Y | Sum | N | SUM([NET_AMOUNT_BASE]) | |
Net Amount in Order Curr | N | Y | Sum | N | SUM([NET_AMOUNT_CURR]) | |
Not Invoiced Amount | N | N | Sum | N | IF ( [Qty Sales CO Line] <> 0, ( [Qty Sales CO Line] - [Qty Invoiced CO Line] ) * ( [Net Amount in Base Curr CO Line] / [Qty Sales CO Line] ), 0 ) | |
Not Invoiced Base Curr CO Line | N | N | Sum | N | SUM([NET_AMOUNT_NOT_INVOICED]) | |
NotInvoiced Base Curr CO Line | N | N | Sum | N | ( [Qty Sales CO Line] - [Qty Invoiced CO Line] ) * DIVIDE ( [Net Amount in Base Curr CO Line], [Qty Sales CO Line] ) | |
On time Order Lines % | Y | Y | Count On Time Order Lines / Count CO Line | Average | N | DIVIDE([Count On time Order Line],[Count CO Line]) |
Perfect Order Lines % | Y | Y | Count Perfect Order Lines / Count CO Line | Average | N | DIVIDE ( [Count Perfect Order Line], [Count CO Line] ) |
Profit | Y | N | Net Amount in Base Curr CO Line - Total Cost in Base Curr CO Line | Sum | N | [Net Amount in Base Curr CO Line]-[Total Cost in Base Curr CO Line] |
Profit Margin % | Y | Y | Profit Margin in Base Curr/Net Amount in Base Curr | Average | N | Divide( [Profit Margin in Base Curr], [Net Amount in Base Curr], BLANK()) |
Profit Margin Goal | Y | N | Hard coded to 0.1 | Sum | N | 0.1 |
Qty Assigned CO Line | N | Y | Sum | N | SUM([QTY_ASSIGNED]) | |
Qty Invoiced CO Line | N | Y | Sum | N | SUM([QTY_INVOICED]) | |
Qty Not Invoice CO Line | N | Y | Sum | N | SUM([QTY_NOT_INVOICED]) | |
Qty Picked CO Line | N | Y | Sum | N | SUM([QTY_PICKED]) | |
Qty Returned CO Line | N | Y | Sum | N | SUM([QTY_RETURNED]) | |
Qty Sales CO Line | N | Y | Sum | N | SUM([SALES_QTY]) | |
Qty Shipdiff CO Line | N | Y | Sum | N | SUM([QTY_SHIPDIFF]) | |
Qty Shipped CO Line | N | Y | Sum | N | SUM([QTY_SHIPPED]) | |
Qty Short CO Line | N | N | Sum | N | SUM([QTY_SHORT]) | |
Total Cost in Base Curr CO Line | Y | Y | Reporting Currency calculation | Sum | N | SUM([TOTAL_COST]) |
Total Order Line Discount | N | N | Sum | N | SUM([TOTAL_ORDER_LINE_DISCOUNT]) | |
Net Amount CO Line RC | Y | Y | Reporting Currency calculation | Sum | N | SUMX ( 'CUSTOMER ORDER LINE', DIVIDE('CUSTOMER ORDER LINE'[REP_CURR_NET_AMOUNT], [Currency Rate]) ) |
NotInvoiced CO Line RC | N | N | Sum | N | ( [Qty Sales CO Line] - [Qty Invoiced CO Line] ) * DIVIDE ( [Net Amount CO Line RC], [Qty Sales CO Line] ) | |
Total Cost CO Line RC | Y | Y | Reporting Currency calculation | Sum | N | SUMX ( 'CUSTOMER ORDER LINE', DIVIDE([REP_CURR_TOTAL_COST], [Currency Rate])) |
Total Cost RC | Y | Y | Reporting Currency calculation | Sum | N | [Total Cost CO Line RC]+[Total Cost CO Charge RC]-[Total Cost RMA Line RC]-[Total Cost RMA Charge RC] |
Total Order Line Discount CO Line RC | Y | Y | Reporting Currency calculation | Sum | N | SUMX ( 'CUSTOMER ORDER LINE', DIVIDE([TOTAL_ORDER_LINE_DISCOUNT], [Currency Rate])) |
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 |
Model Name |
CRM |
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 |
CUSTOMER ORDER LINE | FACT_CUSTOMER_ORDER_LINE_PQ_BI | FACT_CUSTOMER_ORDER_LINE_PQ | On Line |