Starting Point | Process | Primary Key | See |
---|---|---|---|
I have no data | Define the tables, attributes and their relationships in the ERD. Later you will need to add records to the tables:
| PhixFlow automatically creates each table with:
| Defining Data Structures using ERDs |
I have data but it's not in PhixFlow | Use an analysis model to connect to your data. PhixFlow can read the data structures to create tables. When you run analysis on the model, PhixFlow loads the data records. | In each table:
| Load Data |
I have tables in PhixFlow already | In the ERD toolbar, click List Tables to display a list of all the tables. Drag tables into the ERD and then add the relationships. | Defining Data Structures using ERDs |
PhixFlow cannot ensure unique values for a primary key where:
- the name is UID but its data type is not integer
- the name is not UID
If your data already has a unique attribute, you can use that as the primary key. For example, the Teacher
table could have a National Insurance
attribute, which would be unique to a teacher. In this case, you must set up your own processes to make sure that the records in a table all have unique values in the primary key.
How to Define an ERD
Open an Existing ERD
In the repository, find ERD.
- Either right-click on an ERD name and select Display.
- Or double-click the ERD name to open the properties. In the properties toolbar, click the Display icon.
Create a New ERD
- In the repository, find ERD. Right-click to display the context menu, and select Add New
Enter a name for your ERD, and a description then click Apply and Close.
When you are creating tables, choose a name that reflects the entity your table represents.
PhixFlow opens a new ERD canvas on the left with a toolbar at the top. Hover your mouse pointer over toolbar icons to display a tooltip.
Add an Existing Table
- In the toolbar, click List Tables.
- PhixFlow filters the repository to show the list of tables available in this application.
- Drag a table from the repository onto the ERD canvas.
Create a New Table
- Drag Create New Table from the toolbar into the diagram.
- In the pop-up, enter a name, for example "Customer", and click .
- PhixFlow opens the properties tab for the new table on the right and adds the table to the canvas.
The header displays the name entered in step 2. PhixFlow automatically adds 2 attributes:
- UID - PhixFlow requires a unique identifier and primary key for each table.
- Name - PhixFlow sets the Name attribute to be the display name. In data grids and forms etc. PhixFlow uses this attribute to provide a user-friendly name, rather than a numeric identifier. Optionally, change the attribute name.
- To add attributes to the table:
- In the table, click Create New. PhixFlow opens the attribute properties on the right, with the default settings of:
- Type = String
- Length = 50 characters.
- In the properties, enter the Name and select appropriate type properties, such as Date or Integer; see Attributes. The following data types have additional properties:
- For String add Length
- For Integer add Precision
- For Decimal add Significant Figures and Decimal Places
- Click Apply and Close to save the attribute properties.
- In the table, click Create New. PhixFlow opens the attribute properties on the right, with the default settings of:
- PhixFlow adds the attribute to the table in the ERD.
Create Relationships
In an ERD you can create a one-to-many relationship between a primary key in one table with an attribute in another table. For relationship concepts, see Understanding ERDs.
To create a relationship, click-drag from one attribute to another.
See the table below for the relationships that can be created between attributes.
Drag | Relationship line | |
---|---|---|
From table1 | To table2 | |
primary key | attribute | table1.primarykey → table2.attribute |
attribute | primary key | table2.primarykey → table1.attribute |
attribute | attribute | if table1 has no primary key: PhixFlow makes the table1.attribute the primary key if table 1 has a primary key: the relationship is from table1.primarykey instead of from table1.attribute. |
PhixFlow cannot create a relationship between your selected attributes if your selected foreign key attribute:
- is already a foreign key to a different primary key.
- has a different Data Type and type properties to the primary key.
In these cases, PhixFlow reports an error: Related attributes must have the same type and length. This type/length is different.
If this happens, you can:
- create a new attribute to be the foreign key
- change the foreign key attributes to match the primary key, provided there is no data in the table
- create the relationship with a different attribute.
To change the data type properties, In the ERD, click on an attribute to open its properties.
If you have created several ERDs to define the data structure that your application requires, then each ERD is a view onto a part of the full data structure.
Saving ERDs
Changes to tables, attributes and relationships are automatically saved. However, to keep any changes you make to the layout, such as moving tables or adding angle points to relationships, remember to click Apply in the toolbar. PhixFlow notifies you if there are unsaved changes when you attempt to close an ERD.
Rearranging ERDs
To move tables around in the ERD, click on the header and drag the table. There are also Align options in the toolbar that you can use to line up or distribute selected tables.
If you want to highlight the relationships that affect a table, click the table to select it. The following screenshot shows the Teacher table is selected.
- Blue lines indicate relationships to a foreign key in the selected table
- Green lines indicate relationships from the primary key in the selected table.
If a table has a lot of attributes that you do not need to see, collapse the list to show only the table's primary and foreign keys.
- Either right-click on a table and select Hide attributes or Show attributes
- Or double-click on the table header.
To select multiple tables, draw a square around them.
Properties
Parent Details
If this item is within or belongs to another, its parent name is shown here. See the Parent Details section on the Common Properties page for more details.
Basic Settings
Field | Description |
---|---|
Name | The name for the ERD. |
Description
We recommend that you always enter a description to explain the purpose of this item.
Audit Tab
Audit Summary
See the Common Properties page, Audit Summary section.
ERD Toolbar
The toolbar is at the top of the canvas. Hover your mouse pointer over the toolbar to see a tooltip.
Option | Description |
---|---|
Create options | |
Table | Drag this icon onto the canvas to create a table. |
List options | |
Table | Click to open the repository filtered to list the tables available in your application. |
Canvas options | |
Help | Open the help topic with details about working with ERDs. |
Arrange Selected Items | Options to arrange the selected tables in the ERD: Align to Grid Align Objects to Left Align Objects to Right Align Objects to Top Align to base Error rendering macro 'excerpt-include' : No link could be created for '_distribute_horizontal'. Error rendering macro 'excerpt-include' : No link could be created for '_distribute_vertical'. |
Properties | Open the properties tab for the ERD. |
Zoom Out | Zoom out to see more of the diagram, with smaller text. |
Zoom In | Zoom in to see a smaller area of the diagram, with larger text. |
Apply | PhixFlow automatically saves changes to tables and relationships. Use this icon to save layout changes to the ERD. |
Refresh | Update the ERD to the last saved layout. This clears any unsaved layout changes. |
Ungroup Not available?? | Select a grouped set of items and then click to ungroup them. Select several items then click to group them together. |
tmp
Menu option | Description |
---|---|
Delete | When a specific component is selected, delete the component. Other delete options that may be available relate to specific types of component in the selected pane. |
Delete Element | Delete a pane or dashboard element from the layout. Check whether Remove Element from Dashboard is also going?? |
Delete | Delete a form component from the layout. |
Create New Form | Create a new form in the current area. |
Pin/Unpin Selected Objects | Fix the position of selected objects. ??Going away?? |
Palette | Open the palette to drag in components. |
Turn Auto Size Off/On | Toggle whether or not the currently selected component is automatically autosized when an application window is resized by the user. Using this option, or manually resizing a component may change the state of the Layout → Style Settings → Auto Size property. |
Arrange the selected items | Options to arrange the selected components within a pane: Align Objects to Left Align Objects to Right Align Objects to Top Align to base Error rendering macro 'excerpt-include' : No link could be created for '_distribute_horizontal'. Error rendering macro 'excerpt-include' : No link could be created for '_distribute_vertical'. |
Find in Repository change to Show in layers?? | Open the repository with to see the selected component in the list. This can be useful if you want to move a component. |
Screen Properties | Open the properties tab for the screen. |
Show Record Details | Display information about the table and its records. Check this option's name has changed?? |
Select all children | For the selected parent container, select all the child components too. |
Show Attributes for <table name> | Open the list of attributes for the table. This option is available when a screen is backed by a table. |
Show Attributes for <view name> | Open the list of attributes for the view. This option is available when a screen is backed by a view. |
Table Pop-up Menu
You can access more options in a pop-up menu:
- in the table header, click More Options
- right-click anywhere in the table.
Option | Description |
---|---|
Configure | Open the properties for this table. |
Remove this item from the Diagram | Remove the selected item(s) from the diagram. |
Show many to one relations | |
Show one to many relations | |
Hide Attributes | Collapse the table so that it only shows the table name, primary key and any foreign keys. Other attributes are hidden. |
Show Attributes | Expand the table to show all the attributes |
Parmanently Delete | Delete the selected item(s) from the ERD and from everywhere it is used. |
Attribute Pop-up Menu
Option | Description |
---|---|
Make Primary Key | |
Make Foreign Key | |
Add New Stream Attribute | |
Delete Attribute |