Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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.

Insert excerpt
_Banners
_Banners
nameERD
nopaneltrue

Overview

For an introduction to ERD concepts and why ERDs are important, see Understanding ERDs

and Views

.

The process for

creating

defining data structures in an ERD

is slightly different depending

depends on whether or not you have already created tables in PhixFlow.

  The following table

The following table summarises the different ways you can add

tables

data to an ERD, depending on your starting point

. (See the sections below for details of how to add tables and relationships.)
Panel
borderColor#00374F
titleColorwhite
titleBGColor#00374F
borderStylesolid
titleSections on this page

Table of Contents
maxLevel4
indent12px
stylenone

Starting PointProcessPrimary KeySee

:

Creating and Importing Data


Starting PointProcessPrimary KeySee
I have CSV or Excel dataDrag the file onto the ERD canvas. PhixFlow automatically imports the data for you.

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
  • and set one attribute to be the Display Name.
  • Creating Tables in an ERD, below.
I have no data

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

Later you will need to add records to the

tables

table:

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

PhixFlow automatically creates

each table

each table with:

  • a primary key called UID
  • a Name attribute
the Name attribute set as the display name; see 
9050658578
a Stream
Load
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:

  • 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
    • Tick Primary Key
  • and set one attribute to be the Display Name.
Load
I have tables in PhixFlow already

In the ERD toolbar, click

Insert excerpt
_

table_list

tables
_

table_list

tables
nopaneltrue
 to display a list of all the tables. Drag tables into the ERD and then add the relationships.

9050658578


Note

Insert excerpt
_uid
_uid
nopaneltrue

How to Define



Add an Existing Table

In the toolbar, click  Insert excerpt_table_list_table_listnopaneltrue.
  • 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

    Creating Tables in 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 Insert excerpt_erd_display_erd_displaynopaneltrue icon.

    Create a New ERD

    In the repository,  find ERD. Right-click to display the context menu, and select  Insert excerpt_add_addnopaneltrueEnter a name for your ERD, and a description then click  Insert excerpt_finish_finishnopaneltrue.
    Tip

    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.

  • Drag and Drop Import: Create a New Table using Excel or CSV
    Anchor
    Excel
    Excel

    1. Drag a CSV or Excel file directly onto an ERD canvas.
    2. PhixFlow creates a table automatically based on the information in the file.

    This topic is also covered in the ERD Fundamentals video course; see Entity Relationship Diagrams.

    Create a New Table 
    Anchor
    NewTable
    NewTable

    1. Drag 
      Insert excerpt
      _table_new
      _table_new
      nopaneltrue
        from the toolbar into the diagram.
    2. In the
    pop-up
    1. popup, enter a name
    , for example "Customer", and click Insert excerpt_dialog_finish_dialog_finishnopaneltrue
    1. that reflects what the table will represent. For example Customer.
    2. PhixFlow opens the properties
    tab
    1. for the new table
    on the right
    1. and adds the table to the canvas.
      The table header displays
    the
    1. its name
    entered in step 2
    1. .PhixFlow automatically adds
    2
    1. two attributes:
      • UID
    - PhixFlow requires
      • , a primary key that is a unique identifier
    and primary key
      • for each
    table
      • record.
      • 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
      • ,  a display name that is shown instead of the numeric UID in a view or form.
    1. To add attributes to the table:
      1. In the table, click 
        Insert excerpt
        _new
        _new
        nopaneltrue
        . 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
      1. Attribute. The following data types have additional properties:
        • For String add Length
        • For Integer add Precision
        • For Decimal add Significant Figures and Decimal Places
      2. Click 
        Insert excerpt
        _finish
        _finish
        nopaneltrue
         to save the attribute properties.
    1. PhixFlow adds the attribute to the table in the ERD.

    Add an Existing Table

    1. In the toolbar, click 
      Insert excerpt
      _table_list
      _table_list
      nopaneltrue
      .
    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 Relationships

    In an ERD you can create a one-to-many relationship between a primary key in

    one table

    one table with an attribute in another table. For relationship concepts, see Understanding ERDs

    and Views

    .

    To create a relationship

    , click

    1. Click-drag from one attribute name to another.
    Expand
    titleMore detail
  • Click on the source attribute.
  • Drag to the destination attribute.
    1. One of the attributes must be a primary key.
    2. PhixFlow highlights the attribute when your mouse pointer is over it. 
    3. When the destination attribute is highlighted, release the click.

    Relationships

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

    .

    :

    Drag fromRelationship
    line
    From table1To table2
    Table 1Table 2
    primary keyattribute
    table1

    1:Many

    Table1.primarykey →

    table2

    Table2.attribute

    1:many


    attributeprimary key
    table2

    1:Many

    Table2.primarykey →

    table1

    Table1.attribute


    1:many


    attributeattribute
    if table1

    If Table1 has no primary key

    :

    , PhixFlow makes the

    table1

    Table1.attribute the primary key.

    if table 1

    If Table1 has a primary key

    :

    , the relationship is from

    table1

    Table1.primarykey instead of from

    table1.

    the attribute being dragged.

    Relationship Restrictions

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

    tip

    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 
    Anchor
    erd-view
    erd-view

    Tip

    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

    popup menu and select:

    Image RemovedShow many to one relations Todo Todo-Fiona - check icons 

    • Insert excerpt
      _rel_in
      _rel_in
      nopaneltrue
    Image RemovedShow one to many relations Todo-Fiona - check icons 
    • Insert excerpt
      _rel_out
      _rel_out
      nopaneltrue

    PhixFlow adds the related tables to your ERD. 

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

    Insert excerpt
    _save
    _save
    nopaneltrue
    .

    To remove the related

    tables

    table from your ERD, in the toolbar, click 

    Insert excerpt
    _refresh
    _refresh
    nopaneltrue
    .

    Saving ERDs

    Changes to tables, attributes and relationships are automatically saved. However, to keep any

    Any changes you make

    to the layout of a diagram, such as moving tables or adding angle points to relationships, remember to click  Insert excerpt_save_savenopaneltrue 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

    on the ERD canvas are automatically saved. 

    Accessing Properties

    To access properties for:

    • the ERD: in the canvas toolbar click
      Insert excerpt
      _property_settings
      _property_settings
      nopaneltrue
    for a table
    • tables: in the ERD, click on
    the table
    • the table header or right-click to open the
    pop-up
    • popup menu and select 
      Insert excerpt
      _config
      _config
      nopaneltrue
    for an attribute
    • attributes: 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.

    Image Removed

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

    Image Removed

    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

    Insert excerpt_parent_parentnopaneltrue

    Basic Settings

    FieldDescriptionName

    The name for the ERD.

    Insert excerpt_description_descriptionnopaneltrue Insert excerpt_audit_auditnopaneltrue

    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

    Insert excerpt_tables_tablesnopaneltrueDrag this icon onto the canvas to create a table.

    List options

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

     Canvas options

    Insert excerpt_help_helpnopaneltrueOpen the help topic with details about working with ERDs. Insert excerpt_align_alignnopaneltrue

    Options to arrange the selected tables in the ERD:

    Insert excerpt_align_grid_align_gridnopaneltrue Insert excerpt_align_left_align_leftnopaneltrue Insert excerpt_align_right_align_rightnopaneltrue Insert excerpt_align_top_align_topnopaneltrue Insert excerpt_align_bottom_align_bottomnopaneltrue Insert excerpt_distribute_horizontal_distribute_horizontalnopaneltrue Insert excerpt_distribute_vertical_distribute_verticalnopaneltrue Insert excerpt_property_settings_property_settingsnopaneltrueOpen the properties tab for the ERD. Insert excerpt_zoom_out_zoom_outnopaneltrueZoom out to see more of the diagram, with smaller text. Insert excerpt_zoom_in_zoom_innopaneltrueZoom in to see a smaller area of the diagram, with larger text. Insert excerpt_save_savenopaneltruePhixFlow automatically saves changes to tables and relationships.
    Use this icon to save diagram layout changes to the ERD. Insert excerpt_refresh_refreshnopaneltrue

    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  Insert excerpt_more_options_erd_more_options_erdnopaneltrue OptionDescription Insert excerpt_config_confignopaneltrue

    todo-Fiona - check Can this be 

    Insert excerpt_property_settings_property_settingsnopaneltrue

    Open the properties for this table.

    Insert excerpt_remove_removenopaneltrue

    Remove the selected item(s) from the diagram.

    Image RemovedShow many to one relations
    todo-Fiona - should be  Insert excerpt_rel_out_rel_outnopaneltrueTables 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.

    Image RemovedShow one to many relations

    todo-Fiona - should be 

    Insert excerpt_rel_in_rel_innopaneltrue  Insert excerpt_attributes_show_hide_attributes_show_hidenopaneltrue

    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.

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

    Attribute Pop-up Menu

    OptionDescription Insert excerpt_key_primary_set_key_primary_setnopaneltrueSet the current attribute to be a primary key. Remember to unset any other primary key in the table.  Insert excerpt_key_foriegn_set_key_foriegn_setnopaneltrueSet the current attribute to be a foreign key. Insert excerpt_attributes_attributesnopaneltrueCreate a new attribute for the table. PhixFlow opens the properties where you can add a name and set the data type. Insert excerpt_delete_item_delete_itemnopaneltrue attributeDelete the attribute from the table. PhixFlow prompts you to confirm. HTML Comment
    hiddentrue
    Things not yet implemented
    For the Starting Point table:
    I have data in Excel files

    Drag the Excel files directly into an ERD. PhixFlow loads the data structure and records. It then adds the table to the ERD.

    In the ERD, you then add the relationships between tables.

    PhixFlow prompts you to set the primary key and display name attributes.Link to doc on XD flow 4.10
    For Open an Existing ERD
    1. From the home menu, select Data and click on an ERD in the list.
    2. In the repository, open your application and find Data → ERD.
      • Either right-click on an ERD name and select Display.
      • Or...
    For Create a New ERD
  • From the home menu, select Data.
  • PhixFlow displays the list of ERDs. Select Create New from the left hand side.
  • In the pop-up, enter a name for your ERD, and a description then click  Insert excerpt_dialog_finish_dialog_finishnopaneltrue.
    Tip

    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.

  • For Create a Table From an Excel File  Document Flow 4.10
    For Create Relationships table
    primary keytable headertable1.primarykey → table2.new-attribute
    1:many

    pane on the right.