Snakes and Ladders


Over the last year or so, I’ve heard more and more about Python and how development tools need to support the language.  I’m told that students are leaving college with Python experience and it is therefore a great way to bring new, engaging and dynamic ideas into the development community and the MultiValue market could sure do with a dose of that right now.  In addition, some of the MultiValue manufacturers are riding the current wave and actively promoting their support for Python.

Whilst there have been questions from the MultiValue community about who might be using Python, I’m yet to come across many people who have actually taken the plunge and it’s been a largely mute topic within our own Revelation community in the EMEA region – until this week though.

It is no secret that many OpenInsight developers are remaining in position and not moving around too much.  Coupled with the fact that the MultiValue market place is getting older and developers are retiring (it is an inevitable fact), and we find that we need to resource projects from outside of the community.  Just recently Andrew, from Sprezzatura, has completed another series of tutorial workshops for another RevUK client.  Like the previous workshop, this one included a number of highly skilled professional developers from India.  The first OpenInsight VAR was extending their internal team using their own developers in India, this time it was a pure outsourcing deal to expand the development and support resources.

Enter the snake (Python).  Yet another OpenInsight development house looked outside of the community to expand their team and the chosen candidate has been getting to grips with the toolset ahead of starting their position later this week.  As part his first steps with OpenInsight, he asked about support for other database technologies and this week Python finally came up.

It was only to be a matter of time before someone asked me about
OpenInsight and python.

A quick email to support and Bob Carten got back to me with the usual response that I’ve become used to from the OI development team, “Of course we can do that”.

The specific request was whether Python scripts could be easily and reliably called from within OpenInsight using the Quick Event tied to a button.  The pretty straight forward and basic request resulted in a detailed reply from Bob:

“Yes, you can call Python scripts from OpenInsight.  The simplest way is to use the utility ‘RUNWIN’ service:

    cmd = 'py ': quote(filename)
    call Utility("RUNWIN", cmd, 0)

The attached py_shell (Bob included this as a .txt document in his reply email to me) is an example program which would let you pass in the name of a python file or just the body of a python script.  At the end it just calls Utility “RUNWIN”, the rest is window dressing.

However, that window dressing demonstrates some common techniques we use for writing object-ish programs in OpenInsight.  The typical use case for these techniques is creating commuter modules for OpenInsight forms.  We use the term “commuter module” to describe a program which handles all the events for a window.  We have a standard quick event which will call your commuter module.  For a window named “MYWINDOW”, the commuter module is a Basic+ program named MYWINDOW or MYWINDOW_EVENTS, which follows some conventions.  The attached RTI_LH_STATISTICS_EVENTS program (again attached in Bob’s email to me) is an example of a commuter module.  You can cannibalize it for your own modules.  The relevant parts are from line 1 to 81, which is where it implements the “interface” for commuter modules.

See “

Please drop me an email if you would like a copy of the py_shell.txt and rti_lh_statistics_events.txt files that Bob included in his email.

So that’s the snake, what about the ladder?

OpenInsight 10 is giving developers a real step up the ladder when it comes to Rapid Application Development.  So much is done for you and I find myself simply setting a property in the Property Panel, rather than writing, debugging and maintaining lines of code.  Better still, I’m then using optimised professionally written code and not code that I have cobbled together – well I’m no professional developer.

Anyway, I’m told that support for third party code gets even better in OpenInsight 10 and Bob is using the new technique a lot as part of RTI_GIT, which is one of OpenInsight’s native support programs for Git.

More on that in another posting, coming soon.


SRP Embracing OI10

We recently announced that we were quite busy porting our products to run in the OpenInsight 10 64-bit platform. For various reasons, it made sense for us to start working on SRP Utilities rather than any of our visual (i.e., ActiveX) products. At this time we are pleased to announce the general availability of SRP…

via SRP Utilities 2.0 Beta — SRP Update (Blog)

It is great to learn of people embracing the OI10 beta program and there are alot of good people doing some great testing of the software.  Today I learned that SRP have gone one further and they are getting ready to roll out their SRP utilities in both 32-bit and 64-bit, the latter (I believe) being available for OI10 beta testers.

The link above will take you to their blog posting about the release.

The OI10 project is really hotting up now.

OI 9.4.3 Released

OI Eye SquareFirstly, may I wish all of my readers a very Happy New Year and Best Wishes for 2018.  With the expected release of OpenInsight 10, it is looking like being a great year for Revelation, our clients and the MultiValue world in general.

News of the Beta progress is already reaching the wider MultiValue community and I’m already getting calls from a few people excited about what OI10 will offer the community in supporting their existing database technologies.

Anyway, the main reason for this blog posting is to announce a new version of OpenInsight for the New Year.  Available as ‘Roll-Up Patch v4’ from the OpenInsight WORKS area, this latest release includes all of the patches and fixes from the previous “Roll Up” patches, as well as:

  • A new OINSIGHT.EXE to fix memory issues with out-of-process versus in-process OLE controls.
  • Enhanced R/List processing to fix a longstanding issue in “between” processing (in both OpenInsight and AREV32).
  • Fixed LIST_VOLUME_SUB to support volume MFS.
  • Improved performance when using base 64 encoding/decoding.
  • Improved stability when determining Windows drive/server mapping.
  • Updated LIST_USER_LOCKS and related functions (RTI_GET_LH_INFO, RTI_GET_LH_RATIO, etc.)
  • Improved DSBFS stability

After installing this patch, your system will report that it is running version 9.4.3.

My App’s now full of Bugs :)

BugSo, I am a week into my OpenInsight 9.4 to OpenInsight 10 (OI10) conversion which is basically just playing around with the interface and I really like how things are going.  I have a brand new colour scheme and ripping out loads of code.  I was keeping a tally, but I’m about 2/3rd of the was through and nearly 2,000 lines of cobbled together code have been deleted in favour of setting properties and thereby using professionally written code to run my application.

Last night, I managed to introduce a long overdue and much longed for Progress Bar which runs whilst my data grids are loading during system startup.  A trivial task for most of my blog readers, but quite a result for me all the same.  It’s nice when you manage to achieve something after a struggle and this is one such case.  It does put a smile on my face every time I launch my OpenInsight 10 application, so it’s well worth it in my mind.

Progress Bar

Using graphics in OpenInsight to build some really nice interfaces is child’s play now.  the key is having a good graphics library to pull from and I’m extremely lucky to have access to Icon Experience‘s graphics library.  With nearly 3,000 images in the library that I’m using, and they have several libraries and numerous sizes of each image in each library, they have a graphic (.png and .ico) that just about meets any requirement when building an application.

Anyway, I’m pleased to now be 100% OpenInsight 10.  Since rebuilding my computer, I have found no reason to install OpenInsight 9.4 and I’m now both developing in OI10 and using my Revelation Contact Manager on a daily basis running under OI10.

Great job guys.

I cannot produce any videos of my progress thus far because I’m working with live sensitive data.  However, once this project is done, I will look to put a video or two together using the old Clinic application that I used for the OI9.x tutorials.  Watch my blog for more information and video links as I begin that project.

If you are an OpenInsight WORKS subscriber, you can get the OpenInsight 10 Beta 4 software from the WORKS area on   If you are not a WORKS member, please drop me a line and I’ll be pleased to arrange a time to talk a little more about OpenInsight 10 and the supporting WORKS subscription service that underwrites the development suite.

10 + 10 = Ouch!!

So, I had some computer issues yesterday (not OpenInsight based I am pleased to confirm) but the end result saw me blowing my machine away and opting for a complete factory reset.  This is usually a pretty painful task, but ‘boy’, did I not know the half of it.  This posting is therefore a reminder for me and also to enable all OpenInsight installers to better prepare for their OpenInsight installations.

With my machine sitting with a newly installed copy of Windows 10, I updated my Internet Security and immediately dived into installing OpenInsight 10 on my machine – well it is the most important piece of software on my box and an application that runs my working life.  Well, I say install but I actually did what I have done a thousand times before and simply copied the RevSoft folder from my backup drive onto my new Windows 10 installation and launched the ClientInstall.exe to install those all important files that OI10 needs to operate properly. 5

Before doing anything with OpenInsight and as per the normal OpenInsight installation documentation, I took the added precaution and checked to make sure that I had the .NET Framework 3.5 and 4.6 installed on my machine.

All was good with both Frameworks displayed in the “Turn Windows features on or off” window.

I therefore ‘thought’ that I was good to go and copied over my backed up RevSoft folder, then I located and launched the ClientInstall.exe file using the ‘Run As Administrator’ option.  However, half way through the install I got the following warning.


Now, I know that I don’t have the later .NET Framework installed, so I clicked ‘Yes’ to launch the Microsoft webpage.  This presented me with the .NET Framework 4.7.1 option front and centre and that seemed like a good choice – well it can’t hurt to have the latest version.

Alas, after downloading the file and running it, I was presented with a Microsoft .NET Framework Blocking Issue warning and the only option is to Close out of the installation.   2

OK, so the OI system did say that I needed 4.7, so back to the Microsoft website and towards the bottom of the page are several options including 4.7.  Naturally, I downloaded and installed that version.  Alas, the exact same Blocking result:


I knew that I’d had the earlier version installed, so I tried 4.6 but, as expected I was told that it is already installed.  Out of desperation I thought I’d try the 4.6.2  version and success, it ran through a full installation.



Jumping back into the OI ClientInstall I ran the file and crossed my fingers.  Again, the installation failed.  OI really does want 4.7 and nothing else will do.

Time to dive into the ‘More Information’ link and something that I really should have done first off.  This presented me with a long page of different things that can affect the .NET installer but towards the bottom covering just a couple of lines is a note about the .NET Framework 4.7 needing the Windows 10 Creators edition.  Checking my machine and because this is a machine that is a couple of years old, I naturally have an older version.

So, into Update and Security and I began to download the upgrades.


With the first set of upgrades installed, I ran the updates check again and the system went off to pull down the Creators Fall Edition, one heck of a long download and almost as long to install.  This process began at around 10:00 hrs this morning.  It’s now gone 16:00 hrs and the Creators Edition is finally installed.  One last update check and one last batch before a final check and we are finally up to date.


This time when I ran the ClientInstall, the system ran through as expected with no call out to Microsoft and no need to manually install the Microsoft .NET Framework 4.7, that appears to be installed as part of the update.


Somewhat relieved that all now appeared good, despite nearly a whole working day taken to run the upgrades, I launched OpenInsight 10 and my application and it is now functioning exactly as expected – PHEW!!!

So, what is the moral of this sorry tale or woe, angst and dead ends.

The Number One Rule:  Make sure that you or your client have your windows 10 machines fully upgraded BEFORE you step through the door to undertake any software installation that needs a .NET Framework and especially OpenInsight 10.

I’d have hated to have arrived on a client’s site to install their new OI10 based system, to find myself sitting there waiting for Windows 10 machines to update.  One would hope that the machines will have been installed for a while and be fully updated, but you just know that there will be people who only opened the box and turned it on that morning.

Also, be warned that if you have to blow your machine away and back to factory settings and it’s running an earlier Windows 10 release, you will have to factor in a long wait.  I guess that there can be something said for keeping mirror image backups.

So, now that I have my OpenInsight 10 working you’d think that I’m about to dive in and continue with my conversion.  Nope, I’m off to coach archery and OI10 will have to wait until a little later.

Resolving Open File Security Warning when Launching OpenInsight.

OInsight.exe File Security Warning Message

If you deploy OpenInsight systems and come across the Open File Security Warning in Windows, then Jared at SRP has three very useful options for you to consider and which will enhance and ease your OpenInsight deployments.

Jared has blogged the options in details and they can be found at the URL copied below.


When is a bug not a bug…

… when Martyn is playing with the OpenInsight 10 Beta and his knowledge of the new system is lacking <lol>.


As many of you will know, I have been working with the OpenInsight 10 alpha for sometime and I recently downloaded and begun playing with the official OI10 Beta which was released a week or so ago.

I’d reported a good number of issues to RevUS during the Alpha program and I’m pleased to see many of those issues resolved in the Beta and a mountain of other things now working and working really nicely.

OI10 is a massive change from the old 9.x versions.  It is so much easier to use and massively more developer friendly.  I’ve only really played in the forms designer (image above), popup designer and scripting tools but it is a brand new world compared to the old interface and tools.

For example, the Main Application Manager window lists your recently accessed entities, making access to those entities a day or two later super easy.  Once in the forms designer, you can now have multiple forms open and you can work on them all at the same time – although I’ve confused myself on numerous occasions and found that the tab bar gets a little full.  However, I absolutely love the ability to have a form open and then scripts and Quick Events open for that form, popups associated with that form, graphic files associated with that form and more – it’s just so intuitive and super, super easy to jump between entities.  No more closing things, drilling down to find new entities and opening them – it’s just a massive, massive time saver, let alone more organised.

Then you have the properties and events readily available at the side of the interface.  I usually have the Properties panel open because there are just so many properties that have been exposed to make life even easier for developers.

I used to write loads of lines of code to handle row shading, window positioning and the like, now it’s a value in the properties window.  This makes for exact positioning, the creation of some lovely looking windows, better graphics handling and much much more.

As I get more into OpenInsight 10, I find that it is the little details that are making all the difference.  For example, when compiling a form, I get an immediate notification of an issue in the output panel at the bottom of the window in red text.  So  much more is delivered right to the developer in the interface.

All of the usual tools are in the toolset, although just about everything has had a makeover or some level of enhancement.  The changes within the toolset are huge and massively beneficial.  The only downside is that there is going to be work for all of us moving existing OpenInsight applications to OpenInsight 10 but the benefits will be well, well worth the time and effort.

As for non-OpenInsight developers.  Well, Revelation are now delivering one of the few fully integrated application development suites for both super rich desktop and amazing web based applications.  We now have a very intuitive toolset that developers using other tools will be right at home with and which features form design tools, coding tools, debugging tools, reporting tools and much, much more for both desktop and web, right on one comprehensive toolset.

Another massive leap forward is O4W.  This ground breaking toolset, that I used some time ago (as a non developer) to build a proof of concept application and which was finished by the VAR and now used by the employees of some of the Internets biggest names (no need for me to say who), used to be based on a couple of columns and creating more complex interfaces was not overly easy.  With OpenInsight 10, all of that has been addressed and O4W10 (not it’s official name) has really matured into a brilliant piece of technology for those of us who don’t want to learn HTML5, Javascript and the like.

I might be more than a little biased, but I am totally and utterly blown away by what Revelation are now very close to delivering to the OpenInsight development community, the MultiValue development community for widely and business in general.

The beta program is currently open to all OpenInsight WORKS subscribers.  If you are reading this and you are not a WORKS member or you are new to Revelation Software, please contact your nearest Revelation office and we’ll be pleased to assist you in any way that we can.

I was told sometime ago that OpenInsight 10 was set to be a game changer.  I now know why that person said that to me and I can’t wait to learn more about converting my applications and building new systems and proof of concepts for clients and prospects.