| **Navigation:**  Dictionary Diagrammer >====== Dictionary Diagrammer ====== | [[project options asp net.htm|{{btn_prev_n.gif|Previous page}}]][[coming future.htm|{{btn_home_n.gif|Return to chapter overview}}]][[softvelocity datadictionary diagram diagramoptionspanel.htm|{{btn_next_n.gif|Next page}}]] | | || The purpose of the Dictionary Diagrammer is to provide a graphical representation of an existing data dictionary. Tables, columns, keys and relationships information are provided, and you have the option to control the level of detail. After completing the diagram to your specifications, you can print it, or save it in a variety of image formats. You will be happy with its ease of use and intuitive design. Here is a quick start guide to using this powerful new IDE tool: **To create a new Diagram:** 1.Open the Start Page, and select the **Diagrams** hyperlink. 2.Press the **New** button. 3.When prompted, enter a name for the new Diagram file (DCD extension). 4.When the next dialog opens select the desired Dictionary (DCT extension). **To open an existing Diagram:** You have several options; From the **File** menu choose the **Open Recent Dictionary Diagrams** menu item. Or, Click the Open toolbar button and change the file mask to 'Dictionary Diagram (*.dcd) Or, Go to the Start Page, select the **Diagrams** hyperlink, and select the target Diagram to open from the list. or simply press the **Open** button. **General Usage:** There are two list boxes presented; //Dictionary Tables// and //Diagram Tables// ·//Dictionary Tables// represents all tables in the DCT that are NOT on the Diagram. ·//Diagram Tables// represents all of the tables included in the Diagrammer Incremental locators are implemented for both of these lists. Together the 2 lists represent all of the tables in the active dictionary. Adding tables to the Diagram Tables list automatically removes it from the Dictionary Tables list(and vice versa). Clicking on a table in the diagram table should display its properties in 'Table Information' tab. __**To add tables to the Diagram**__ Double-Click on any table in the Dictionary Tables list OR Select one or more tables and press the {{addbut.jpg|AddBut.jpg}} button. __**To remove tables from the Diagram and Diagram Tables list**__ Select one or more tables and press the {{removebut.jpg|RemoveBut.jpg}} button. __**To remove tables from the Diagram (not using the list)**__ Select a single table on the diagram by mouse click , or use the **CTRL + CLICK** or **CLICK** and **DRAG** to select multiple tables, then press the **DELETE** key. __**To move tables in the Diagram**__ **CLICK** to select a table and then move the cursor over the //Table Title// area, where the cursor changes to the NSEW {{nsew.jpg|NSEW.jpg}} shape, and the table is ready to move. You can also multi-select several tables using **CTRL + CLICK** or **CLICK** and **DRAG** - then move all selected tables. __**To move the **____**//entire//**____** Diagram**__ **Alt + LeftMouse** drag/scrolls the diagram. __**To resize tables**__ Click and move cursor to edges, OR **RIGHT-CLICK** on an empty space in the diagram for a menu of options and select **Expand **or **Shrink** for all or just selected tables. {{notebox.jpg|NoteBox.jpg}} //Expand// means resize to show all fields/keys. //Collapse// means make all tables the same size. //Table-names only// shows only that. __**To Scale the Diagram**__ Use the Diagrammer toolbar, or Use the //Pan and Zoom// tool (available on menu) __**To Pan the Diagram**__ The **Alt + Left Mouse** key combination can be used to pan the diagram. Alternatively, holding down the middle mouse button and dragging also will pan the diagram. __**To locate/find Tables on the Diagram**__ **DOUBLE-CLICK** the table in the //Diagram Tables// list. This will move the diagram so the selected table is visible. This action also causes the **Table Information** tab to display the table's properties. **Diagrammer Toolbar** {{diagtoolbar.jpg|DiagToolbar.jpg}} From left to right: | **Open** | Not implemented | | **Save (Diagram or Image)** | Save the Diagram file (*.DCD), or save to Bitmap (*.BMP), GIF, JPEG, or PNG | | **Print (Preview, Print, or PDF)** | Preview your diagram prior to printing, print directly, or print to PDF (PDF printing is currently not implemented). | | **Zoom Out** | Make the diagram viewing area larger (effectively shrinking the diagram) | | **Zoom In** | Make the diagram viewing area smaller (effectively enlarging the diagram) | | **Zoom Percentage** | Select from a drop list of specific diagram scaling | | **Generate SQL** | Not implemented at this time. Planned for future release. | **Context Menu (on empty Diagram area):** **RIGHT-CLICK** on an empty space in the diagram for the following context menu: | **Auto Arrange Tables** | Auto-arrange tries to arrange all the tables using the following rules:1- The tables are not overlapping each other (z-order)2- All related tables are moved close to each other3- Connecting arrows are made as short as possible given the results of rules 1 & 2If you don't like the layout, you can select it again, and each time it recalculates the diagram layout.Currently, tables with no relations are never moved (e.g., are ignored) by the auto-arrange, so if you move them into the "related tables" area, they will not be moved. | | **Freeze Table Positions** | By default, this menu item is checked ON, and the **Auto-Arrange Tables** menu item is disabled.When this item is checked ON, this means that the position of the existing tables on the diagram are not affected when new tables are added to the diagram.To enable the **Auto-Arrange Tables** menu item, in order to have the Diagram editor position tables for you, toggle the checked state of this menu item to OFF, and then invoke the **Auto-Arrange Tables** menu item. | | **Collapse All** | Make all tables the same preset box size | | **Collapse Selected** | Make selected tables the same preset box size | | **Expand All** | Resize all tables to show all fields/keys | | **Expand Selected** | Resize selected tables to show all fields/keys | | **Only Fields** | Displays just the table and field names. | | **Only Key** | Displays just the table and key names. | | **Only Table Names** | Displays just the table names. This is useful for seeing relations and printing. | | **Relationship Descriptions** | Puts text on the graphic arrows (i.e., //aaaaKey<;-->>bbbbKey// OR "//Lookup on// //fieldname"//) | | **Format** | You can control the **Grid Settings** (//Points//, //Lines// or //None//), and **Appearance** of the Diagram from this menu option, including the Background Color and Image, the Tables' Font and Background Colors, and the Arrow Color. You can also select or clear a background image to use in the Diagram. | | **Trim Document Area** | This reduces the width and height of the diagram to just fit all tables. This is extremely useful if you have reduced the size of your diagram, and you need to consolidate the remaining tables into a convenient workspace. | **Context Menu (on any Table title bar area):** **RIGHT-CLICK** anywhere on any table title bar in the diagram for the following context menu: | **Arrange from here** | Temporarily locks the selected tables and re-positions all other tables. This item is disabled unless a Table is selected (a selected table is shown with white selection handles around the frame). | | **Table Properties** | Opens the Dictionary Editor Table Properties dialog. | | **Add Field** | Opens the Column Properties dialog and allows additional columns. | **Working with the Diagram component:** Here are a few tips to consider when working with the Diagrammer. ·Sometimes when a table has many relations or lookups, a table can be drawn on top of another, just click on the Table title area and drag it to the desired location. You can also right-click on an empty area of the Diagram, and from the context menu choose **Auto-Arrange Tables**. ·When you turn on **Relationship Descriptions** from the context menu, description text can intersect the Tables. To resolve this, simply drag the tables to the desired location. Sometimes you may see a row in the table that appears empty, make the table slightly wider to see the text. ·Tables displayed on the Diagram are graphical objects. As such, there are a few things you can do to have a better Diagrammer experience: Usually Diagrams of several hundred tables are not very easy to comprehend, and you are usually better off to create multiple Diagrams instead of one huge Diagram. If you do intend to add hundreds of tables to a Diagram, then we recommend two things that can make that configuration work more efficiently; first, set the Zoom level to 25%, then add all of the tables at one time. This decreases the number of times the component has to re-arrange table locations to match Parent->Child tables, and reduces the demands on your graphics subsystem to draw the tables. Second, to work with hundreds of tables -- the more graphics horsepower the better! {{blk2blue.jpg|blk2blue.jpg}} **Caveats in this release:** ·Table lists are currently not sorted ·Currently, when closing you are not prompted to save the diagram (but the **Save** toolbar button does save it). ·SQL toolbar button is disabled. ·Open toolbar button is disabled. ·Option to print to PDF is disabled. ·Context Menu (from inside table area) will be hooked to DCT Editor edit forms ·Option to set paper size, etc. for **Print Preview** are not implemented.