Inside the Workspace screen
Last updated
Last updated
SQL Tran is designed as a full integrated development environment (IDE) for database translation. The core of SQL Tran’s functionality is the Workspace
screen. This screen contains several areas that help you inspect, analyze, and work with your project.
At the top of the screen is a header pane that displays the project name. When a database object is selected, it additionally shows:
The object’s name
The object’s complexity level
The object’s lifecycle status through all five stages
On the left side of the screen is the Objects
tab. It displays database objects organized into a tree structure, grouped by type:
Tables
Views
Procedures
Functions
Each group has an expandable arrow (e.g., > Tables
) and shows how many objects have been processed successfully (e.g., > Procedures (8 of 9)
).
Below the header of the Objects
pane is a toggle button that switches between Hide valid objects
and Show all objects
:
Hide valid objects
filters the tree to show only objects with translation issues.
Show all objects
restores the full list.
This makes it easy to focus on problematic objects for manual review and correction.
Next to the Objects
tab is the Errors
tab, which is only visible if errors or limitations were detected during translation.
This pane also organizes issues into groups (e.g., XML METHODS
, RECURSIVE QUERY
). Each group has an expandable arrow (e.g., > XML METHODS
) and shows a count of the errors it contains (e.g., > XML METHODS (8)
).
You can expand and collapse groups individually or use the Expand all
and Collapse all
buttons.
Clicking an error navigates directly to the related database object, allowing inspection in the source and target panes.
When an object is selected in the Objects
tree, SQL Tran displays:
The original SQL code from the source system (e.g., Azure Synapse Analytics
) in the source pane.
The translated SQL code for the target system (e.g., Fabric Warehouse
) in the target pane.
You can inspect objects such as tables, views, procedures, and functions by selecting them in the Objects
tree. There are also other ways to navigate to and inspect database objects and their code. These additional navigation methods are explored in other sections of this document.
On the right side of the screen is the side panel, which is initially collapsed to maximize workspace. It contains:
Analysis
Code
Tests
Clicking any section expands the side panel and opens the selected tab. The side panel can be collapsed again using its collapse button.
Each section of the side panel is covered in more detail below.
SQL Tran has a full static analysis engine that is extremely fast and capable of processing even the largest databases in a short time.
As SQL Tran processes the source database, it performs static analysis and dependency mapping, building a complete data model of the database objects and their relationships.
The Analysis
tab displays this dependency information for the currently selected object, organized into several groups.
The Depends on
group shows other database objects that the selected object depends on.
The Referenced by
group lists the objects that reference the selected object.
If there are unresolved references, they are displayed under the Broken references
group.
The Code
tab provides a semantic model view of the selected object’s SQL code and offers two ways to explore the SQL code structure for the selected object.
In the Statements
view, SQL Tran shows a hierarchical list of SQL statements from the source code. Selecting a statement highlights the corresponding code in the source editor. In the header, statistics display the number of statements and the total lines of code (LoC
).
In the Nodes
view, SQL Tran displays a detailed semantic model tree of SQL language elements used in the source code. Selecting a node highlights the corresponding code in the source editor. The statistics in the header now shows the number of nodes and the total lines of code (LoC
).
The header also includes expand and collapse buttons, represented by icons. These buttons allow you to expand or collapse the entire tree. You can also manually expand and collapse individual nodes by clicking them.
The Tests
tab allows you to create and run tests on the selected object. In this demonstration, all test functionality is disabled because database connections have not yet been configured.
We’ll configure connections soon and explore the testing features in greater detail, as testing is an important capability of SQL Tran.
SQL Tran includes a powerful SQL code editor with integrated validation:
Syntax errors are underlined in red.
Unresolved references are underlined in orange.
As you type, errors are also reported next to the source pane’s title bar (e.g., Azure Synapse Analytics
). This real-time validation is powered by SQL Tran’s static analysis engine and data lineage tracking.
SQL Tran, like many integrated development environments (IDEs), provides a "Go to definition" feature:
Place the cursor on an object name and press F12
to navigate to its definition.
Alternatively, hold CTRL
and click an object name to navigate directly to its definition. When you hold CTRL
and hover over an object name, it becomes underlined to indicate it can be clicked.
This allows quick navigation to the SQL definition of tables, views, procedures, or functions.
SQL Tran provides a powerful search function that makes it easy to find objects by name. This feature is especially useful in large projects with many objects, where finding the right one manually would be cumbersome. It works as follows:
Press CTRL + K
to open the Find object by name
dialog.
Search results update instantly as you type, supporting partial names and acronyms.
Clicking a search result navigates directly to that object’s code.
Example: typing the acronym hedh
would find HumanResources.EmployeeDepartmentHistory
and HumanResources.vEmployeeDepartmentHistory
.
SQL Tran allows overriding both source and target SQL code by using the options in the Actions
dropdown. The same options are also available from the context menu when right-clicking an object in the Objects
tree:
Override source
— Enables editing the source SQL.
Override target
— Enables editing the translated SQL.
Revert to original
— Restores the original SQL. This option is initially unavailable and becomes available once an override has been made.
Overridden objects are visually distinguished in the following ways:
Source overridden
or Target overridden
labels appear next to the object's name in the header.
A pen icon appears next to the object’s name in the Objects
tree.
You can exclude objects from processing by using the Ignore this object
option, available both in the Actions
dropdown and in the context menu on the Objects
tree.
Ignored objects are shown with a strikethrough on their name. Instead of displaying translated SQL, SQL Tran shows a comment in the target pane indicating that the object has been manually ignored.
Objects can be unignored by selecting Unignore this object
from the same menus. This option is initially unavailable and becomes available once the object is marked as ignored.