...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
A pipe is a connector that links two elements in a PhixFlow model and sends data from the input to the output. Pipes allows you to control which attributes and which records from the input are delivered by to the output, although in most cases - with minimal configuration - you will get all columns and the records from the current run.
The pipe must be enabled to make it active.
For advanced configuration, see Advanced Pipe Configuration.
...
Panel | ||||
---|---|---|---|---|
| ||||
A pipe joining a datasource to a data collector has no details to edit. All the configuration for the output data set occurs in the collector - either a database collector for a database datasource, or an HTTP collector for an HTTP datasource. |
Basic Settings
...
Enter a name. The name is used to refer to the pipe in other model elements. Pipe names default to in
.
The name:
- must start with a letter
- must not be an Attribute Function name.
- must not include special characters, except underscore _
...
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Overview
A pipe is a connector that links two objects in a PhixFlow model and sends data from the input object to the output object. Pipes allows you to control which attributes and which records from the input are delivered by to the output. With default configuration the pipe pass all attributes and records from the current run.
The pipe must be enabled to make it active.
For advanced configuration, see Advanced settings below
Tip |
---|
A pipe joining a datasource to a data collector has no details to edit. All the configuration for the output data set occurs in the collector:
|
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Basic Settings
Field | Description | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Name | Enter a name. The name is used to refer to the pipe in other model elements. Pipe names default to The name:
| ||||||||||||||||
Enabled |
| ||||||||||||||||
Static | Normally when a pipe requests data from a non-static input table, that table will first attempt to bring itself up to date, generating new recordsets as necessary, before supplying the data requested. However, if this field is ticked, the input table will not run. Pipes from collectors cannot be marked as static.
Pipes from collectors cannot be marked as static. In the model, hover over a pipe to display an icon that shows | ||||||||||||||||
Mandatory |
If this is a push pipe with positive offsets and this option is ticked then the notification to create another recordset will only be pushed along the pipe if the last recordset created contains at least one record. This causes the pipe to present each candidate set to the output table in a different way than usual. | ||||||||||||||||
Multiplier |
| ||||||||||||||||
Action Pipe | Available when Type is Look-up. Flag a pipe as an Action Pipe if it is used in a table-action(s). The flag is used to show or hide action pipes on the analysis model canvas. See Analysis Model Window and Toolbars. | ||||||||||||||||
Type | Select:
| ||||||||||||||||
Data to Read | Select the type of input data to use.
| ||||||||||||||||
Read Future Data | Use this option to exclude or include input tables sets that have future dates relative to the recordset you are generating. For details about how future recordsets occur, see Managing Future Recordsets, below.
|
...
to exclude future recordsets from this analysis run. This is the default.
|
...
|
...
|
...
Pipes from collectors cannot be marked as static.
...
to include future recordsets in this analysis run. For example, for a table with Period: Transactional , you will want to include new recordsets that are being added to the input table after your analysis run starts. | |||||
Input | Enter the name of the object at the start of the pipe.
|
...
|
...
|
...
|
...
|
...
|
...
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Every time the lookup pipe is referenced, PhixFlow calculates the values of all of the variable elements of the query or pipe filter, and checks if it already has a set of data in the cache retrieved using this set of variable values. If so the data is immediately returned from the cache. Otherwise, a new set of data is read from the stream of collector. If adding the new records to the cache would cause it to exceed the maximum cache size, previously cached results are removed to make enough room for the new results. |
...
During lookups
...
During File Export
...
Max Records To Read
...
The Execution Strategy determines how this pipe should be implemented. See the section on Directed Merge Strategy
...
Max Workers
...
This field is only available if Strategy = Directed
The maximum number of concurrent worker tasks.
If blank, this defaults to 1.
...
This field is only available if Strategy = Directed
The number of key values to read for a single worker task (which runs a single select statement).
...
|
...
If this is a push pipe with positive offsets and this option is ticked then the notification to create another stream set will only be pushed along the pipe if the last stream set created contains at least one record. This causes the pipe to present each candidate set to the output stream in a different way than usual.
...
Select:
- Pull: pull pipes are the most common type in PhixFlow - they "pull" data from the input to the output. Pull pipes are shown as solid arrows on models.
- Look-up: look-up pipes are used to enrich data. Typically, you will have one of more pull pipes to supply the base data for an output, and if needed one or more look-up pipes to enrich the base data with values from additional inputs. Look-up pipes are shown as dashed lines on models.
- Push: data is "pushed" rather than "pulled" into the output stream. Push pipes are most commonly used when sending data from streams to exporters (File Exporters, Database Exporters, HTTP Exporters). Push pipes are shown as dotted lines on models.
...
Select the type of input data to use.
- Latest: supply data from the current run (the latest stream set). This is the mostly commonly used option.
- Previous: supply data from the previous run (the previous stream set). This is used when you are comparing data for the current run with data from the previous run, for example, today's data with yesterday's.
- All: supply data from all runs (all stream sets).
- All Previous: supply data from all runs except the current run (all stream sets except the latest stream set).
- Same Run: this option should only be used where the input and output streams are set to Period: Transactional. The pipe will only collect data from inputs in the same analysis run. This configuration support several analysis runs going on at the same time without interfering with each other.
- Custom: select this option to display additional settings, described in the Custom Data to Read section, below. We recommend that you only use the custom settings when directed to by PhixFlow consultants or support.
...
Use this option to exclude or include input streams sets that have future dates relative to the stream set you are generating. For details about how future stream sets occur, see Managing Future Stream Sets, above.
...
In some circumstances the input stream may have stream sets that have dates in the future relative to the stream set being generated for the output stream. This may happen, for example, if:
- you roll-back some stream sets on the output stream
- but do not roll-back the corresponding stream sets on the input stream
- and then request that the output stream is brought up to date.
Some of the stream sets on the input stream will have dates in the future relative to some of the stream sets you are rebuilding.
By default, the Read Future Data checkbox is not ticked. This means pipes ignore any stream sets with dates in the future relative to the stream set you are generating. You want to ignore future stream sets when you rebuild an old stream set, because you want the pipe to retrieve the same data on the rerun as it retrieved when the stream set was first built.
When you run analysis on a stream with a transactional period, it is possible that as your analysis is still running, a different run can start and complete. This run can generate additional stream sets on the input stream with a future data relative to the date of the stream set you are generating. For transactional input streams, you want the pipe to use these future streams. To do this, tick the Read Future Data checkbox.
Filter
Filters are made up of a set of clauses; each clause in turn contains a number of conditions. These conditions must be satisfied for data to be passed through the pipe.
...
...
...
Select one of the options
- Where ALL...
- Where ANY...
...
Hover your mouse pointer over the Condition field to display this button.
Add another condition to your filter.
...
Select an option from the list. PhixFlow adds more fields where you can:
- select how the filter matches (for example,
equals
,contains
,is null
) - enter a string that the filter uses to match the data. The string can be an expression or a literal string.
...
Hover your mouse pointer over a filter clause to display this button.
Delete the selected clause or condition from the filter.
...
Indicates the value entered is a literal value. Click this icon to treat the value as an expression.
...
Indicates the value entered is an expression. Click this icon to treat the value to a literal string.
Note: ["123", "234", "345"] looks like a literal value but it can be evaluated as an expression.
...
A cache extraction filter allows you to further filter the data retrieved by a pipe. These are not commonly used, but are sometimes helpful when either:
- Optimising performance on a lookup pipe when for a set of records, the record you require from the lookup depends on non-key data, e.g. the date
- When getting data from a pull pipe when the filter requires that you compare one value in each record with another; this is not possible within a standard filter.
For case 1, when using a lookup pipe, data retrieved is stored in a cache. See cache size for details. The cache extraction filter allows you, as you are processing a set of output records, to use different cached entries from the lookup for each of the records are you are processing. This is very fast compared to looking up from the source (i.e. going back to an external DB table or even another PhixFlow stream) for each output record.
E.g. you want to look up the credit rating for a customer for a set of transactions - in the output, each transaction is represented by a single output record. You create an indexed lookup pipe using CustNo as the key for the index. This means that for each new CustNo you encounter in the data, all the credit rating entries for that CustNo would be retrieved by the pipe and placed into the cache. The credit rating for each customer is fully historied, so you get a number of entries for each CustNo. To get the relevant lookup entry for each output report (each transaction), you need to compare the transaction date of the output record to the dates of credit rating entries in the cache. So to extract the relevant record, you include a cache extraction filter in the form:
Code Block |
---|
StartDate >= _out.TransDate && (EndDate <= _out.TransDate || EndDate == _NULL) |
Cache extraction filters are entered free hand.
The attribute names referenced must exist in a stream. This means that the each attribute must be one of:
- an attribute in a source stream, if you are reading from a stream
- if you are reading from an external database table, one of the fields returned by the database collector AND an attribute in the output stream. This means to use an attribute with the source as a database collector, there must be an attribute of matching name in the output stream
- an attribute in the destination stream, in which case you will refer to it using the format
_out.AttributeName
Filter Examples
Filter on Current User
Sometimes when running analysis you want to select, from the source, only records belonging to the currently logged in user. To set a filter where, say, an attribute in the source Owner
equals the current logged in user, add a condition to the filter like this:
Owner
Equals _user.name
fx
Enter a list of values for an "Is In" or "Is Not In" filter
If you want to based on a list of values, use the Is in or Is not in comparators, then type the list of values into the comparison field as a comma separated list like this:
Country
Is in England, France, Germany
ABC
In this case you must NOT click the ABC icon to convert the value to an fx, because this will indicate that the value is a formula; it must be left as a literal value. If you do click the ABC icon, then the value must be entered like this:
Country
Is in ["England","France","Germany"]
fx
Sort/Group
Use this section to group and sort data as it comes through the pipe. for lookup pipes, this section is called Order/Index. This section has:
- a toolbar with standard buttons
- a grid that lists the attributes that you want to sort or use to group
- below the grid are the following options:
...
Enter an upper limit for grouped records.
When collating the input records into groups, PhixFlow uses the specified sort order. When it has added the maximum number of records, any more records for the group are ignored.
This can be useful if you want the most recent record for an attribute that has many records.
- Tick the Group checkbox for the attribute you want to use for grouping.
- On an appropriate date attribute, apply a (Z-A) sort order.
- Set the Maximum Number of Records to 1.
...
This field is available for pipes with the Type= Look-up.
Look-up pipes can be configured for fast "indexed" access to cached data collected from external tables, files or from other streams. Indexed access is controlled through configuring a pipe with an index and setting index expressions on grouping attributes. If the Type field on the Pipe is set to 'Look-up' then the field "Index Type" becomes available. This can have the value "None" meaning that there are no index keys or "Exact Match", "Best Match" or "Near Match" as described below:
...
Using the Sort/Group Grid
To add a stream attributes to the list:
...
For input stream attributes, PhixFlow displays the attribute name. (Read-only)
For a new attribute, enter a name.
...
Select the sort order
- (A-Z) to sort data records in ascending order, e.g. A to Z, 1 to 9, earliest to latest date.
- (Z-A) to sort data records in descending alpha-numeric order, e.g. Z to A, 9 to 1, latest to earliest date.
...
If this attribute is part of the candidate key set, you must tick the Group checkbox. Otherwise, the attributes will be used only to sort the data in the candidate set.
...
This field is available for lookup pipes with an Index Type option selected.
Look-up pipes can be configured for fast "indexed" access to cached data. This data is collected from external tables, files or from other streams. Indexed access is controlled through configuring a pipe with an index and setting index expressions on "Group By" attributes here.
...
Tip |
---|
In some cases, you may have a pipe connected to a database collector, which pulls data from an external database table. In these cases, the fields in the database must have matching attribute names in the output stream. You can refer to it using the format |
Aggregate Attributes
Aggregate Attributes define the aggregated properties that are available when data is read from an aggregating Pipe. Note that Aggregate Attributes are not available on Pipes from Database Collectors (any aggregation can be performed in the query SQL), nor are they available on Pipes from File Collectors.
Possible aggregate values are counts, summations, averages and maximum or minimum values of Stream Items grouped in the Group/Order tab of the Pipe.
Use this section to combine data from different attributes it comes through the pipe. This section has:
- a toolbar with standard buttons
- a grid that lists the attributes that you want to aggregate.
.
Aggregate Attributes define the aggregated properties that are available when data is read from an aggregating Pipe. Note that Aggregate Attributes are not available on Pipes from Database Collectors (any aggregation can be performed in the query SQL), nor are they available on Pipes from File Collectors.
Possible aggregate values are counts, summations, averages and maximum or minimum values of Stream Items grouped in the Group/Order tab of the Pipe.
...
Only aggregate attributes which can be aggregated. For example, do not try to sum an attribute which contains text.
Custom Data to Read
Data to Read = Custom
The following fields are available in the Basic Settings section if you set Data To Read = Custom:
...
Use this option to exclude or include input streams sets that have future dates relative to the stream set you are generating. For details about how future stream sets occur, see Managing Future Stream Sets, above.
...
Advanced section
The following fields are configured in the Advanced section:
...
Normally, when a pipe tries to read from an input stream that contains an incomplete stream set, PhixFlow will attempt to complete the stream set before passing data down the pipe. However if the stream is static (i.e. the stream has its 'static' flag ticked) or is effectively static (i.e. all of the pipes reading from it in this analysis run are static) then, instead of completing the stream set, an error message is produced indicating that you cannot read from this stream because it contains an incomplete stream set.
If you do not want this error message to be produced when reading from static (or effectively static) streams, but would instead prefer PhixFlow to ignore the incomplete stream sets, then you must tick this box on all pipes that will read from the input stream in this analysis run. If there are multiple pipes that read from the input stream during this analysis run and even one of the pipes does not have this box ticked then you will not be allowed to read from the stream and the error message will be produced.
Pipes which are not used in the current analysis run (for example where they lead to streams on branches of the model which are not run by the current task plan) have no effect on whether or not the error message is produced.
...
The cache is used when carrying out lookups from streams or database collectors. When doing a lookup, there are two common scenarios:
- The pipe does a single lookup onto a stream or database table to get a large number of records in one go (e.g. 10,000 records)
- The pipe does many lookups, getting a small number of records for each lookup (e.g. 10 records at a time).
In case 2, the results returned are typically based on a key value, e.g. an account number. This will be used in the filter of the pipe, if you are reading from a stream, or in the query, if you are reading from a database collector. For example, the query in a database collector will include the condition:
Code Block |
---|
WHERE AccountNumber = _out.AccountNum |
For efficiency, the records are cached (stored temporarily in memory) so that if the same set of records need to be looked up again they are readily available without going back to the database.
This field allows you to set a limit on the size of the cache. Setting a limit is important because if you do not, the cache can become very large and consume a lot of memory, which can lead to a slow down in both your tasks and those of other users of PhixFlow.
To set the cache size, try to estimate the largest number of records that the lookup pipe will return on a single read.
If you do not set a limit, it will default to the system-wide default, specified in the Maximum Pipe Cache Size in the System Tuning tab of the System Configuration.
...
bgColor | #e6f0ff |
---|---|
titleBGColor | #99c2ff |
title | Cache warnings and errors |
If a single read brings back over 90% of the specified cache size, a warning message will be logged to the console.
If a single read brings back 100% or more of the cache size, a second warning message will be generated. If the Enforce Cache Size limit flag is ticked in System Configuration, instead of a warning an error will be generated, and the analysis run will stop completely.
Code Block | ||
---|---|---|
| ||
The Pipe "stream_name.lookup_pipe_name" cache is 100% full (the cache size is 10). |
Output | The name of the table at the end of the pipe. |
Anchor | ||||
---|---|---|---|---|
|
In some circumstances the input table may have recordsets that have dates in the future relative to the recordset being generated for the output table. This may happen, for example, if:
- you roll-back some recordsets on the output table
- but do not roll-back the corresponding recordsets on the input table
- and then request that the output table is brought up to date.
Some of the recordsets on the input table will have dates in the future relative to some of the recordsets you are rebuilding.
By default, the Read Future Data check box is not ticked. This means pipes ignore any recordsets with dates in the future relative to the recordset you are generating. You want to ignore future recordsets when you rebuild an old recordset, because you want the pipe to retrieve the same data on the rerun as it retrieved when the recordset was first built.
When you run analysis on a table with a transactional period, it is possible that as your analysis is still running, a different run can start and complete. This run can generate additional recordsets on the input table with a future data relative to the date of the recordset you are generating. For transactional input tables, you want the pipe to use these future tables. To do this, tick the Read Future Data check box.
Filter
Filters are made up of a set of clauses; each clause in turn contains a number of conditions. These conditions must be satisfied for data to be passed through the pipe.
Tip |
---|
When the pipe Type is Lookup, the filter controls which data will be cached in memory. |
Field | Description | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Cache Size
| Available when Type is Lookup. The default value is set in System Configuration. For lookup pipes, PhixFlow uses the pipe cache when it looks-up data from tables or database collectors. For efficiency, the records are cached (stored temporarily in memory) so that if the same set of records need to be looked up again they are readily available without going back to the database. Enter a number to set a limit on the data cache size available for the pipe. You need to estimate the largest number of records that the lookup pipe will return on a single read. Check whether PhixFlow is looking up:
If you do not set a limit for the cache, PhixFlow uses the system default set in System Configuration → System Tuning → Maximum Pipe Cache Size.
| ||||||||||||||||||||||||||||||||
Pipe View | Use this option to look up data from attributes that are present in a view on the input table. Select a view from the list. If the input table has no views, the list will be empty.
Use the pipe view to limit the attributes that the pipe reads when a table has lots of attributes containing many data records but you only need data from a few attributes. Only the data for the attributes in the view are sent to the output table. Pipe views are very useful:
To set up a pipe view:
| ||||||||||||||||||||||||||||||||
Include History Records |
| ||||||||||||||||||||||||||||||||
Condition | Select one of the options
To add more conditions, hover your mouse pointer over this field to display the button and add another condition to your filter. | ||||||||||||||||||||||||||||||||
Clause | Select an option from the list. PhixFlow adds more fields where you can:
| ||||||||||||||||||||||||||||||||
Filter Icons | Hover your mouse pointer over conditions or clauses to display:
| ||||||||||||||||||||||||||||||||
Cache Extraction Filter | A cache extraction filter allows you to further filter the data retrieved by a pipe. These are not commonly used, but are sometimes helpful when either:
For case 1, when using a lookup pipe, data retrieved is stored in a cache. See Cache Size, above, for details. The cache extraction filter allows you, as you are processing a set of output records, to use different cached entries from the lookup for each of the records are you are processing. This is very fast compared to looking up from the source (i.e. going back to an external DB table or even another PhixFlow table) for each output record. E.g. you want to look up the credit rating for a customer for a set of transactions - in the output, each transaction is represented by a single output record. You create an indexed lookup pipe using CustNo as the key for the index. This means that for each new CustNo you encounter in the data, all the credit rating entries for that CustNo would be retrieved by the pipe and placed into the cache. The credit rating for each customer is fully historied, so you get a number of entries for each CustNo. To get the relevant lookup entry for each output report (each transaction), you need to compare the transaction date of the output record to the dates of credit rating entries in the cache. So to extract the relevant record, you include a cache extraction filter in the form:
Cache extraction filters are entered free hand. The attribute names referenced must exist in a table. This means that the each attribute must be one of:
|
Filter Examples
Filter on Current User
Sometimes when running analysis you want to select, from the source, only records belonging to the currently logged in user. To set a filter where, say, an attribute in the source Owner
equals the current logged in user, add a condition to the filter like this:
Owner
Equals _user.name
fx
Enter a list of values for an "Is In" or "Is Not In" filter
If you want to based on a list of values, use the Is in or Is not in comparators, then type the list of values into the comparison field as a comma separated list like this:
Country
Is in England, France, Germany
ABC
In this case you must NOT click the ABC icon to convert the value to an fx, because this will indicate that the value is a formula; it must be left as a literal value. If you do click the ABC icon, then the value must be entered like this:
Country
Is in ["England","France","Germany"]
fx
Sort/Group or Order/Index
For lookup pipes this section is called Order/Index.
Use this section to group and sort data as it comes through the pipe. This section has:
- a grid that lists the attributes that you want to sort or use to group; see Using the Sort/Group Grid, below
- the following below the grid, when Basic Settings → Type is Look-up:
Field | Description |
---|---|
Maximum Number of records per Group | Available when Type is Look-up, except where the pipe is connected to a calculate table. Enter an upper limit for grouped records. When collating the input records into groups, PhixFlow uses the specified sort order. When it has added the maximum number of records, any more records for the group are ignored. This can be useful if you want the most recent record for an attribute that has many records.
|
Index Type | Available when Type is Look-up. Look-up pipes can be configured for fast "indexed" access to cached data collected from external tables, files or from other tables. Indexed access is controlled through configuring a pipe with an index and setting index expressions on grouping attributes. If the Type field on the Pipe is set to 'Look-up' then the field "Index Type" becomes available. This can have the value "None" meaning that there are no index keys or "Exact Match", "Best Match" or "Near Match" as described below:
|
Using the Sort/Group Grid
Anchor | ||||
---|---|---|---|---|
|
To add an attribute to the list:
- click
to open the list of attributes in the input tableInsert excerpt _attributes_show _attributes_show nopanel true - drag an attribute into the grid.
To remove an attribute, click
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
To set the sort or group properties for an attribute, double-click its name in the grid. If you want to create a new attribute that is not present in the input table, in the section toolbar, click
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Field | Description | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Attribute | For input attributes, PhixFlow displays the attribute name. (Read-only) For a new attribute, enter a name. | ||||||||||||||||
Order | Enter the number for the order the attribute appears in the grid and the order in which it is processed. Other attributes are renumbered. | ||||||||||||||||
Direction | Select the sort order
| ||||||||||||||||
Group |
If this attribute is part of the candidate key set, you must tick the Group check box. Otherwise, the attributes will be used only to sort the data in the candidate set. | ||||||||||||||||
Index Expression | This field is available for lookup pipes with an Index Type option selected. Look-up pipes can be configured for fast "indexed" access to cached data. This data is collected from external tables, files or from other tables. Indexed access is controlled through configuring a pipe with an index and setting index expressions on "Group By" attributes here. | ||||||||||||||||
Audit Summary | This option is on the
|
Tip |
---|
In some cases, you may have a pipe connected to a database collector, which pulls data from an external database table. In these cases, the fields in the database must have matching attribute names in the output table. You can refer to it using the format |
Aggregate Attributes Anchor aggregate aggregate
aggregate | |
aggregate |
Use this section to define the properties of data that you want to combine as it comes through the pipe.
Note |
---|
You cannot aggregate data from attributes if the pipe's input is from: If you need to aggregate data from a database collector, you can use an SQL query. |
This section has:
- a grid that lists the attributes that you want to aggregate.
To add an attribute to the list:
- click
to open the list of attributes in the input tableInsert excerpt _attributes_show _attributes_show nopanel true - drag an attribute into the grid.
To remove an attribute, click
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
To set the properties for an aggregate attribute, double-click its name in the grid. PhixFlow opens the attribute's sort properties:
Field | Description |
---|---|
Table Function | Select an function to combine records.
See Aggregate Function for details. Make sure the function matches the data in the attribute. For example, you cannot Sum text. |
Attribute | Select the attribute aggregated from the list of attributes in the input table. PhixFlow does not use the value in this field if the Aggregate Function is Count. |
Name | Enter the name for the aggregated attribute. This can be the same as the original attribute. |
Order | The order of the aggregate attribute in the output table. |
Advanced
Anchor | ||||
---|---|---|---|---|
|
The following options are available when the pipe Type is Push or Pull. Allow Incomplete Stream Sets is also available when the pipe Type is Lookup.
Field | Description | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Data Expected |
| ||||||||||||||||||||||||||
Allow Incomplete Recordsets | This field is available when the input is not Transactional. Where the input table is transactional PhixFlow will behave as though the box is ticked.
PhixFlow cannot complete a recordset if:
Pipes that are not used in the analysis run do not try to complete a recordset, so will not report an error. (Unused pipes can occur if they lead to tables on branches of the model that are not being run.) | ||||||||||||||||||||||||||
Buffer Size | Enter a number for the buffer size used to perform the table calculation. If a large amount of data is being processed, then setting a large buffer size will give better performance. | ||||||||||||||||||||||||||
Max Records To Read | Enter a number for the maximum number of records that should be read down this pipe. The pipe may read more than this number of records if it is configured to carry out multiple reads simultaneously. For example:
| ||||||||||||||||||||||||||
Strategy | Select an option to specify how this pipe should be implemented. See the section on Directed Merge Strategy
| ||||||||||||||||||||||||||
Max Workers | This field is available when Strategy is Directed Enter the maximum number of concurrent worker tasks. When no value is specified, this defaults to 1. | ||||||||||||||||||||||||||
Worker Size | This field is available when Strategy is Directed Enter the number of key values to read for a single worker task, which runs a single select statement. When no value is specified, this defaults to 1000. This is the maximum value that can be used when reading from an Oracle database. | ||||||||||||||||||||||||||
Log Traffic | When system logging → Pipe Logging is ticked, PhixFlow always logs the number of records returned by this pipe, whatever is set here; see System Logging Configuration.
|
Custom Data to Read
Anchor | ||||
---|---|---|---|---|
|
The following properties are available in Basic Settings when you set Data To Read to Custom.
Field | Description | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Only collect from same run | Every time the analysis engine runs, all of the recordsets that are created by all of the tables affected by that analysis run are given the same Run ID.
| ||||||||||||||||
From Offset | Enter the offset applied to the start of the collection period, relative to the period in the output table that requires populating. | ||||||||||||||||
To Offset | Enter the offset applied to the end of the collection period, relative to the period in the output table that requires populating. | ||||||||||||||||
Max Stream Sets | Enter the number of recordsets to be retrieved from the input table. For a push pipe with positive offsets. enter the maximum number of recordsets that can be created i.e. the maximum number of cycles this pipe can initiate. | ||||||||||||||||
Historied |
For example, if:
the pipe reads data from the input table for the period 17/10/07 - 18/10/07. |
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|