How To Deploy OpenInsight 10 To Your Customers

How To Deploy OpenInsight 10 To Your Customers


Deployment in OpenInsight 10 is significantly different from prior versions.  Because system information is now encrypted on a per-system basis, you must tell the copy of OpenInsight 10 that you are changing the serial number (which is used in the encryption process) ‘before’ you change it.  Failure to do this will result in a system that cannot be accessed (until you put the original serial number back into the system).

The steps to making a deployment as you want are as follows:

  1. Request, and receive, the new authorisation code from Revelation Software with the new serial number and new number of users.
  2. In your “master” OpenInsight 10 system, in SYSPROG, go to the Settings/Users/Policy Setup menu choice in the IDE.
  3. In the policy configuration window, check the box “System Deployment Preparation” and press the OK button.
  4. In the Serial Number Entry dialog that appears, enter (and re-enter to verify) the new serial number you obtained from Revelation Software and press the OK button.
  5. Remove or change as appropriate the REVPARAM file from the cloned copy of OpenInsight before deployment.
  6. Clone your copy of OpenInsight.

On the client system, your steps will be as follows:

  1. Copy in the cloned copy of OpenInsight.
  2. Update the license information with the new authorisation code/serial number/number of users (see below).
  3. Run the clientsetup.exe routine found in your OpenInsight 10 folder.

At this point, your client’s copy of OpenInsight should be ready to run.

To update the license information, you have two choices.  In the cloned copy of OpenInsight, you can start up the system with your ‘original’ authentication (just by starting up OpenInsight normally), and then go to the Settings/Application Settings menu in the IDE, and choosing “License Renewal”.  You will be prompted to enter the new authorisation code, and (after confirming that the entered information is correct) you can save the new authorisation information, shut down OpenInsight, and restart OpenInsight.  You’ll find that the system is now running with the new serial number/number of users.

Alternatively, if you wish to ship out systems without your authorisation file in it, you can use the (non-GUI) routine to create the new authorisation file.  This step can be done on your ‘master’ copy of OpenInsight, before deployment to the client system.

Open up a DOS command prompt, and “cd” to your OpenInsight 10 folder.  Type in the following:


Where <authcode> is replaced with the authentication code you received from Revelation Software (which I believe you can put in quotes).  So for example, you will type something like this:

REVAUTH OI "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx-xxxxx" CLIENT.LIC

If there are any errors, revauth will respond with “Invalid code entered: <errcode>”. Otherwise, it will create a valid license file named CLIENT.LIC.  Take that CLIENT.LIC file, and copy it into your “cloned” system, RENAMING IT TO REVENGINE.LIC.  This will then become the license/authentication information for the “cloned” copy, and you should then be able to install that copy as outlined above.

Please remember to run the clientsetup.exe after copying in the cloned copy.

First published on


New Create User Details function

RTI_CREATE_USER_DETAILS function for OpenInsight 10.0.5 and above.


OpenInsight 10 provides support for login policies including locking out of users after a definable number of unsuccessful attempts, password construction requirements, etc. Sensitive data for policy and user information is stored in AES encrypted records.  Policies and users are maintained via the OpenInsight 10 IDE.

OpenInsight 10.0.5 and above introduces a new function called RTI_CREATE_USER_DETAILS that allows developers the ability to create a new user or modify information about an existing user in the OpenInsight database.

Description: Creates a new user or modifies information about an existing user in the current database.

Note:  Only Level 1 (Administrator) and Level 2 (System Administrator) users can create users. Level 0 (User) users can only change their own, existing information.

Syntax: RTI_CREATE_USER_DETAILS(userID, currentPwd, userpassword, fullName, validValue, disabledFlag, disabledDate, disabledTime, resetFlag, userType, userLevel, o4wLevel, expirval, expirdate, errDetails)

Return: “1” if the create or edit succeeded
Value: “” or “0” if the create or edit failed, and additional details are returned in the errDetails parameter.

Parameters: The function has the following parameters.


Parameter Description
userID A user identifier. userID must begin with an alpha character, followed by any combination of characters, digits, and underscores and cannot include spaces.
currentPwd If enhanced authentication is enabled on this OpenInsight system, then a User-level user who wishes to change any user information must pass in the current password in this parameter. This allows the system to verify that they are authorised to make changes to this user information.
userpassword The new password for this user. If enhanced authentication is enabled, then the password must match the specified authentication policy. If legacy authentication is used instead, the password must be a string of characters, 6 to 20 characters in length, and – if not specified – the default is null, and a password is not required to access the database as this user.
fullName The full name of the user.
validValue This is a user-defined parameter that allows the developer to specify additional information that they would like returned if the user’s logged-in state is queried (for example, to implement additional permission levels and groups). By default, this value is “1”.
disabledFlag If enhanced authentication is enabled on this OpenInsight system, then if set (value is “1”), the user will be disabled; if it is reset (value is “0”), the user will no longer be disabled. If the user is disabled, pass in the additional disabledDate and disabledTime parameters.
disabledDate If enhanced authentication is enabled on this OpenInsight system, and the disabledFlag has been set, this parameter specifies the internal date that the user is disabled until.
disabledTime If enhanced authentication is enabled on this OpenInsight system, and the disabledFlag has been set, this parameter specifies the internal time that the user is disabled until.
resetFlag If this parameter is set (“1”), the user must reset their password at the next login.
userType If this user should only be allowed to access the OpenInsight desktop interface, specify “0” for this parameter. If this user should only be allowed to access OpenInsight via O4W, specify “1” for this parameter. If the user should be able to access both desktop and O4W instances, specify “2” for this parameter.
Userlevel If the user is defined as an OI user, or as both an OI and O4W user, specify the OI permissions level here. There are three levels of users. When the user is logged in, the value is stored in the system variable @ADMIN.

There is no default value for Userlevel. If you do not specify a value, execution fails, and an error is generated.

Value Description
0 User
1 Administrator
2 System Administrator
o4wLevel If the user is defined as an O4W user, or both an O4W and OI user, specify the O4W permissions level here. The valid values for O4W permission groups are customisable on a per-site basis.
expirval Expiration parameter for the password. Possible values are:
Value Description
0 Expires at next login
1 Never Expires (default)
2 Expires at the expiry date
expirdate If expirval = 2, the expiration date (passed as a standard output converted date in a format such as mm/dd/yyyy).  Only required if expirval = 2. Note that this value is only relevant when legacy authentication is used on the OpenInsight system; if enhanced authentication is enabled, expiration will be as per policy.
errDetails If any errors are encountered during the execution of this function, they are returned in this parameter.


Modernising the writing, debugging and management of Symbolic Code – Scheduled for OI 10.0.4.

youtubeoi10-e1529069260513.pngI was recently working on a new application and I came across an issue with one of my symbolic dictionary items.  The code was pretty simple, but not being a professional developer, I just could not see what the issue was.

Now, I would usually have dropped in a simple debug statement to see what variables were being set when and with what values.  This would have quickly told me where I had gone wrong in my code.  So, I dropped a Debug statement into my symbolic code, saved the table, ran the form and we dropped into the debugger.

Alas, no variable information is displayed in the debugger for the symbolic code and I was none the wiser for my efforts.  Back to the very simple Symbolic Code editor and I had to work things out for myself.  With only three lines of code, I actually managed to find the error pretty quickly, but just imagine if that was a 100 lines of code, a thousand lines of code or more – yes I have seen this on more than a few occasions.

I was talking to Bob Carten during one of our exploratory and (for me) learning sessions and I mentioned how difficult the symbolic editor is to work in.  He laughed and asked if I’d be interested in a new feature coming in OpenInsight 10.0.4 and which specifically addressed my issue.

In fact, Bob told me excitedly that this new method of writing symbolic code, opens up a whole host of other possibilities.  He touched on them, but I am afraid that he quickly left me scratching my head.  For example, why would you want to have a three part conversion, at least that’s what I think we were talking about?  Anyway, that’s for another time.

For now, you can see this new technique in my latest OI10 Quick Start Video which has just finished uploading to my YouTube channel.

Elegant debug statements

youtubeoi10.pngI recently uploaded an OpenInsight 10 lesson and at the beginning of the video I talk about a rogue debug statement that I had left in my code in the previous video (on purpose you understand).

Mark Marsh (Professional OpenInsight Application Developer) emailed me with an extremely useful tip to using debug statements in code and which will avoid the issue and embarrassment of leaving a rogue debug statement in your code.  It is also great for those of you with OpenInsight development teams because the trick is user specific.

I’d like to offer Mark a huge thank you for sharing this invaluable tip with me and for enabling me to then share it with you.

You can see the video here and the tip is in the video comments – it’s well worth a look.

Increased OpenInsight 10 WORKS User Count

didyouknowoiThose of you that have been watching my initial OpenInsight 10 videos, will not have failed to notice the OI Management Console and the tools that this powerful feature brings to all OpenInsight 10 (OI10) Systems Administrators.

Not only does it expose some really useful information and statistics, as well as much easier remote configuration, but it makes administering a live system so much easier through the brand new Command Channel.  The guys at RevUS touched on this in their recent Introduction to the Features and Benefits of OpenInsight 10 Webinar and I show working it in my video which provides a Quick Overview of OI10.  Jump to around 12 minutes and you’ll see the Management Console running as an O4W application in the built in OI10 browser on screen.

Anyway, interest in the Management Console was high following the Webinar and a thread appeared on with regards to some people having trouble running the Management Console and needing a 10 user O4W license to run it.  Whilst running it online is super useful and convenient because System Administrators can access the Management Console from anywhere in the world and at any time, some people might just want to run it locally from their desktop using their OI WORKS license.  This is how I ran the system in the videos.

Even in this local based setup, O4W and the Management Console consumes an additional license, or two – it’s the nature of O4W.  Now, I’ve sat in many a presentation for software where the vendor says “Hey, we have this amazing module, it’ll change your life and that of your users.  Ohh, but it’s going to cost you …”.  Heads quickly fall like a child being offered a big bag of colourful sweets, only for the parent demanding a week’s worth of chores to be completed before access is granted to the bag of sweets.

Revelation Software have once again shown its ongoing commitment
to its OI WORKS community.

It looked like Revelation Software were heading down this same route, but, true to form, Bill told me about an OI WORKS discussion forum posting from Bob Catalano over the weekend.  In the posting, Bob confirms that the Management Console will not function with the usual 2 user OI WORKS license and because of this a decision has been made to increase all existing 2 user WORKS licenses to a 3 user license.

This is brilliant news, it shows Revelations commitment to its highly valued OpenInsight WORKS community of professional application developers and it provides yet more value from the, already, invaluable WORKS subscription service/license.  However, those of you opting for the cheaper NUL based license for your developers will need to look at increasing your NUL license accordingly and in the normal license increase manner.

If you are an active WORKS subscriber looking to work with OI10, please log into WORKS and head over to the WORKS forum for further details on claiming your new OI10 authorisation key.

If you are an expired OI WORKS subscriber or wish to get onto OI WORKS to gain access to OpenInsight 10, please contact your local Revelation office and one of us will be more than pleased to discuss your needs.


New OpenInsight 10 YouTube Training Video Playlist


Several of you have been chasing me about the OpenInsight 10 (OI10) training videos recently and the need for these was highlighted recently with the news that we have several non-OpenInsight MultiValue developers taking an interest in the tool set.

I have just finished producing the first three videos in the training series and I have published them to my new OI10 YouTube Channel and in a new playlist which will be added to as I get to finish more videos.

These first three videos are fairly light weight:

  1. The first touches on what OpenInsight is, where is came from and there is a quick overview of the OI10 development environment.  The overview is a reproduction of one of my earlier videos but it is included here for people who are new to OpenInsight and it is therefore conveniently placed in the Lesson playlist.
  2. The second video looks at installing the OI10 evaluation software and making some initial configuration changes ready for the training videos to be followed.
  3. The third video looks at how to create your first application and how to add an application level user into the system using the enhanced security.

I have also added a link to my earlier OpenInsight 9.x tutorial video playlist and which is located on a totally separate YouTube channel.

As usual, access to the video series is 100% free and I hope that existing and new OpenInsight developers and users will find the series of videos useful.

If you have not already, please be sure to subscribe to the channel to get notification of when additional videos are uploaded.  I expect this to be fairly frequently initially and then things will slow up as I have to learn more about the massive changes that have been delivered in OpenInsight 10.

As always, please comment below the videos to let me know that they are being watched and whether you find them useful or not.

An Introduction to the Features and Benefits of OpenInsight 10.


An Introduction to the Features and Benefits of OpenInsight 10

Thursday, June 7th, 2018
11:00 am PT / 2:00 pm ET / 7:00 pm BST

REGISTER NOW for this complimentary webcast.

As a reader and subscriber of this blog, you will not have failed to notice that in April  2018, Revelation Software proudly announced the long anticipated official release of OpenInsight Development Suite (OI) 10.0.  This ground breaking released has been completely re-engineered for 64-bit and there are a wealth of new features and benefits which make application development in OpenInsight easier and faster than ever.

Nearly every bit of code in the product has been rewritten, from the user’s interface, to the various reporting tools and the speed of the indexing routines.  Revelation Software have listened to their user base and delivered in this release.

If you are a WORKS subscriber, OpenInsight application developer, MultiValue application developer, or simply someone looking for an easier application development tool set – This is a FREE Webinar that you cannot afford to miss.

To just touch the surface, OpenInsight 10 provides the following new and/or improved components:

  • New IDE
    OpenInsight 10 delivers a brand new Integrated Development Environment (IDE) to developers.  It is visually similar to modern application development tools, it is intuitive and yet it is still designed for the MultiValue developer in mind.  Each of the product’s designers, for forms, tables, reports and all others are now contained into a single, cohesive and dynamic work space.
  • Arev64
    The next generation of the Advanced Revelation emulator, utilising the full power and capabilities of modern 64-bit architectures.  Yet again, Revelation have extended the life of their legacy DOS applications.
  • User and Data Security
    With increased concerns about security and privacy, including the current GDPR requirements, a number of enhancements and changes have been made to further   strengthen data security within OpenInsight and to provide system manager (DBA’s) with greater user management controls.
  • Management Console
    The OpenInsight Management Console is a powerful browser-based database management tool for system administrators.  It provides an overview of your system and the ability to send useful and timely messages to workstations.
  • Git Integration
    For small, medium and large development team, managing your code is a must and OpenInsight’s repository based environment is now tightly integrated to the Git   source code management system and thereby giving you access to one of the leading application development management tools for teams.
  • Universal Driver 5.1
  • This latest version of the ever popular Universal Driver supports 64-bit operating systems and Volume Snap Shot (VSS) capability.  Together, these technologies provide the highest levels of reliability and the facility to quickly recover if something should go bad.

In this webinar Mike, Bob and Bryan will provide an overview of these new features and
benefits of OpenInsight 10 and more.

REGISTER NOW for this complimentary webcast.

If you are unable to attend at this time, register today and attend the archived event at your convenience!