Chapter 8—Omnis Studio Licensing

Subscription based licensing and activation has been introduced for Omnis Studio 12 (Revision 42449 onwards). The following information is a summary of serialization for Omnis Studio 11.2 or before.

This section provides a general introduction to understanding the licensing and serialization process for Omnis Studio 11.2 or before – comprehending the various licensing models and serialization process is crucial for a smooth development and deployment experience.

When you first start Omnis Studio

If you purchased Omnis Studio online or from one of our sales offices or distributors, you will have been sent a Development serial number which you need to enter when you first start Omnis Studio.

Alternatively, you may have obtained a Trial serial number after completing a form on our website. This allows you to use the full capabilities of Omnis Studio for up to 90 days, free of charge, after which you need to purchase a full software development license.

In both these cases, when you first start Omnis Studio you will see the Registration screen. To use Omnis Studio you need to enter your Name, Company name, and Serial number.

After you serialize Omnis Studio, you will be taken straight to the Omnis Studio development environment, ready to create your first project library or open an existing library.

License Types

Licenses for Omnis Studio are available for developing desktop, web and mobile applications, and for deploying those applications. The following licenses are available:

Studio Professional Edition

A Studio Professional Edition license allows a developer to use Omnis Studio to create and build desktop, web and mobile applications. This includes access to the full development environment and its capabilities, including modules that give you access to all leading databases. Your Studio Pro Edition also includes serial numbers to test your application in a Runtime and App Server environment.

Trial Edition

The Studio Professional Edition (Trial) license allows you to use the full Studio development environment without restriction for 90 days, free of charge. If you are happy with your trial you can upgrade your license to a full Studio Professional Edition.

Community Edition

The Studio Community Edition license allows you to use the Omnis Studio development environment with a connection to a PostgreSQL or a SQLite database. The Community edition is free to use for the lifetime of your app with only a restriction on the number of end users. If you want the full capabilities of Omnis Studio you can upgrade your license to a full Studio Professional Edition.

Studio Runtime

A Studio Runtime (or Client access) license allows end users to run Omnis Studio applications on their desktop machines, either on Windows or macOS. Runtime licenses are needed for deploying applications to individual end users (your clients or customers), enabling them to interact with the software you've developed without needing a full development environment.

Studio Web App Server

A Studio Web App Server (or App Server) license allows multiple end users to run Omnis Studio web and mobile applications simultaneously through a web browser. These licenses are needed for deploying applications that need to be accessed by many users over a network, providing scalability and centralized management for your web-based Omnis Studio solutions.

The Studio Mobile App Server is also available for running standalone mobile applications that use the JavaScript wrappers on Android and iOS devices.

Deploying your application

When you are ready to deploy your application you will need to purchase a Client access (Runtime) or App Server deployment license, as follows:

To buy these licenses, or to change or upgrade your current deployment licenses in any way, you need to contact your local sales team.

 

Subscription based licensing and activation has been introduced for Omnis Studio 12 (Revision 42449 onwards) which is described here.

This section provides a general introduction to understanding the licensing and activation processes for Omnis Studio 12 or above – comprehending the various licensing models and activation procedures is crucial for a smooth development and deployment experience.

To ensure you can fully leverage the capabilities of Omnis Studio, it's important to correctly license your development environment and any deployed applications. This section covers the concepts of Omnis Studio licenses, the steps involved in activating your software, and common considerations for developers regarding different license types.

When you first start Omnis Studio

If you downloaded Omnis Studio from our website without purchasing a license, it can be started in Trial mode, which means you can use the full capabilities of Omnis Studio for up to 90 days, free of charge. If you wish to use Omnis Studio beyond that point you need to purchase and activate a full software development license.

Alternatively, if you purchased Omnis Studio online or from one of our sales offices or distributors, you will need to activate your software license when you first start Omnis Studio.

In both these cases, when you first start Omnis Studio you will see the Registration screen. To use Omnis Studio you need to activate your software license using an Omnis ID. If you don’t have an Omnis ID login you need to create one.

When you click the Create / Sign-in button on the Registration screen you will be transferred to a web browser tab to login with your Omnis ID, or create a new account if this is the first time you've used Omnis Studio.

To create an Omnis ID, you can use your own email address and password, or you can select Sign in using email link to sign in securely without a password. Alternatively, you can use an existing SSO (Single Sign-On) from one of the listed providers, such as Google, Microsoft or Apple.

Once you have signed in with your Omnis ID, the web browser tab will close and you need to switch back to the Registration screen in Omnis Studio, which will show what licenses are available to you – if you are a new user and have purchased a license there will be one Studio Pro Edition license, otherwise you can start using Omnis Studio for free using a Trial edition or the Community edition.

Before you can activate a license you must read and agree to the terms and conditions in the Omnis Software End User License Agreement (EULA) which is available online for you to read.

If you are using the Trial download you will also be asked to select your country – this is simply so we know which sales or support office should handle any questions you may have during the trial period.

So to activate your license, select the Studio Pro Edition license in the list (or the Trial or Community edition), read and check the EULA option, and click on Activate.

After you activate your license, you will be taken straight to the Omnis Studio development environment, ready to create your first project library or open an existing library.

License Types

Licenses for Omnis Studio are available for developing desktop, web and mobile applications, and for deploying those applications. The following licenses are available:

Studio Professional Edition

A Studio Professional Edition license allows a developer to use Omnis Studio to create and build desktop, web and mobile applications. This includes access to the full development environment and its capabilities, including modules that give you access to all leading databases. Your Studio Pro Edition license also includes activations to test your application in a Desktop User and App Server environment.

Trial Edition

The Studio Professional Edition (Trial) license allows you to use the full Studio development environment without restriction for 90 days, free of charge. If you are happy with your trial you can upgrade your license to a full Studio Professional Edition.

Community Edition

The Studio Community Edition PostgreSQL license allows you to use the Omnis Studio development environment with a connection to a PostgreSQL database. The Community edition is free to use for the lifetime of your app with only a restriction on the number of end users. If you want the full capabilities of Omnis Studio you can upgrade your license to a full Studio Professional Edition.

Studio Desktop User

A Studio Desktop User license allows end users to run Omnis Studio applications on their desktop machines, either on Windows or macOS. These licenses are needed for deploying applications to individual end users (your clients or customers), enabling them to interact with the software you've developed without needing a full development environment. (Note to existing users: these were called Client or Runtime licenses in previous versions.)

Studio Web App Server

A Studio Web App Server (or App Server) license allows multiple end users to run Omnis Studio web and mobile applications simultaneously through a web browser. These licenses are needed for deploying applications that need to be accessed by many users over a network, providing scalability and centralized management for your web-based Omnis Studio solutions.

The Studio Mobile App Server is also available for running standalone mobile applications that use the JavaScript wrappers on Android and iOS devices.

Managing your Licenses

You can view and manage your Omnis Studio license(s) in the Omnis Dashboard at: dashboard.omnis.net which you can access using your Omnis ID.

The Omnis Dashboard allows you to activate or deactivate your license(s), or manage any other Omnis Studio licenses you have purchased, such as Desktop or App Server licenses, which you’ll need to deploy your application on desktops or online. See License Types for more details.

Having logged into the Omnis Dashboard using your Omnis ID, you will see your Studio Pro Edition license listed on the Development > Development Licenses tab, or a trial license will be listed under the Trials tab – Desktop User and App Server licenses are also listed, if you have any.

From the main view under the Development Licenses tab, you can select a license and do one of the following:

You can view a license in the dashboard by double-clicking on it.

In the Activation window you will see the current activations for that license under the Activations tab, including the Platform, Machine ID, and Machine User ID for each activation – you can activate your development license on up to 5 computers, on either Windows or macOS, allowing you to develop on multiple platforms. The Tag is a name or label (up to 255 chars) you can assign to the license using the $updateActivationTag() method; see the Omnis Licensing API.

The Features tab shows what capabilities of Omnis Studio you are allowed access to under the terms of that license, for example, which Data Access Modules (DAMs) you can use, to access various server databases, or whether or not you can use the Omnis VCS to manage your project libraries.

Viewing your license in Omnis Studio

You can view your current license in Omnis Studio in the Studio node in the Studio Browser under the Omnis ID option.

You can click on the license under the Studio node to view and manage it in the dashboard. You can also see if a new revision is available under the Updates option, including information about enhancements and fixes in the revision.

Alternatively, you can view your license from the About Omnis screen using the Help > About Omnis Studio menu option.

Deactivating a license

Selecting a license in the dashboard and deactivating it allows you to free up that activation and transfer it to another development computer, or upgrade your current revision. For example, if you download a new revision of Omnis Studio, you can deactivate your current revision in the dashboard (on Windows or macOS), prior to installing and activating the new revision.

License file

Licenses are managed and activated online in the Omnis dashboard, but they are stored as a physical file (license.lic) in the license folder under the main Omnis Studio folder – this is located in your App Data folder on Windows or Application Support folder on macOS.

Activation Allowance

A Studio Professional Edition license allows a single developer to use Omnis Studio on different platforms or for testing an application in different environments. A Pro Edition license allows 5 activations. This means a single developer can activate and use Omnis Studio:

Sharing a Development License

If you work in a company or organization with a team of software developers, then each developer needs their own Studio Pro Edition development license assigned to their own individual Omnis ID.

The administrator (or business owner) for the licenses can share each of these licenses with individual developers in the team by creating an invite for each team member – invites expire after 7 days, after which the license cannot be activated and the invite will need to be re-issued by the license owner.

To share a Development license:

When your team member clicks on the link, they will need to accept the invite, and then activate that license in the Omnis dashboard. Each team member needs to create their own Omnis ID to activate their license (and any future licenses), and to sign into Omnis Studio.

If an employee leaves the company or no longer needs an Omnis Studio license, it can be Unshared by the license admin and re-shared with another developer.

Deploying your application

When you are ready to deploy your application you will need to purchase a Desktop or App Server deployment license, as follows:

Your Development license allows you to test your application in a Desktop or Server environment, which you can download from the Omnis Studio website, alongside the development software. In this case, testing on Desktop or Server takes one of your allowed activations within your development license.

When you deploy your application to end users in a live Desktop or Server environment, you need to purchase full Desktop or Server licenses. To add these licenses to your account, or to change or upgrade your current deployment licenses in any way, you need to contact your local sales team.

Sharing a Desktop or Server License

Having added Desktop or Server licenses to your Omnis account, you need to share them with end users or your customers.

To share a Desktop or Server license:

When the end user receives and clicks on the link, they will need to:

End users can use the Licensing dashboard to view and manage their Desktop or Server licenses.

If an end user no longer needs the Desktop or Server license they can Deactivate their license in the Licensing dashboard, or the license can be Unshared by the license owner and re-shared with another end user.

Activation Tickets for Desktop or Server licenses

If you want to deploy an application to Desktops or a Server, but not force end users to activate their software when they first open it, you can create an Activation Ticket for a license and embed it into the license folder of the Studio Desktop User or App Server. In this case, your application will start up and will not require activation.

To create an Activation Ticket for a Desktop or Server license:

Note: Activation tickets are not available for Development licenses.

Offline Activation

Some end users operate in high-security or restricted networks (e.g. government, military, research labs) where internet access is deliberately blocked. Offline Activation allows them to activate and use an Omnis Studio application without compromising security.

Offline activation is available for Desktop User and App Server licenses only, not Professional Edition (developer) licenses.

To perform Offline activation for a Desktop User or App Server license:

The license.lic file that you download is valid for 28 days, so if the file has expired you need to repeat the whole Offline Activation process again to download a new license file.

Omnis Licensing API

Licensing and Activation is managed in Omnis Studio by the Licensing Library which you can configure or interact with to enhance your Omnis applications via its API.

The API gives you control over some aspects of license management directly within your applications. This access gives you the ability to read specific license features, for example, to tailor the behavior in your application, and to programmatically manage activation state. By interfacing with the API, you can create more flexible, feature-aware, and secure applications that respond dynamically to the end user's licensing entitlements.

The Omnis Licensing Library offers an API object obtainable using the $getapiobject() method, using the command:

Do $modes.$getapiobject('license') Returns lAPIObj

API Methods

The API object returned offers the following API methods.

$deactivateAndQuit()

The $deactivateAndQuit() method will attempt to deactivate the current license activation and then forcefully quit Omnis.

If communication with the licensing server fails, the method will instead return a character variable containing the error message. In this event, it is your responsibility to ensure the application exits, e.g. by calling Quit Omnis.

$getFeature()

$getFeature(pFeatureName) where pFeatureName is a character parameter.

The $getFeature() method reads the license and returns the pFeatureName feature, if available. The data type of the returned pFeatureName will match the feature type, so if a feature is character based, it will be returned as character, a boolean feature will be returned into a boolean, and an integer feature will be returned into an integer variable.

For example, the following code will open a remote form if the app is running in the development version of Omnis.

If lAPIObj.$getFeature('development')
  Do $remoteforms.jsApp.$open()
End If

A list of license features can be viewed in the Omnis Licensing dashboard (you will need your Omnis ID to access this). Within the dashboard, double-click on a license to view the Activations and Features of the license, and select the Features tab. The named features are listed in the Code column, and include items such as ‘development’, ‘server’, and ‘dam…’ which are the Data Access Modules (DAMs) supported in Omnis Studio.

$isTrialFeature()

$isTrialFeature(pFeatureName) where pFeatureName is a character parameter.

The $isTrialFeature() method returns kTrue if the pFeatureName is a trial feature. If pFeatureName is not a Trial feature or cannot be found in the license, it will return kFalse

See $getFeature for information on feature names.

$isTrialFeatureExpired()

$isTrialFeatureExpired(pFeatureName) where pFeatureName is a character parameter.

The $isTrialFeatureExpired() method returns kTrue if the pFeatureName has expired, otherwise it returns kFalse. Note this does not do the extra check of ensuring pFeatureName is a trial feature, it assumes you have checked the pFeatureName is a trial feature beforehand.

See $getFeature for information on feature names.

$getWebServerUsers()

The $getWebServerUsers() method returns an integer for the ws_users feature, which is the number of web users your license allows.

$getDataFileUsers()

The $getDataFileUsers() method returns an integer for the df_users feature, which is the number of datafile users your license allows.

$isTrialLicense()

The $isTrialLicense() method returns kTrue if the license is a trial, otherwise it returns kFalse.

$updateActivationTag()

$updateActivationTag(pTag) where pTag is a character parameter limited to 255 characters.

The $updateActivationTag() method attempts to set a tag on the activation. Returns #NULL if it succeeds, otherwise a character variable containing the error message.

$refreshLicense()

The $refreshLicense() method forces the currently running Omnis Studio to ask the license system for a refreshed version of the license. This enables you to access any features that have been added to a license, for example, without having to restart Omnis Studio.