As you might know, we are switching to the new Schema Modeler tool in our Data Abstract products. We wanted to make it better, handier and up-to-date with the latest conceptions introduced in Data Abstract. In the last release we fixed some bugs and added a set of new features. Today I want to highlight some of these features. So let’s get started.

UI improvements to simplify navigation

During the beta, we’ve had some complaints that navigation in the new Schema Modeler is more complex than in the old one. In order to see and select a schema table field, we need to expand the Table node, then expand the Fields node, and after that we will see the particular fields. We tried to simplify this by adding a new Content section to the bottom of the schema table view.

Inside this section you can see the table content, including fields, parameters and statements. You can quickly navigate to any particular item – just double-click it. You can navigate to fields, parameters and statements collection nodes by clicking the corresponding hyperlinks (you can find them above the container).
And finally, you can easily create and remove table elements easily from the table view. There are two buttons at the top right corner of each element view.

See video

Tip: You can select several fields and remove them in one go, rather than deleting them one by one.
There are similar improvements planned for the schema command view in the next release.

Improved fields collection view

Now it shows size, scale, precision, and many other field properties. It also highlights read-only fields with gray, so you can easily notice them.

Improved recreating or updating schema table fields

We added the ability to choose a statement for recreating or updating schema table fields.
The previous version used a selected statement, which was not obvious and handy.

If the schema table has only one statement, it will be used for recreating fields automatically. But for cases where your table has several statements, you will see a dialog where you can choose the statement you want to use.

See it in action

Connection Types

Some time ago in the Data Abstract v5, we introduced the new concept of the ConnectionType, which replaces specifying the exact connection with the more general Connection Type. It allows us to implement a more flexible way of working with several connections in the application.

The new Schema Modeler simplifies setting the connection type for the statement by offering a list of available types in the combo-box. You don’t need to remember what connection types your connection manager contains. Just select the appropriate one from the list.

See this in action

Loading connection content by demand

We have implemented a lazy loading pattern for Connections Manager documents in the new Schema Modeler, which is more efficient and decreases memory consumption.

See this in action

*Added ability to open .daConnections files

Now we can open connection files by double-clicking in the Windows Explorer, or in the Visual Studio Solution Explorer, and edit them separately from the schema.

*Working with .daRemoteSchema files

daRemoteSchema files are just a reference to a remote Data Abstract server. Schema Modeler can open these files: it connects to the server and downloads the schema from there. If the server requires a login or is encrypted with an AES envelope, Schema Modeler shows a login dialog where you can provide the login and password.

Since we cannot update a schema on the server in runtime, daRemoteSchema project opens in Read-only mode and can be used for informational purposes only.

See this in action

*Working with .RelativityClient files

A RelativityClient file is the another type of shortcut file that can reference a particular schema in a particular Relativity domain. The important point here is the necessity to work with connections using Relativity abilities only. Actions like obtaining metadata, a list of database objects or driver information should be performed by the Relativity application. Saving changes in the schema and connection manager will lead to uploading data directly to the Relativity server, no local or temporary files will be created.

See this in action

Working with Internal connections

Internal connections is a quite new concept in the Relativity world, representing a general connection that can be managed by Relativity only. Its main aim is to abstract the details of connections even for Relativity administrators. With an internal connection, it doesn’t matter what driver is used for working with data. It can be SQLite, or a more exotic driver, Relativity will know how to deal with it.

Improved automatic mappings regeneration

Now it understands SQL field aliases and generates proper mappings for it.

See this in action

Improved generation delta commands for schema tables

Now it creates commands and sets them for the table.

See this in action

So far that’s all for the current release.

If you have any remarks or ideas, please let us know.