Chat now with support
Chat with Support

Toad Data Modeler 7.2 - User Guide

Introduction User Interface Models and Model Objects
Physical Data Model
Entity Relationship Diagram Objects Basic Database Design Advanced Database Design
Universal Data Model Logical Data Model Working with Model Objects
Features and Tools
Application Variables Export/Import DDL Script Generation Graphics Model Actions Print Create New Project Reports Reverse Engineering Scripting and Customization About Templates Tips and Tricks Toad for Oracle Integration Toad Intelligence Central (TIC) Integration Tools Version Control
Options and Configuration Databases
Amazon Redshift 1.0 IBM DB2 LUW 9.5 IBM DB2 LUW 9.7 IBM DB2 LUW 10.1 IBM DB2 LUW 10.5 IBM DB2 LUW 11.1 IBM DB2 z/OS 10 IBM DB2 z/OS 11 Greenplum 4.1 Greenplum 4.2 Ingres 9.3 Ingres 10.0 EDB Postgres Advanced Server 10 Microsoft Access 2007/2010 Microsoft Azure SQL Database V12 Microsoft SQL Server 2005 Microsoft SQL Server 2008 Microsoft SQL Server 2012 Microsoft SQL Server 2014 Microsoft SQL Server 2016 Microsoft SQL Server 2017 Microsoft SQL Server 2019 MySQL 5.0 MySQL 5.1 MySQL 5.5 MySQL 5.6 MySQL 5.7 MySQL 8.0 Oracle 10g Oracle 11g Release 1 Oracle 11g Release 2 Oracle 12c Release 1 Oracle 12c Release 2 Oracle 18c Oracle 19c PostgreSQL 9.0 PostgreSQL 9.1 PostgreSQL 9.2 PostgreSQL 9.3 PostgreSQL 9.4 PostgreSQL 9.5 PostgreSQL 10 PostgreSQL 11 PostgreSQL 12 SQLite 3.7 Sybase ASE 15.5 Sybase ASE 15.7 SAP ASE 16.0 Sybase IQ 15.2 Sybase SQL Anywhere 11 SAP SQL Anywhere 17 Teradata 13 Vertica Database 8.0
Copyright Legal Notices

Package Explorer

Package Explorer displays package structure in Toad Data Modeler and allows you to:

  • Manage objects saved in the packages (rename, move, copy objects, open Object Properties dialog etc.)
  • Access all package Metamodels

To open Package Explorer

  1. Enable Expert mode: select Settings Menu | Options | General | select the Expert Mode checkbox.
  2. Click on the toolbar or select Expert Mode Menu | Customization | Package Explorer.

Toad Data Modeler contains packages for:

  • Specific supported databases (e.g. Oracle, Microsoft SQL Server 2005, MySQL 5.0 etc.)
  • Physical ER models
  • Logical models
  • HTML and RTF reports
  • and other functions, such as SQL/DDL generation, reverse engineering etc.

The Package Explorer Tree

Via the box at the top, you can filter the list of packages.

Read-only packages/scripts cannot be edited.

Root folders contain packages that have various lists of objects, e.g.:

  • Forms Definitions - contain partial definitions with a list of changed visual components of forms modified by user  
  • External Class Definitions- contain classes and their members designed by user (see the "Metamodel" topic)
  • Package Dependencies - show dependencies between the selected package and other packages

Right-click Package options

Option Description

Load Package

Loads the package from disk to Toad Data Modeler. For faster work with packages and for faster loading of application, some information is loaded only on demand.

Delete Package

Deletes the selected Package and all items it contains.

Disallow Package

Selected package won't be loaded during next Toad Data Modeler launch.

Export Package

Exports the selected Package in .tbg format to the chosen folder

Open Metamodel

Opens the selected Package Metamodel. See Metamodels for more information.

Extend with New Package

Creates a new package that will extend the currently selected package.

Create Dependent Package

Creates a new package that will be dependent on the currently selected package (will inherit from it).


Contains information about the selected package and its items (General information, Visibility, Script folders, Scripts, Description).  From here, you can also manage the scripts in the package - add, delete or edit them. (See the following example.)

Package File box in the Package Properties dialog - Path to the location where the package is stored. Click the button on the right to open the location in file explorer.

Save BIN The selected XML package (*.txg) will be saved in binary format (*.tbg).
Save All as BIN All XML packages (*.txg) will be saved in binary format (*.tbg).

Package Explorer Toolbar

Icon Command

Save Actual - saves changes to actually active Package

Save All - saves all changes made in all modified Packages

Creates a new user Package.
Adds an existing Package to the Package Explorer.
Hides all system Packages, leaving only the user and add-on ones visible.

Icons of Packages in Package Explorer

Package Unlocked Locked

Type of Package/State








Error during Loading



My Package



State Description


A package is locked when:

a) it is marked as read-only on the disk

b) it is a system package and user does not have Expert Mode enabled

Note: All system packages are read-only by default. However, in Expert mode it is possible to change the lock/unlock property of the package (right-click the package in Package Explorer | Properties.) Generally, in Expert mode it is possible to lock/unlock system packages and add-on packages.


Complete package has been loaded to memory.

Loaded - Modified

Package has been modified by user.


Package has not been loaded to memory.


Package has been disallowed by user (right-click the package in Package Explorer | Disallow Package).

Error during Loading

Loading of the package failed. It is an error state. This situation can happen e.g. when a dependent package of this package is missing (for example it was not selected during installation of the application).

Note: It is not possible to edit a script when package is locked. Unlock a package to edit its scripts.

Scripting in Script Editor

In Toad Data Modeler, you can create and edit scripts via Script Explorer and Package Explorer. For scripting purposes, Script Explorer should be used. (Script Explorer)

To create a new script

Select a script/folder in Script Explorer | right-click and select Create New Script.

To edit already existing script

Select a script/folder in Script Explorer | right-click and select Edit Source Code(in New Window).

In both cases Script Editor opens.

When you modify a script source code or write a new script code:

  • The particular script is locked and no other user can modify it.
  • The script is disabled in Script and Package Explorers.
  • Use Commit to save the changes and Rollback to cancel the changes in Script Editor. As soon as you press any of these buttons, the script becomes available for other users (will be unlocked automatically).

Note: After you click Commit, the changes you've made for the script will be saved within the TDM application, however they will not be saved in particular package on your disk (My Package). You can either save the package in Package Explorer, or close the application - the changes will be saved in appropriate package and on disk automatically.

Scripting Languages in Toad Data Modeler:

To make a petty script modification

(It doesn't work for read-only scripts.)

  1. In Script Explorer, select a script that you want to modify.
  2. Right-click the script and select Edit Source Code.
  3. In the Script Editor, edit the source code directly.
  4. Press Commit to confirm changes, or Rollback to cancel the changes.
  5. Save the changes in appropriate package and on your disk - Click in Package Explorer.

To modify functions of system scripts

System scripts are read-only and it's not possible to edit their source code directly. (See disabled Commit and Rollback icons in Script Editor.)

If you want to edit any functions of a system script, you have to create a new script and edit appropriate functions in it. For detailed example, please see User Guide, "Customization - Sample" chapter.

To write a new script from scratch  

In Toad Data Modeler, you can create a new script or further extend functionality of already existing scripts - user and also system scripts.

  1. Open Script Explorer.
  2. Select a folder (category) where you want to add the new script.
  3. Right-click the selected folder and select Add New Script. -> A new item will display in the Script Explorer under the selected folder.
  4. Double-click the new script to open it in Script Editor.
  5. Write or insert the scripting code to the right window. Use Commit or Rollback for saving and canceling the changes. Remember to save the changes in the package too.

Internal Scripting

In Toad Data Modeler, the following scripts are supported:

  • JScript
  • Visual Basic
  • Internal Script

Use the internal script for writing more extensive texts where only few commands are contained.

The internal script is similar to markup languages such as XML, HTML etc.

Every sign that is not a text must be marked by this sign - "#".

Key Words

  • import  
  • require
  • if
  • else
  • endif
  • script - Script function is generated. It allows users to define script type (e.g. JScript or VBScript) where the content between script and endscript commands is written.
  • endscript
  • proc - Creates a function in JScript. It is possible to define parameters here.
  • endproc -
  • call - Calls a procedure (function). It is possible to define parameters here.
  • <% - Beginning of macro.
  • %> - End of macro.
  • Forall - Executes iteration over list.
  • @ - Shows that the following text is an expression.

"script" Command

Use this command to insert to the internal script another part of a scripting language.

#script language=”{Scripting language}”

{Code of Scripting Language}



#script language="Jscript"

function something() {

  Log.Infomation(‘My Message’);



"proc" and "endproc" Command

Use this command to create a procedure that is available in internal language.



    Code of Procedure








"Call" Command

Use this command to call procedures defined by command "proc".


#call Greetings()

"forall" Command

Use this command if you want to execute iteration over a list. The result of the iteration should be a text.

Command syntax is the following:



  #forall Model.tables('Create Table'+IterateItem.Name+'(','',GenerateColumns(),',',')' );

"<%", "%>" Command

Angled brackets with percentage insert part of internal script where JScript is used (or another scripting language). The expression is evaluated immediately.


<% if (Model.Count>0) Log.Information(‘something’); %>

"@" Command

It is similar to "<% %>", however the difference is that after the @ sign, only one expression follows.

How to Create Custom Properties

To further extend the functionality of Toad Data Modeler, you can create your own custom properties for most objects. To create a new custom property:

  1. Right-click an object in Model Explorer and select Add Custom Property.

  2. New Custom Property dialog appears. Here you can configure your property. Once, you're done, restart Toad Data Modeler and your property will be created and accessible via scripting.

Option Description
Caption/Name Logical and physical name of the property. Name is used to refer to the property in scripting.

Determines on which level the property should be created. For example, if you create a new custom property for an entity (in Oracle 10g model), you can choose from the following options:

  • PEREntityOR10 - The property can be used only in Entities in Oracle 10g models.
  • PEREntityOR - The property can be used only in Entities in any Oracle models.
  • PEREntity - The property can be used in all Entities.

Sets the custom property data type. The data type should be chosen depending on what would you like to store in the property:

  • Widestring - Text strings in general, supports Unicode characters.
  • String - Text strings in general, does not support Unicode characters.
  • Integer - Positive/negative whole numbers.
  • Boolean - True/False values.
  • Real - Floating points numbers.
  • Dispatch - Any Toad Data Modeler object (Entities, Attributes...)
Readonly Flags the property as Read Only, meaning its value cannot be changed.
Script Implementation

This option allows you to customize the way your property will behave using scripting. You should check it in two cases:

  • Your custom property value will be set according to other property values - In this case, use the automatically generated Get method to get other properties values and set your custom property value according to them.
  • Other properties values will be changed depending on your custom property value - This can be done using the automatically generated Set method. From there, you can change the value of any other property.
Package Determines in which Package the custom property will be stored. Loading/Disallowing the selected Package will cause the property to be usable/unavailable.
Related Documents

The document was helpful.

Select Rating

I easily found the information I needed.

Select Rating