Data Source (BDataSourceBlock)

This block supplies data to an algorithm. In addition to algorithms, a request for data may also come from a variety of sources, such as graphics bindings and alerts.

This block supports both real-time values and trend requests if the underlying data support them.

This block can override some properties of the request. In the process, it generates a modified request for data and supplies the results to the blocks that are linked to its out property.

Figure 78.   Data Source Block properties
Image

To view these properties, double-click the block on the Wire Sheet or the block name in the Nav tree.

Property Value Description
Out read-only value slot Displays the value or trend resolved for the block.
Fallback In value slot Links from the output of other logic blocks or data sources to supply an alternate input source. If the data source is not available for a node, the framework uses this alternate input. The input could be another data source object like this one, or it could be something, such as a constant. The framework does not use the Fallback Input if this data source is available.
Use Request Aggregation true or false (default) Determines the aggregation method to use. While the Data Definition associated with each tag defines the default aggregation method, an incoming request from a data source block can override this default aggregation method.

true causes the framework to use the function defined by the Aggregation property, if defined in the request.

false causes the framework to use the algorithm’s Aggregation property.

Use Request Data Filter true or false (default) Determines the data filter method to use.

true uses the Data Filter property defined in the request.

false uses the Data Filter value as defined in the block.

If the Data Filter on the Data Source Block is not defined, it has no effect on the result of processing the request.

Use Request Rollup true or false (default) Determines the request rollup method to use. The Data Definition associated with each tag defines the default method to roll up data. An incoming request from a data source, rollup, sliding window or today builder block may override this default method.

true causes the framework to use the function defined by the Rollup property if defined in the request, else the algorithm’s Rollup property.

false causes the framework to use the function defined by the block’s Rollup property if defined, else the Data Definition’s Rollup property if a Data Definition exists for the tag, else the default First function.

Use Request Totalize true or false (default) Determines the function to use when calculating a total.

true causes the Data Source Block to use the value of the Totalize property if defined in the request, else it uses Totalize = true.

false causes the block to use the value of the block’s Totalize property when the Totalize property is configured. If the Totalize property on the block is not defined, the block uses the default value (true).

Aggregation value ( defaults to First) Configures the default function used to combine values from multiple data sources into a single value when the block's Use Request Aggregation property is true. This applies to both value and trend requests.

If aggregation is not enabled in the binding/settings window, the aggregation value defined in the Data Definition applies to all chart bindings, reports and tables.

And returns the logical “and” of Boolean values.

Avg returns the statistical mean, which is determined by calculating the sum of all values and dividing by the number of values.

Count returns the total number or quantity of values in a combination. If you request this value on a binding in a PX view, the system counts the number of values based on the properties defined by the data source block and the algorithm’s Property Sheet.

First returns the first value in the combination.

Last returns the last value in the combination.

Max returns the highest value in the combination.

Median returns the value in the middle of a sorted combination—the number that separates the higher half from the lower half.

Min returns the lowest value in the combination.

Mode returns the statistically most frequently occurring number in the combination.

Or returns the logical “or” of Boolean values.

Range returns the statistical difference between the largest and smallest values in the combination.

Sum adds together all values in the combination resulting in a single value.

Load Factor returns the average value divided by peak value.

Std Dev returns the standard deviation of the values in the combination.

Data Filter optional NEQL predicate (property) or ORD parameter (dataFilter=predicate) Identifies data sources in the subtree of the request node. When a predicate accepts a node that contains the desired data, the system does not search the node’s subtree for additional values (including the root node).
Rollup check box (if optional, and) drop-down list or ORD parameter (when configured in the data definition, defaults to First, when configured elsewhere, defaults to the value as defined in the Data Definition); rollup=option Configures the default rollup function passed through the algorithm when the Data Source block Use Request Rollup property is set to true.

If rollup is not enabled in the binding/settings window, the rollup value configured in the Data Definition applies to all chart bindings, reports and tables.

And returns the logical “and” of Boolean values.

Avg returns the statistical mean, which is determined by calculating the sum of all values and dividing by the number of values.

Count returns the total number or quantity of values in a combination. If you request this value on a binding in a PX view, the system counts the number of values based on the properties defined by the data source block and the algorithm’s Property Sheet.

First returns the first value in the combination.

Last returns the last value in the combination.

Max returns the highest value in the combination.

Median returns the value in the middle of a sorted combination—the number that separates the higher half from the lower half.

Min returns the lowest value in the combination.

Mode returns the statistically most frequently occurring number in the combination.

Or returns the logical “or” of Boolean values.

Range returns the statistical difference between the largest and smallest values in the combination.

Sum adds together all values in the combination resulting in a single value.

Std Dev calculates the standard deviation of the values in the combination.

Load Factor calculates the average divided by peak (Max) value.

Totalize true or false (default) Determines if the totalized or delta values should be calculated.
Unit conversion optional If set, the system converts values supplied using the units defined in the data policy of the data source to the units defined by this property.

Processing with Use Request Aggregation

When Use Request Aggrigation is false and Aggregation is not configured, the block uses the aggregation function defined in the applicable Data Definition. If there is no Data Definition, the block uses the default First function. When Use Request Aggrigation is false and Aggregation property is configured, the block uses the Aggregation property value. When Use Request Aggregation is true, the block uses the aggregation function defined in the request (Analytic Proxy Ext, Analytic Binding, etc.), unless the request does not specify the aggregation function, in which case the block uses the Algorithm’s Aggregation property value.

The following table may help to determine when each value applies.

Data Definition Aggregation Data Source Block Use Request Aggregation Data Source Block Aggregation Request Aggregation Algorithm Aggregation Actual Aggregation Function
Unconfigured False Unconfigured Sum Max Defaults to First
Last False Unconfigured Sum Max Last
Last False Avg Sum Max Avg
Last True Avg Sum Max Sum
Last True Avg Unconfigured Max Max

Processing with Use Request Rollup

When Use Request Rollup is false and Rollup is not configured, the block uses the rollup function defined in the applicable Data Definition. If there is no Data Definition, the block uses the default First function. When Use Request Rollup is false and Rollup property is configured, the block uses the Rollup property value. When Use Request Rollup is true, the block uses the rollup function defined in the request (Analytic Proxy Ext, Analytic Binding, etc.), unless the request does not specify the rollup function in which case the block uses the Algorithm’s Rollup property value.

The following table may help to determine when each value applies.

Data Definition Rollup Data Source Block Use Request Rollup Data Source Block Rollup Request Rollup Algorithm Rollup Actual Rollup Function
Unconfigured False Unconfigured Sum Max Defaults to First
Last False Unconfigured Sum Max Last
Last False Avg Sum Max Avg
Last True Avg Sum Max Sum
Last True Avg Unconfigured Max Max