Skip to main content
Skip table of contents

DISTRIBUTE

Basic Overview

Description

Distributes the values of the Original Node based on the value distribution from the Distribution Node - in relation to the aggregated values of the Distribution Node when rolled-up to the levels of the Original Node. Can be used to redistribute values, which are not available on a certain level. An example is the assignment of OPEX to products according to their revenue. Levels can be specified to restrict the distribution to these levels, otherwise values are distributed to all available levels.

Notes

  • Values with missing partners in the DistributionNode will be evenly distributed to all values in the respective dimension level. This can potentially create a large data set in case of sparse inputs (see example for value 2017).

  • If the distribution is executed on a dimension with a hierarchy (having multiple levels) and the chose distribution level is a higher level, then the distribution will be calculated on the lowest shared level and is afterwards aggregated to the specified level.

Signature

DISTRIBUTE(OriginalNode, DistributionNode [, Level1,...])

Parameters

  • OriginalNode: Input node, specified using the node name in single quotes (e.g. 'OPEX')

  • DistributionNode: Node, by which distribution the values of the OriginalNode should be disaggregated. Specified using the node name in single quotes (e.g. 'Revenue')

  • Level: Level by which the OriginalNode should be disaggregated, i.e. the level which should exist on the node after application of the function (e.g. "Product"). If not specified, all additional levels in DistributionNode will be used for the distribution.

Example

OPEX

Year

OPEX

2015

2000

2016

4000

2017

12000

Revenue

Product Dimension

Year

Product Line

Product

2015

2016

M1

100

200

M2

300

600

Z3

400

800

Totals

800

1600

DISTRIBUTE('OPEX', 'Revenue')  = DISTRIBUTE('OPEX', 'Revenue') =

Product Dimension

Year

Product Line

Product

2015

2016

2017

M1

2000 * 100 / 800 = 250

4000 * 200 / 1600 = 500

12000 / 4 = 3000

M2

2000 * 300 / 800 = 750

4000 * 600 / 1600 = 1500

12000 / 4 = 3000

Z3

2000 * 400 / 800 = 1000

4000 * 800 / 1600 = 2000

12000 / 4 = 3000

X

X4

-

-

12000 / 4 = 3000

Totals

2000

4000

12000

DISTRIBUTE('OPEX', 'Revenue', "Year", "Product Line") =

Product Dimension

Year

Product Line

2015

2016

2017

2000 * 400 / 800 = 1000

4000 * 800 / 1600 = 2000

12000 / 3 = 4000

2000 * 400 / 800 = 1000

4000 * 800 / 1600 = 2000

12000 / 3 = 4000

X

-

-

12000 / 3 = 4000

Totals

2000

4000

12000

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.