Versions Compared
Version | Old Version 1 | New Version Current |
---|---|---|
Changes made by | ||
Saved on |
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Overview
Tables are a key model component. They represent a structured store of data within PhixFlow receiving data from one or more components, processing it then storing it. When you make changes to tables and attributes, PhixFlow automatically publishes them to the database; see Publishing Tables.
property_toolbar Insert excerpt _
property_toolbartableFile _
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Basic Settings
Field | Description |
---|---|
Name | The name of the table. |
name | FileTable |
---|
Attributes
The grid contains a list of the attributes in the table. This section has a toolbar with standard buttons, see Menu Options and Toolbar Buttons, andThe grid lists the attributes (data columns) in the table data. To edit the properties of an attribute, double-click the attribute name to open the Attribute properties.
To remove an attribute from the table, select the attribute and clickTo add an existing attribute to the list:
ClickTo edit only the expression:
- Right-click an attribute name to display the context menu.
- Select Edit the expression field.
- PhixFlow opens a simple text editor box
- Make changes to the attributes expression.
- Click Image Removed to save your changes.
Views
This section has a toolbar with standard buttons, see Menu Options and Toolbar Buttons. The grid contains a list of the data views for this table.
To edit the properties of an view, double-click its name. To add a view to the list, clickUpdating a static table
In general, static tables are not updated during an analysis run that is initiated on another table in the model. The exception is when an incoming push pipe is triggered, as this will force the table to update itself.
Instead, to update the data in a static table you must run analysis directly on the table via:
- the model
- a task plan.
Select the time period for the table:
Excerpt | ||
---|---|---|
| ||
Transactional This allows multiple users to run independent analysis tasks at the same time. Daily This is a non-transactional table type, and generates or collects data every day. Monthly This is a non-transactional table type, and generates or collects data every month. Variable This is a non-transactional table type, and generates or collects data since the more recent run of the table to the current date. |
As transactional tables need a UID
attribute, PhixFlow automatically creates this attribute if it does not already exist.
This option affects the following items for which this is the backing table:
- views
- screens
- card components.
If no option is is selected, PhixFlow assumes the default data range is All.
You can override this setting using the options Use Custom Data Range and Data Range available:
You cannot override this setting for a view.
Select the table type; see Types of Table and When to Use Them. The type indicates the function that operates on the data.
- Aggregate Table
- Calculate Table
- CalculateBySet Table
- Cartesian Table
- Merge Table
Select a loop pipe from the list of those available.
A loop pipe links the table back to itself. It compares new data records to the existing data records. If there is a repeated record PhixFlow uses the new one in the table and marks the old one as superseded
.
do ( $aRange = [], addElement($aRange, rng.RangeFrom), addElement($aRange, rng.RangeTo), $bRange = [], addElement($bRange, $aRange), $bRange )
Where rng.RangeFrom = 500 and rng.RangeTo = 1000, the above example evaluates to [[500,1000]], which is a list containing 1 element, which is itself a list containing 2 elements. An input multiplier that evaluates to [3,4,7,8] would run the Table 4 times.
Because Input Multipliers are evaluated first in the PhixFlow Timing Cycle they are often used to look up values that can be passed to Database or other Collectors.
For example :
ifNull(in.ASSET, [1,10,12] , // else do [5,7] )
will create 3 records for every record in the table if in.ASSET contains a value (setting _type = 1, 10 and 12 in each case). Otherwise it will create 2 records for every record in the table (and set _type = 5 and 7). An output multiplier may also evaluate to a record, or a group of records. For example an Output Multiplier with the expression:do( lookup(lkin, $num = in.BNumber), lkin )
will return a list of records which match the lookup on the lkin pipe. In this case the required data can be extracted from the Output Multiplier using the following expression :
do ( $values = _type, $values.account_num )
If the output multiplier expression evaluates to _NULL, an empty list of values or an empty list of records then a single output record will be produced with _type set to _NULL, _NULL or an empty record respectively.
Select Records to Output
(Formerly Output Filter)
You can select a subset of records to output to the next modelling object. You select records using the data in any attribute that is in the table output. Enter an expression that should evaluate to true or false (equivalently 1 or 0).
When the expression evaluates to true or 1, the records found by the expression are selected and output to the next modelling object.
For example:
- A table containing data about accounts has an attribute called "active".
- You only want to include "active" accounts in the following tables.
- Active accounts have the value 1.
To select active accounts, enter the expression _out.active
.
All records that have the active attribute set to any other value are ignored.
Actions
This section has a toolbar with standard buttons, see Menu Options and Toolbar Buttons. The grid contains a list of actions that operate on the table.
To edit the properties of an action, double-click its name. To add an action to the list, clickRecord-Actions
This section has a toolbar with standard buttons, see Menu Options and Toolbar Buttons. The grid contains a list of record-actions that can update records in the table.
To edit the properties of a record-action, double-click its name. To add a record-action to the list, clickSort Orders
This section has a toolbar with standard buttons, see Menu Options and Toolbar Buttons. The grid contains a list of the sort orders for this table.
To edit the properties of a sort order, double-click its name. To add a sort order to the list, clickERDs
The grid displays a read-only list of the Entity Relationship Diagrams (ERDs) that this table is part of. Double-click an ERD to open it. See Entity Relationship Diagrams.
Relations
This section has a toolbar with standard buttons, see Menu Options and Toolbar Buttons. The grid displays a read-only list of the relationships that this table has to attributes in other tables. Double-click a relationship to display it's properties; see Relationship and Entity Relationship Diagrams.
Filters
This section has a toolbar with standard buttons, see Menu Options and Toolbar Buttons. The grid contains a list of the filters that can be applied to this table. You can add filters to view based on this table.
All filters in this list are available in the default view for this table. For views that you create, in the View properties tab → Filters section, you can add filters. The list of available filters is populated by the filters defined for the table.
To edit the properties of a filter, double-click its name. To add a filter to the list, clickTip |
---|
In a view grid, the header row has a drop-down list of filters. The drop-down list is populated by the filters that are selected on the view. The filters must first be defined for the table here. |
Inputs
This section lists all pipes that connect into the table. Double-click a pipe to view more details and make changes. See Pipe.
This section has a toolbar withNote |
---|
This list can include pipes that have no input. This occurs if the source table has been deleted or if a model has been moved to a different PhixFlow instance (export/import), leaving behind a referenced table. Any pipes with no input are highlighted in yellow. To resolve pipes with no input you can:
|
The following properties affect the number of data records a user can download from a view, such as a grid, chart or card; see Download CSV or Excel Data.
Available when Allow Unlimited Downloads is ticked.
Use this section to select the user groups whose members can download an unlimited number of records.
This section has a toolbar with standard buttons, see Menu Options and Toolbar Buttons, andThe grid contains a list of user groups that are exempt from the Table Download Limit. To add a user group to the list:
ClickUse the following options to specify how PhixFlow manages old data when a table-data-delete task runs.
Warning |
---|
We recommend that you always specify the data retention values for every table you create.
If no data retention option is set, PhixFlow displays an error in the Errors section, above. |
- Using Tasks and Task Plans for information about tasks.
- Deleting Old Data to see how you can use these values in data management strategies.
Retain All Data
Warning |
---|
Tables with Retain All Data ticked never have their data deleted and the data will accumulate. This can lead to performance issues. |
Keep for N Days
The age of data in a recordset is its 'to' date, relative to the 'to' date of the newest valid recordset in the table .
When a table-data-delete task runs for a table and:
- Keep for X Days only is set, PhixFlow deletes table data that is older than N days.
- Keep for Y Recordsets only is set, PhixFlow keeps the most recent X recordsets and deletes recordsets that exceed X.
- both Keep for X Days and Keep for Y Recordsets are set, PhixFlow deletes the table data that meets both conditions.
- neither Keep for N Days nor Keep for X Recordsets are set, PhixFlow keeps table data indefinitely. This can lead to performance issues.
The number of recordsets to keep in the table.
Keep Superseded for N Days
Enter the number of days to keep superseded records in the table data.
Tip |
---|
Remember to keep superseded records for as long as you want the option to roll back the data. For example, when Keep Superseded for N Days is set to 4, you can run roll back on data that was superseded up to 4 days ago. A table-data-delete task removes superseded records older than 4 days, so PhixFlow no longer has the data to be able to roll it back. |
In a table where the superseded date is tracked, the table data contains a mixture of active records and records that have been superseded.
When a table-data-delete task runs for a table and:
- Keep Superseded for N Days only is set, PhixFlow deletes data records that were superseded more than N days ago.
- Keep Superseded for X Recordsets only is set, PhixFlow deletes superseded records from the recordsets that exceed X.
- both Keep Superseded for N Days and Keep Superseded for X Recordsets are set, PhixFlow deletes the superseded records that meet both conditions.
- neither Keep Superseded for N Days nor Keep Superseded for X Recordsets are set, PhixFlow keeps superseded records indefinitely. This can lead to performance issues.
Available when Track Superseded Data is selected.
Enter the number of recent recordsets that will retain their superseded data records.
Advanced
Only change the advanced properties with advice by PhixFlow support.
Use this property if your database administrator wants to query table data in the PhixFlow database.
Enter a string in the format v_xxxx
. When the table is published to the database, PhixFlow creates a view. If the table is deleted, the next system task that runs will clear the associated view from the database.
By default, this field is blank and no view is created in the database.
See also Configuring Access to Database Views.
This toggle is available when the Analysis Options → Period is Transactional.
When Audit Manual Changes is first set, the attributes UpdateAction
, UpdatedByName
, UpdatedByID
and UpdatedTime
will be created if they do not already exist. If you do not require these attributes, delete them. For the UpdatedByName
attribute, PhixFlow creates a field of 250 characters.
UpdateAction
must be set to the type of action, such as INSERT, UPDATE or DELETE. The other attributes will be populated if they exist on the table:
UpdatedByName
- the name of the user that performed the update,UpdatedByID
- the internal id of the user that performed the updateUpdatedTime
- the date and time the update was made
- All: indexes on the table are optimised for selecting from all recordsets (non-historied reads).
- Latest: indexes on the table are optimised for selecting from the latest recordset (i.e. for historied reads).
- Superseded: indexes on the table are optimised for self-updating tables which have a mostly superseded records.
- None: no indexes are created on the table.
- Partitioned: this index scheme is specific to partitioned tables; see Storage Type below. Partitioned tables must use this index scheme, and only partitioned tables can use it.
- Database: Store the data in a regular table within the PhixFlow database. This is the most common option
- Database (Partitioned): Store the data in a partitioned table within the PhixFlow database. This option provides improved performance for rollback and retaining very large recordsets. The option is only available if "partitioning" is available within your database installation.
- In Memory: Data for the table will not be written to the database. This option can be used (for example) when you want to aggregate large amounts of unsorted data which can then be written to a stored table.
This option relates to an actionflow with a save node that inserts a new record into a table. Each new record requires a unique value for the record's primary key. Use this option to specify how PhixFlow generates the primary key value.
- Internal: PhixFlow generates unique primary key values automatically. This is equivalent to setting the attribute expression to
_NULL
. - Sequence: display the Primary Key Generator Sequence option, in which you can select a sequence of values.
Available when Primary Key Generator is Sequence.
Select a sequence to assign a new value to the primary key attribute of a new record; see Sequence.
The new record takes the next primary key value in a sequence. This is equivalent to setting the attribute expression to nextValue("sequenceName"
.
Available when Period is Transactional.
This can be useful where you want to make sure that two analysis runs do not attempt to update the same records at the same time e.g. as a result of two people selecting the same records in a view and then hitting the same action button at the same time to process those records.
Any additional analysis tasks submitted while this table is waiting to start, or while it is generating data, will wait until this table has completed its analysis before they start.
File Table. | |
Enabled | Enable to allow a file to be uploaded and associated information captured, when a file(s) is dragged and dropped onto a File Display or File Gallery component. |
File Location | This File Location is added to the end of the File Location defined in the System Console, it facilitates the association of a file belonging to this File Table being placed in a specific subdirectory. For Example, the system console defines "/opt/data/FileTableUpload" and the File Location on the File Table set "/secure". This means all file uploaded to this File Table will be placed in "/opt/data/FileTableUpload/secure" |
Read Only | Tick to signify that the file table's attributes cannot be amended. |
Description | Enter a description to explain the purpose of this item. |
Attributes
s have a set of predefined attributes that cannot be changed, deleted or added to. These attributes are: Insert excerpt _tableFile _tableFile nopanel true
Field | Description |
---|---|
UID | The file's image or placeholder image. Hover over the image to see the unique identifier. |
Name | A spare field that can be set by the user. |
Original File Name | The name of the file before it was uploaded to PhixFlow. |
Mime Type | A two-part identifier used to indicate the intended datatype of a file. |
Created DTM | The date and time the file was uploaded to PhixFlow. |
Created By | The User who uploaded the file. The information is taken from the users profile in the format, FirstName FamilyName (emailaddress). |
File Size | The file size, in KB. This attribute is read only by default. |
Path | The directory where the files are stored, as specified by the File Table Upload Locations in the System Configuration and in the Basic Properties. This attribute is read only by default. |
Url | Provides a URL to access the file, using the System URL, defined in System Configuration, as the base for the URL it creates. It can be used as a link for a download or sent to a PhixFlow URL component to display the file (where appropriate) on a screen. Note: The URL created will automatically escape non-URL safe characters, such as spaces. |
Extension | The file type, e.g. png, MP4 or PDF |
Label | A spare field that can be set by the user. |
Content Id | The ID of the attachment within an email. This allows associated email attachments to be seen. |
Inline | Defines if the file is to be displayed within an email body. |
Folder Id | An ID that links files uploaded at the same time, e.g. files uploaded together will have the same Folder Id such as files received by an email or where multiple files have been dragged onto a File Gallery component. |
See All Sections
Expand | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Errors
|
|
Live Search | ||||||||
---|---|---|---|---|---|---|---|---|
|
Panel | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
Learn More
- Entity Relationship Diagrams
- Displaying Data (Views)
- Analysis Models for Batch Processing Data
- Attribute
- View