Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 67 Next »

This page is for application designers who want define the data that will back the application. It explains how to draw an ERD and setup its properties.

Overview

Use an ERD to define the structure of the data that backs your application. For an introduction to ERD concepts and why ERDs are important, see Understanding ERDs and Views.

The process for creating an ERD is slightly different depending on whether or not you have already created tables in PhixFlow.  The following table summarises the different ways you can add tables to an ERD, depending on your starting point. (See the sections below for details of how to add tables and relationships.)

Sections on this page

Starting PointProcessPrimary KeySee
I have no data

Define the tables, attributes and their relationships in the ERD.

Later you will need to add records to the tables:

  • either manually, for example create a screen in which application users can enter data.
  • or via an analysis model.

PhixFlow automatically creates each table with:

  • a primary key called UID
  • a Name attribute
  • the Name attribute set as the display name; see Display Name.

Adding Content to an ERD


Creating a Screen from a Stream
Load Data

I have data but it's not in PhixFlowUse 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:

  • either set one attribute as the primary key and ensure all values will be unique
  • or add an attribute called UID with 
    • Data Type = Integer
    • Precision = 10
  • Set one attribute to be the Display Name.
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.

Adding Content to an ERD

PhixFlow cannot ensure unique values for a primary key where:

  • the name is UID but it's 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

  1. In the repository,  find ERD. Right-click to display the context menu, and select  Add New
  2. Enter a name for your ERD, and a description then click  OK.

    When you are creating tables, choose a name that reflects the entity your table represents.

  3. 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

  1. In the toolbar, click  List Tables.
  2. PhixFlow filters the repository to show the list of tables available in this application.
  3. Drag a table from the repository onto the ERD canvas. 

Create a New Table

  1. Drag  Create New Table  from the toolbar into the diagram.
  2. In the pop-up, enter a name, for example "Customer", and click .
  3. 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.
  1. To add attributes to the table:
    1. In the table, click  Create New. PhixFlow opens the attribute properties on the right, with the default settings of:
      • Type = String
      • Length = 50 characters.
    2. 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
    3. Click  OK to save the attribute properties.
  2. 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 and Views.

To create a relationship, click-drag from one attribute to another.

 More detail
  1. Click on the source attribute.
  2. Drag to the destination attribute. PhixFlow highlights the attribute when your mouse pointer is over it. 
  3. When the destination attribute is highlighted, release the click.

See the table below for the relationships that can be created between attributes.

DragRelationship line
From table1To table2
primary keyattribute

table1.primarykey → table2.attribute
1:many

attributeprimary key

table2.primarykey → table1.attribute
1:many

attributeattribute

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. 

Show Relationships From Other ERDs 

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. 

If a table appears on more than one ERD it may have relationships with tables that are not visible in your current ERD. To see other related tables, right-click a table to show the context menu and select:

  • Show many to one relations Todo Todo-Fiona - check icons  Show many-to-one relations
  • Show one to many relations Todo-Fiona - check icons  Show one-to-many relations

PhixFlow adds the related tables to your ERD. 

To keep the related tables in your ERD, in the toolbar, click  Save.

To remove the related tables from your ERD, in the toolbar, click  Refresh.

Saving ERDs

Changes to tables, attributes and relationships are automatically saved. However, to keep any changes you make to the layout of a diagram, such as moving tables or adding angle points to relationships, remember to click  Save in the toolbar. PhixFlow notifies you if there are unsaved changes when you attempt to close an ERD.

Accessing Properties

You can set properties for all the items in an ERD. To access properties:

  • for the ERD: in the canvas toolbar click  Properties
  • for a table: in the ERD, click on the table header or right-click to open the pop-up menu and select  Configure
  • for an attribute: in the table, click on an attribute
  • for a relationship: in the ERD, click on the relationship line. For relationships you can only add or change the description.

PhixFlow opens the properties panel on the right.

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. 

By default, relationships are straight lines, but you can change them to have angles.

  1. Click on a relationship line to add an angle point, which appears as a blue dot; see the screenshot on the left.
  2. Move the mouse pointer over the blue dot. It changes to a four-way arrow to indicate you can drag.
  3. Drag the point to the position you require. 

To remove an unwanted angle, right-click the blue dot and select Remove Point; see the screenshot on the right.

Properties

Parent Details

If this item is within or belongs to another, it's parent name is shown here. See the Common Properties page, Parent Details section for more details.

Basic Settings

FieldDescription
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.

Toolbars and Popup Menus

ERD Toolbar

The toolbar is at the top of the canvas. Hover your mouse pointer over the toolbar to see a tooltip.

OptionDescription

Create options

 TableDrag this icon onto the canvas to create a table.

List options

 TableClick to open the repository filtered to list the tables available in your application.

 Canvas options

 HelpOpen 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'.

 PropertiesOpen the properties tab for the ERD.
 Zoom OutZoom out to see more of the diagram, with smaller text.
 Zoom InZoom in to see a smaller area of the diagram, with larger text.
 SavePhixFlow automatically saves changes to tables and relationships.
Use this icon to save diagram layout changes to the ERD.

 Refresh

Update the ERD to the last saved diagram layout. This clears any unsaved layout changes. 
Your ERD should automatically show an changes elsewhere in PhixFlow.  For example, if someone adds a new attribute to a table in your ERD, the attribute will appear on the list. If changes are not appearing, click this icon.

Ungroup

todo-Fiona - does not seem to be available

Select a grouped set of items and then click to ungroup them.

Select several items then click to group them together.

Table Pop-up Menu

To access more options in a pop-up menu, in the table header, click  More Options 


OptionDescription

 Configure

todo-Fiona - check Can this be 

 Properties

Open the properties for this table.

 Remove 

Remove the selected item(s) from the diagram.

Show many to one relations
todo-Fiona - should be  Show one-to-many relations

Tables may have relationships to other tables not represented on the current ERD. Use these options to add all related tables to your ERD so that you can see the full relationship set; see Show Relationships From Other ERDs , above.

Show one to many relations

todo-Fiona - should be 

 Show many-to-one relations 

 Show or Hide Attributes

Toggle the table between expanded to show all attributes or collapsed to show only the table name, primary key and any foreign keys. This is useful if your table contains many attributes.

 DeleteDelete the selected item(s) from the ERD and from everywhere it is used.

Attribute Pop-up Menu

OptionDescription
Make/Unset Primary Key
Set the current attribute to be a primary key. Remember to unset any other primary key in the table. 
  Make/Unset Foreign Key
Set the current attribute to be a foreign key.

Attributes

Create a new attribute for the table. PhixFlow opens the properties where you can add a name and set the data type.
 Delete attribute
Delete the attribute from the table. PhixFlow prompts you to confirm.

  • No labels