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.

As you draw the diagram, PhixFlow creates table, attribute and relationship items. You can find:

  • tables in the repository Data → Tables category.
  • attributes listed in the table's properties.

PhixFlow sets the properties for a relationship item automatically. If you want to check them, in the ERD, click the relationship arrow to open its properties.PhixFlow automatically saves any changes

When you make changes to the ERD. This is no longer true, the save will work the same way as an Analysis modelan ERD, remember to 

Insert excerpt
_save
_save
nopaneltrue
.

For ERD concepts, see Understanding ERDs.


Panel
borderColor#7da054
titleColorwhite
titleBGColor#7da054
borderStylesolid
titleSections on this page

Table of Contents
indent12px
stylenone


Create a New ERD

  1. From the home menu, select Data.
  2. PhixFlow displays the list of ERDs. Select Create New from the left hand side.
  3. In the pop-up, enter a name for your ERD, and a description then click confirm ??icon.
  4. 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.
Tip

When you make any changes to the ERD, remember to 

Insert excerpt
_save
_save
nopaneltrue
 them. PhixFlow autosaves any new tables, attributes and relationships check??

Open an Existing ERD

To open an existing ERD you can:

  • From the home menu, select Data and click on an ERD in the list.
  • In the repository, open your application and find Data → 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
      _erd
      nopaneltrue
       icon.

Create a New Table

  1. From the canvas toolbar, drag Drag the 
    Insert excerpt
    _streams_add
    _streams_add
    nopaneltrue
     icon from the toolbar into the diagram.
  2. In the pop-up, enter its a name, for example "Customer" and click
    Insert excerpt
    _dialog_finish
    _dialog_finish
    nopaneltrue
    .
  3. PhixFlow adds the table to the canvas , and opens the table's its properties tab on the right. The table is created with two attributes: UID and Name. The UID is set as the primary key and the Name has the name you entered in the pop-up. is  
    • Name - displays the name entered in step 2.  is set as the display attribute for the table. We might want to make reference to how this is used?
    • UID - the unique identifier and primary key.
  4. To add attributes to the table:
    1. In the table, click 
      Insert excerpt
      _add
      _add
      nopaneltrue
      . PhixFlow opens the attribute properties.
    2. Enter the Name, Type and Length for the data; see Stream Attributes. Attributes are created with the default of a 50 character string. It's important to change this for other types of data, for example, numerical or date/time data. We make no reference to the current table  relation button??
    3. Insert excerpt
      _dialog_finish
      _dialog_finish
      nopaneltrue
       the attribute properties.
  5. PhixFlow adds the attribute to the table in the ERD.

Add an Existing Table

  1. From In the canvas toolbar, Click click the Stream List icon. Tables icon. Should this be an icon?button. ??icon
  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. 

Creating Relationships Between Attributes

The purpose of a relationship is to show that an attribute in one table contains the same data as the same as a primary key in another table. I dont understand this? My understanding is that it allows us to display data from a different table without having to duplicate the data in multiple places? You are aiming to: Not sure how this helps?

  • relate a primary key with a non-primary attribute. do we want to make refence to a foreign key? 
  • ensure related attributes have the same data properties.
To create a relationship between attributes in different tables

For information about relationships see Understanding ERDs.

To connect a primary key in one table with an attribute in another table, click-drag from one attribute to another. 

Expand
titleMore 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.


Drag from primary onto attr - PhixFlow

  • adds the relationship arrow
  • sets the destination attribute to be a foreign key.

    sets it to attr AND CHANGES ITS TYPE

    Drag from table onto attr, PhixFlow automatically connects the UID

    Drag from attr to attr... PhixFlow assumes the source attribute is the primary key.


    Comments from Anthony and Gray: Only if you have dragged a primary key, but we can drag a non-primary key onto a primary key. I think this is a bug - it should only be possible to connect primary to foreign key, and I'm not happy with converting non-key to foreign-key because it currently ignores type mismatches. Can drag a primary key onto a non-primary key (if the types match), can drag a non-primary key onto a primary key (if the type matches). 

    PhixFlow

    • adds the relationship line
    • sets the destination attribute to be a foreign key.

    If you try to create a relationship between two non-primary attributes, PhixFlow assumes the source attribute is the primary key. We don't support this as it's considered a many-to-many.

    • If the source table does not have a primary key, it sets the source attribute to be primary. This isn't true if you've defined a stream elsewhere, but I'm inclined to think that you shouldn't be allowed to add relationships until you have added/nominated a primary key.
    • If the source table already has a primary key, it uses it as the source attribute. 

    Do we need to explain the many-to-one and the one-to-many and that m:n is not supported at this time?

    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.

    Context menu

    To see the context menu for a table:

    in the table header, click  Insert excerpt_more_options_erd_more_options_erdnopaneltrue 


  • right-click anywhere in the table.
  • Image Removed

    Configure → Table properties

    Hide Attributes  →  Hide attributes

    Remove this item from the Diagram → Remove from ERD

    Permanently Delete → Delete everywhere

    Properties

    I cant add a direct comment but the section below relates to the properties toolbar? Should it say tab? it links later to the tabs section.

    Insert excerpt
    _standard_settingsparent
    _standard_settingsparent
    nopaneltrue

    Basic Settings

    FieldDescription
    NameEnter the

    The name for the ERD.

    When you press Return or click Save  PhixFlow opens an empty diagram in the workspace on the left. check??

    ERD Context Menu and Toolbar

    In an ERD, you can hover

    Insert excerpt
    _description
    _description
    nopaneltrue

    Insert excerpt
    _audit
    _audit
    nopaneltrue

    ERD Toolbar

    The toolbar is at the top of the canvas. Hover your mouse pointer over the toolbar or context menu options to see what they are for.

    We have a more menu and make no reference to it? I am note sure we have a right click menu.

    Toolbar

    You can find the toolbar at the top of the canvas.

    This should be to record what goes into tooltips

    a tooltip.

    Tooltips for Dev?? or add the icons??

    OptionDescription
    Create
    CreateDrag this icon onto the canvas to create a table.
    ScreenCreates a new screen for the selected table.
    List
    TablesClick to see a list available tables.
    ScreensClick to see a list available screens.
     Canvas
    SaveSave changes to the diagram. If there is no save icon, PhixFlow is saving changes automatically.
    Refresh

    Redraw the ERD to display recent changes to the diagram.

    HelpSlide open the help panel on the right. there is no help button??
    PropertiesOpen the properties for the current diagram.

    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.

    Ungroup

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

    Select several items then click to group them together.

    Group

    Select several items then click to group them together.

    Back

    For screen layout, move a component back.

    ForwardFor screen layout, bring a component forward.

    Align options

    Click/hover to show all the options for aligning items on the canvas.

    Align Grid

    Organise selected items into a grid pattern.

    Align left

    Align selected items to the left.

    Align right

    Align selected items to the right.

    Align top

    Align selected objects to the  top.

    Align bottom

    Align selected objects to the bottom.

    Distribute horizontally

    For 3 or more items, distributes the selected items evenly between the left and right items.

    Distribute vertically

    For 3 or more items, distributes the selected items evenly between the top and bottom items.

    Context Menu

    In the ERD, right-click a table to show the context menu.

    Option

    Table Pop-up Menu

    You can access more options in a pop-up menu:

    • in the table header, click 
      Insert excerpt
      _more_options_erd
      _more_options_erd
      nopaneltrue
       
    • right-click anywhere in the table.

    Image Added

    OptionRename to Description

    Configure Table

    Table properties

    Open the properties for this table.

    Remove this item from the Diagram

    Remove from ERD

    Remove the selected item(s) from the diagram.

    Show all tables using this table

    Lists the tables with a relationship into this one (many-to-one).

    Show all tables related tables

    Show all tables used by this table

    List the tables this one relates out to (one-to-many).  

    Delete everywhere

    Delete

    Hide AttributesHide attributesCollapse the table so that it only shows the table name, primary key and any foreign keys. Other attributes are hidden.
    Show AttributesShow attributesExpand the table to show all the attributes
    Parmanently DeleteDelete everywhereDDelete the selected item(s) from the ERD and from everywhere it is used.

    Show all tables using this table



    Show all tables related tables

    Show all tables used by this table




    ??Jira needed for Hide attributes. - It tries but doesnt work on first attempt