Microsoft Office Visio Database Diagram (via ERX) - Import
Bridge Requirements
This bridge:is only supported on Microsoft Windows.
Bridge Specifications
Vendor | Microsoft |
Tool Name | Office Visio Database Diagram |
Tool Version | 97 to 2016 |
Tool Web Site | http://microsoft.com/visio |
Supported Methodology | [Data Modeling] Data Store (Physical Data Model, Logical Data Model) via erwin 3 (.ERX) File |
Data Profiling | |
Incremental Harvesting | |
Multi-Model Harvesting | |
Remote Repository Browsing for Model Selection |
SPECIFICATIONS
Tool: Microsoft / Office Visio Database Diagram version 97 to 2016 via erwin 3 (.ERX) File
See http://microsoft.com/visio
Metadata: [Data Modeling] Data Store (Physical Data Model, Logical Data Model)
Component: CaErwin3ErxImport.MicrosoftOfficeVisio version 11.2.0
OVERVIEW
This bridge imports data models from erwin Data Modeler, including logical only models with Entities, Attributes, Domains, physical only models with Tables, Columns, Data Types, or Logical/Physical models with both. This bridge also imports all relationships and their implementation (e.g. PK/FK) as well as the graphical layout of the data models (diagrams).
This bridge can import either the .ER1 format files or .ERX format files saved using erwin Data Modeler.
- erwin Native Format (.ER1):
This bridge requires the erwin Data Modeler COM/OLE API to be installed in order to parse .ER1 format files.
erwin Data Modeler must be properly installed with a valid license on the machine executing this bridge.
In order to test this, open an erwin model in Data Modeler and save it as 'XML Repository Format'.
- erwin Exchange Format (.ERX):
Here are the steps to create this type of .ERX file:
1. Choose 'Save As' from the 'File' menu.
2. Select the ERX format type.
3. Type the file name for the model you are saving in the 'File Name' text box (eventually press the browse button to select a specific directory).
4. Click 'OK'.
REQUIREMENTS
- erwin User:
This bridge must run on behalf of the Windows user that can run the erwin software.
If this bridge is running as part of a Windows desktop application, then you must log onto Windows with that user.
If this bridge is running as part of a Windows service, then go to the Windows services and click on the 'Properties' menu of such service, go to the 'Log On' tab, select 'This account' and specify the same user name and password used as Windows session when testing connectivity from erwin to the mart, and restart the Windows service.
FREQUENTLY ASKED QUESTIONS
Q: How does this bridge import the ordering of attributes?
A: This bridge imports the physical order preferably, if the information is present in the ERX file, otherwise the logical order is used.
To view the physical column ordering in erwin:
- Switch to the model Physical View,
- In the 'Format' menu, select 'Stored Display Settings...',
- Click on the 'Physical' tab, and select the 'Physical Order' radio button.
This is the order erwin uses when generating SQL DDL, and MIMB will import this order, if it is available in the file.
If you wish to import the logical order, please derive a logical only model in erwin and import it.
LIMITATIONS
Refer to the current general known limitations at https://metaintegration.com/Products/MIMB/Help/#!Documents/mimbknownlimitations.html
- Warning On Potential Missing Physical Names:
This issue is particularly relevant when converting from erwin to ETL or BI tools, or to the OMG CWM XMI standard.
When saving a logical and physical model, the physical names of tables, columns, and keys may not always be saved into the ERX file. When erwin is used to manage the automatic generation of physical names from logical names, only the generation rules are saved. This will obviously not be an issue for physical-only erwin models (which is often the case when re-engineering existing databases).
One solution is to make sure all physical names are explicitly set, therefore not relying on any generation rules from the logical names.
Alternatively, when saving a model as ERX, the dialog box offers a button called 'Expand...'. A new 'Expand Property Values' dialog box is then opened, select the database (e.g. Oracle, SQL Server) tab, and then check the appropriate names to expand (e.g. Col Name).
- Warning On Potential Missing Dimensional Modeling Roles:
This issue is particularly relevant when erwin is used for dimensional modeling to BI tools, or to the OMG CWM XMI standard. As for the physical name issue explained above, the dimensional modeling roles (Fact, Dimensional, or Outrigger) may not be available in the XML file if they are automatically calculated by erwin.
One solution, is to make sure all dimensional modeling roles are explicitly set (use the 'Table Editor', tab 'Dimensional'), therefore not relying on automatic calculations by erwin based on usage.
SUPPORT
Provide a troubleshooting package with debug log. Debug log can be set in the UI or in conf/conf.properties with MIR_LOG_LEVEL=6
Bridge Parameters
Parameter Name | Description | Type | Values | Default | Scope | |||||||||||||||||||||||||
File | The erwin data model file which can be either: 'model.ER1' The native format which requires erwin Data Modeler to be installed (Windows only) in order to access its COM API. 'model.ERX' The erwin data model file in the .ERX (erwin exchange format) which can then be used for import on both Linux and Windows. This .ERX format is produced by erwin Data Modeler as follows: 1. Choose 'Save As' from the 'File' menu. 2. Select the ERX format type. 3. Type the file name for the model you are saving in the 'File Name' text box (eventually press the browse button to select a specific directory). 4. Click 'OK'. |
FILE | *.erx | Mandatory | ||||||||||||||||||||||||||
Import UDPs | In erwin data modeler, a User Defined Property (UDP) is defined with a name (e.g. Threat Level), a definition (e.g. an enumeration with values: green, yellow, orange, red), and a possible default value (e.g. green). Applying a UDP to an object (e.g. table or column) can be done with an explicit value (e.g. orange) or without value therefore the default value of the UDP (e.g. green). By default, this bridge imports the UDP definitions as a Property Type. UDP can be imported: 'As metadata' Import an explicit value as Property Value, implicit values are not imported, the default value is kept on the Property Type only. 'As metadata, migrate default values' Import explicit and implicit values as Property Value objects. 'In description, migrate default values' Append the property name and value, even if implicit, to the object's description and/or comment (depending upon the design level). This allows you to export the UDP values to another tool which does not support the notion of UDP. 'Both, migrate default values' Import the UDP value, even if implicit, both as metadata and in the object's description and/or comment (depending upon the design level). |
ENUMERATED |
|
As metadata | ||||||||||||||||||||||||||
Generate names for associations | Generate a name for the associations and generalizations. These objects are unnamed in erwin. | BOOLEAN | False | |||||||||||||||||||||||||||
Encoding | Select the character set encoding of the model to be imported. If there are multiple choices for a language, the actual encoding is indicated between parentheses. | ENUMERATED |
|
windows-1252 | ||||||||||||||||||||||||||
Import subject areas | This bridge option controls how the erwin subject areas are imported: 'As diagrams' import as diagrams only. 'As packages and diagrams' import as packages and diagrams. This option may be useful to some database modelers who decided to save the hierarchy structure of subject areas. This is the default value. 'Do not import subject areas' do not import subject areas. |
ENUMERATED |
|
As packages and diagrams |
Bridge Mapping
Meta Integration Repository (MIR) Metamodel (based on the OMG CWM standard) |
"Microsoft Office Visio Database Diagram (via ERX)" Metamodel CaErwin3Erx |
Mapping Comments |
Association | Relationship | |
Aggregation | Identifying/ Non Identifying | True if identifying |
Description | Definition | optional: UDP values can be added to the description |
DesignLevel | Logical Only/Physical Only | |
PhysicalName | Foreign Key Constraint Name | |
DesignLevel | Logical Only/Physical Only | |
ExtraConstraint | Delete, Insert, Update Rule | |
Multiplicity | Cardinality | |
Name | Verb Phrase | |
Source | Based on the multiplicity of each role | |
AssociationRoleNameMap | Attribute/Index | The association between the primary key column and the foreign key column |
Attribute | Attribute/Column | |
Description | Definition | optional: UDP values can be added to the description |
DesignLevel | Logical Only/Physical Only | |
Name | Logical Name | |
Optional | Null Option | |
PhysicalName | Physical Name | |
Position | Column Position | |
BaseType | Domain, Attribute Data Type | |
DataType | Data Type | See datatype conversion array |
Description | Definition | |
Length | Data Type Length | |
Name | Name | |
PhysicalName | Validation Rule Name/DataType | Derived from the datatype |
Scale | Data Type Precision | |
CandidateKey | Key Group/Index (non Foreign Key) | |
Name | Logical Name | if set by the user |
PhysicalName | Physical Name | if set by the user |
UniqueKey | True for Primary Key/Alternate Key | |
Class | Entity/Table | |
Comment | Table Comment | |
CppClassType | Set to ENTITY | |
CppPersistent | Set to True | |
Description | Definition | optional: UDP values can be added to the description |
DesignLevel | Logical Only/Physical Only | |
DimensionalRole | Dimensional Modeling Role | |
Name | Logical Name | |
PhysicalName | Physical Name | |
ClassDiagram | Subject Area | |
Description | Definition | optional: UDP values can be added to the description |
Name | Name | |
DatabaseSchema | Owner | Table, View or Index owner |
Name | Name | |
DerivedType | Domain, Attribute Data Type, Validation Rule | |
DataType | Data Type | See datatype conversion array |
Description | Definition | |
Length | Data Type Length | |
LowerBound | Validation Rule Minimum | |
Name | Name | |
PhysicalName | Validation Rule Name/DataType | Derived from the datatype |
Scale | Data Type Precision | |
UpperBound | Validation Rule Maximum | |
UserDefined | True for User Defined Domain | |
DesignPackage | No equivalent in erwin. A main package "Logical View" will be created to contain all entities/references | |
ForeignKey | Key Group/Index (Foreign Key) | |
Name | Logical Name | if set by the user |
PhysicalName | Physical Name | if set by the user |
Generalization | Supertype/Subtype | |
GeneralizationRole | Supertype/Subtype Relationship | |
Index | Key Group/Index | |
Name | Logical Name | if set by the user |
PhysicalName | Physical Name | if set by the user |
IndexMember | Key Group Member/Index Member | Associated with each attribute in a key |
Position | Column Position | |
SortOrder | Ascending/descending order | |
Note | Note | |
Projection | Diagram View Object | Graphical Information |
BackgroundColor | fill color | |
FontColor | font color | |
FontName | font | |
FontSize | font size | |
Height | height | |
LineColor | line color | |
Width | width | |
X | x | |
Y | y | |
RelationshipProjection | Diagram View Object | Graphical Information |
FontName | font | |
FontSize | font size | |
LineColor | line color | |
LinePoints | relationship path | |
X | x | relationship mid point |
Y | y | relationship mid point |
SQLViewAssociation | View Relationship | |
SQLViewAttribute | View Column | |
Description | Comment | |
Name | Name | |
PhysicalName | Name | |
Position | Column Position | |
SQLViewEntity | View Table | |
Description | Comment | |
Name | Name | |
PhysicalName | Name | |
WhereClause | SQL statement | |
Shape | Text Block | |
Bold | Text Font Style | User settable |
FontColor | Text Block Color | |
FontName | Text Block Font | Font typeface name |
FontSize | Text Size | |
Height | Calculated property | |
Italic | Text Font Style | User settable |
Name | Computed parameter, based on the object ID | |
ShapeType | Rectangle | |
Strike | Text Effects Strikeout | User settable |
Underline | Text Effects Underline | User settable |
Width | Calculated property | |
X | Calculated property | |
Y | Calculated property | |
Z | Calculated property | |
StoreModel | Model/Diagram | The model is built using the elements contained in the erwin file |
Description | Definition | |
Name | Name | Diagram name or derived from the erwin file name |
SystemType | Target Server | |
SystemTypeOld | Target Server | |
Name | Display Value/Valid Value | |
TypeValue | Validation Rule | |
Name | Display Value/Valid Value | |
Position | Order Sequence | |
Value | Value |