Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
This page is for application designers who want to display a grid of data on a screen.
Overview
You can add a grid to a screen to display table data. This page explains how to create a grid, using example data for employees from various companies.
Tip |
---|
Creating an Employees Grid
Once you have a screen created it is simple to add any data to it. To add data:
| ||||||||||
|
Creating a Grid
On a screen canvas, to add a grid to display data:
- In the screen toolbar, click
Insert excerpt _table_list _table_list nopanel true - Drag a table from the list and drop
- it onto the screen
- canvas.
This example uses the Employees table
- .
- PhixFlow
- prompts you to choose how to display the data
Panel | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
- :
Click
. PhixFlow adds an empty grid to the canvas.Insert excerpt _grid _grid nopanel true - PhixFlow displays the Available Attributes window, as shown in the animation below. Select attributes and drag them onto the empty grid.
PhixFlow adds the attributes as columns and populates the table with the records in the table.
The appearance of the grid is set in the application properties →
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Marking Columns as Editable
Anchor | ||||
---|---|---|---|---|
|
By default all grid attributes are read only. Grids can be made editable by
ClickPhixFlow assumes that the data in a grid should not be editable by the application user, so sets the grid attributes to be read-only. If you want the application user to be able to edit the data in one of the grid columns:
- In the grid, click on the attribute column header to open its property editor
- Open Grid Settings
Untick Read Only
Info |
---|
Strings, Bigstrings, Integers, Floats and Decimals allow users to type to change its value Dates and Datetimes have a date picker to change its value Display name attributes will automatically appear as a drop down. Selecting a different value, e.g. Company, will automatically update the ID stored in the foreign key attribute |
Saving Data
To save changes to editable attributes
- Right click on a grid and Show the view configuration
- Open the Advanced section
- Tick Auto Save
This will automatically save any changes made to the grid. An action can be added as a save action below this field if required.
Drop Downs
Any attribute can have a drop down added for a user to select a value. See View Attribute.
Attribute Column FormattingAttribute columns displayed on a grid can be styled to improve their display to users.
Labels
Some attributes may- properties; see View Attribute.
In
→ Grid Settings, untick Read Only.Insert excerpt _property_tabs _property_tabs name basic nopanel true
The way an application user changes a cell value in a grid depends on the data type; see Understanding Data Types. The application user can:
- overtype a value for data that is a string, bigstring, integer, float or decimal
- select from a date-picker for dates and date/times
- select from a drop-down for an attribute that is set as the display name.
PhixFlow automatically updates the data record's unique identifier attribute to match the selected display name.
Tip |
---|
If an attribute is set as the display name, PhixFlow shows this attribute instead of a unique identifier; see Understanding ERDs and Attribute properties. |
Autosaving Changed Data
When the application user makes a change to a cell in a grid, PhixFlow needs to save the change to the table. One option is to have a save button that application user must click to save any changes; see Understanding Actionflows and Save Node.
Alternatively, allow PhixFlow to automatically save any changes that the application user makes. This changes applies to the whole grid.
- In the grid, right-click to open the popup menu and select
to open the grid view properties.Insert excerpt _view_show _view_show nopanel true - In
→ Advanced, tick Auto Save.Insert excerpt _property_tabs _property_tabs name basic nopanel true
Configuring Drop-Down Options
If you want to the application user to select from a set of values for a cell, add a drop-down using the view attribute properties
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Labelling Columns
Anchor | ||||
---|---|---|---|---|
|
By default, PhixFlow displays the attribute name as the column header. However, some attributes have technical names that make no sense to users on the front end. To relabel an Attribute
Clickapplication users. In this case, you can add a different label to use in the header. You can also group columns under a shared header.
Adding Labels
To add a label that PhixFlow uses instead of the attribute name:
- In the grid, click on the attribute column header to open its properties
- Open the section Grid Settings
- Add a label to the field Label
It is possible to group attributes together using the label. In the Employees grid we can group and relabel the attributes first_name and last_name.
- To first_name add
Name, First
- To last_name add
Name, Last
- .
- In
→ Grid Settings → Label, add the text you want to appear in the column header.Insert excerpt _property_tabs _property_tabs name basic nopanel true
Grouping Columns
If the data has related attributes, you can display the columns under a shared heading.
- In Basic Settings → Order, put the attributes next to each other in the grid.
- For each attribute, in Grid Settings → Label, specify a group heading using the form
Group, Specific
For example, in the Employees grid we have two name-related attributes next to each other:
First name | Last name |
---|
To change this to appear as:
Name | |
---|---|
First | Last |
- For the view attribute First name, set Label:
Name, First
- For the view attribute Last name, set Label:
Name, Last
The animation below shows how PhixFlow groups the adjacent columns using the group label.
Setting Grid Colours
Anchor | ||||
---|---|---|---|---|
|
Table Attribute
It is possible to set the background colour for an attribute using a Formatting rule. See Applying Formatting Rules.Where your application uses the Theme 2.1 package template, grids are configured to so that rows are automatically highlighted when the application user
- hovers their mouse pointer over a row (highlight on-hover)
- clicks a row to select it.
Highlight on Mouse Hover
Highlighting the Selected Row
To set or change seleted row highlight colour:
- In the repository, click on your application's name to open its properties.
- In
→ Style Settings section → Row Selection Style, clickInsert excerpt _property_tabs _property_tabs name style nopanel true
to open the style properties.Insert excerpt _open_properties _open_properties nopanel true
If no style is set, click
to add one.Insert excerpt _add _add nopanel true - Either select a Background Colour ; see Style
Or go to CSS Properties section and specify abackground-colour
. see CSS Properties - Screen Styling.
To specify the background colour for parts of the grid...
To highlight a row when the application user changes a value in a column
view attribute properties → Grid Settings → tick Changes Row Colour
To specify the background colour of a column, in the attribute properties, specify a formatting rule; see Applying Formatting Rules.
To highlight the selected row
Table Row
It is also possible to change the colour for a selected row, this is set:
For your Application
- Go to Application Properties → Style Tab → Style Settings section → Row Selection Style
- Update the existing sytme by clicking on Row Selection Style hyperlink or add a new style. see Screen Styling.
Hiding Columns
Some columns might not make sense to users on the front end but are important for functionality, for example the primary key of the table. To hide a particular attribute
- Click on the attribute column header to open its properties
- Open the section Grid Settings
- Tick Always Hidden
It is also possible to conditionally hide a column. To conditionally hide a column
- Click on the attribute column header to open its properties
- Open the section Grid Settings
Add an expression to Hide if evaluates to true, for example
Code Block _client.mobile
This expression will hide a column if the screen is being used on a mobile device.
Column Widths
There are multiple ways to change the column widths. To change widths using the editor
- Click on the attribute column header to open its properties
- Open the section Grid Settings
Add a number, e.g. 100 to Grid Default Width (pixels). The column will then always be 100px. Or,
- Add a number to Minimum Width. Adding 100 to Minimum Width will mean that the column will not be smaller than 100px wide, but will stretch to fill the available space on larger screens.
Alternatively, if grid columns are resized directly on the grid when the screen is unlocked and the screen is then locked again, PhixFlow will remember these widths and set the Grid Default Width (pixels) to that size.
Reordering columns
The order the attributes are displayed on a grid can be changed in the following ways
- Changing the Order field on the attribute editor
- Dragging and dropping an attribute to move it directly on the grid
- Dragging and dropping an attribute to move it on the view editor
Number and Date Formats
Numbers and dates can be reformatted on the grid by adding a number or date format. For example, a company might prefer a date to be formatted as 01 Jan 2000 instead of 01/01/2000. To apply a number or date format
- Click on the attribute column header to open its properties
- Go to the section Stream Attribute Details under Basic Settings
- Select or add a format.
For more information see Date Time Format and Number Format
Formatting Rules
It is possible to add formatting rules to grid attributes to change their styles based on an expression. For example, the Companies table has a Status attribute which a user might want to be green if its value is Approved. To add this formatting
- Click on the attribute column header to open its properties
- Go to the section Formatting Rules
- Click
Insert excerpt _add _add nopanel true Add the expression
Code Block _current.Status == "Approved"
This will apply the attached style when the status is Approved.
- Add or select a style
- Click
Insert excerpt _save _save nopanel true
For more information on using expressions, see Expressions and Scripts.
More Information
- Filtering and Sorting Grids and Charts
- Formatting and Styling Grids and Charts
- Using Relational Views
- Actions on Grids and Charts
- For a complete list of view properties and their functions see View.