Prev Next

Transfer a Complete Repository

In normal system maintenance, it is likely that at some point you need to relocate data between storage systems.  The purpose of the Complete Project Transfer feature is to completely overwrite everything in the target repository with the contents of the source repository. The main advantage to this feature is that any supported repository type can be transferred to any other repository type.

In any edition of Enterprise Architect, you might need to transfer all records from one project file to another (recommended after serious network crash or repeated database corruption). Project files can be either .qea (SQLite), .feap (Firebird) or .eap (Access) files, and you can transfer from one file type to the other.

In the Corporate, Unified and Ultimate Editions of Enterprise Architect, you might need to:

  • Transfer an existing project file to a DBMS repository such as SQL Server or MySQL
  • Transfer a DBMS repository to an existing project file
  • Move a repository from one DBMS to another (including moving between servers using the same DBMS)
  • Copy all records from a JET 3.5 to JET 4 (Access 2000 or XP) repository - or back the other way

You can also transfer a .QEA file (Release 16.0 and higher, 64-bit) to a .FEAP file (Release 15.2 and earlier) for backwards compatibility. See the Transfer a QEA/QEAX Repository to FEAP Format  Help topic.

Access

Ribbon

Settings > Model > Transfer > Full Project Transfer via Connection

Perform a Project Data Transfer

Step

Action

See also

1

Run a Check Project Data Integrity against the source repository and correct any problems.

Check Data Integrity

2

If the target Project contains data then generally it is suggested to take a backup of that project to ensure that you can recover any important information it contains. For a File based repository this can be achieve by making a copy of the Project file, but if the target is DBMS based then the official backup utility of the DBMS should be used.

3

Click on the radio button for the required transfer type:

  • File to File
  • DBMS to File
  • File to DBMS
  • DBMS to DBMS

4

In the 'Source Project' and 'Target Project' fields, browse for and select the connection strings for the Source and Target projects.

You might be prompted to select the database connection to use, either the 'Open Server Connection' dialog (Native Connection) or 'Data Link Properties' dialog (ODBC Connection).

Connect to a Repository via ODBC Open Server Connections - Native Connection

5

Check the Reset GUIDs option if all packages/diagrams/elements should be given a new value in the target repository.

If the target repository is going to be used as a new repository and is completely independently from the source then we would suggest that the Reset GUIDs option should be checked, but if the target repository is a backup or you want a clone of your source repository then Reset GUIDs should be unchecked. 

6

If you want to capture the steps that occur during the transfer (this is generally recommended), select the 'Logfile' checkbox and browse for the appropriate log file location.

7

Click on the Transfer button.

Note: if the target repository has user security enable then you will be prompted for the credentials of a user with the Transfer Data permission, this is a security measure to ensure that unauthorized users don't over write a repository.

8

It is good practice to do a Project Compare after this process to verify that all records are written.

Compare Projects

Notes

  • When the target repository is a MySQL or SQLServer based repository, the database user requires more than just read and write access to the database. MySQL users require ALTER and DROP permissions while SQL Server users require the role DB_DLLADMIN.  If the database user does not have the necessary permissions the process will display a error message and be unable to continue
  • When performing a .eap file to DBMS transfer, if the .eap file has replication enabled, the replication must be removed before performing the transfer
  • When transferring a model to a DBMS, you cannot transfer the data into an empty database - the tables must already exist; if they do not, run the corresponding script supplied by Sparx Systems to create the required tables
  • When transferring a model into a project file, similarly, the target project file must already exist, to provide the data structures to transfer data into
  • In the Corporate, Unified and Ultimate Editions of Enterprise Architect, if security is enabled you must have 'Transfer Data' permission to transfer project data between repositories
  • You cannot move a model from a source .eap file from an Enterprise Architect version earlier than 3.5.0

Learn more