SRP HTTP Framework – Create REST APIs for OpenInsight


srphttpframeworkThere has been a lot of talk about REST and Restful APIs in recent months.  Don spoke about SRP’s use of RESTful APIs in his conference presentation last year and I noticed that other MultiValue vendors are starting to support the technology – it’s seems to have now moved beyond the latest must have.

In addition to SRP’s pre-conference blog posting RESTing before RevCon 2016, SRP have just published a follow-up blog article which talks about why they released their SRP HTTP Framework and also about their new version of the toolset (Version 3).

You can read the full blog article on their blog – here.  If nothing more, the postings and the Powerpoint presentation will give you a good grounding for the technology and how it can be exploited in OpenInsight.  You won’t be caught out when providing a demo and you are asked about support for REST and what it might mean for you and your application.

Confusion & Wisdom


oi10tab1
This again is going to be more of a memory for me, but it will still be useful for those of you working with the OpenInsight (OI) 10 Alpha.  I’m a back to working on an application for one of our Value Added Resellers (VAR) and I’ve been trying to build a dynamic toolbar because the system is mostly operated by touch screen operators.

The current menu is three levels deep and the toolbar is limited in space.  I therefore wanted to have a double toolbar with one row of static buttons and a row below which would change depending on which top level button (menu item) is clicked.  The obvious way to achieve this is a panel with a row of buttons and a tab control.

Now the Tab Control in OI 10 is located under the Containers sub category in the Toolbox.  I therefore thought “Great, I’ll drop the buttons on the tab and all will be good.”  However, the current Tab Control has been specifically designed to operate like the current OI9 Tab Control.  This uses paging Forms and you simply drop the controls on the appropriate page, rather than the tab control.  Dropping them onto the Tab Control is actually impossible because it jumps to page one all of the time.  Nevertheless, thinking that the tab control was an intelligent container, I blindly pressed on, getting myself into a state of confusion.

Five minutes later and Carl put me right.  He explained that the current Tab Control has been written to work exactly like the current one so that people’s upgraded applications will not break – that’s the Wisdom and I really glad that Revelation are thinking about supporting existing application, rather than blindly building new controls for new applications.

All I needed to do was:

  1. Drop the tab control on my form and make it shallow so that only the buttons show.
  2. Drop the buttons (or whatever controls) onto the appropriate pages and where I need them to show on the tab control.
  3. Then the bit I was missing.  The buttons will most likely display under the tab control.  So, click on the button, right mouse click and choose ‘Bring to Front’.
  4. Finally, slide the Tab Control over the buttons to contain them – or give the appearance to contain them.
  5. Add the usual tab control code used in OI9 and you are done.

So, what about a brand new tab control that works as a container and that has pagination, or whatever?  Well, don’t hold your breath, but watch this space.

A few minutes later and I have my working dynamic toolbar.  Now I just need to add some glyph images, some code to launch the associated forms and I’m done :D.

 

DBTA – MV Vendors Look to the Role of MV in the Future


1P7A8552Database Trends and Applications have just published a new article that looks at the role of MultiValue technologies in the future.

Author Stephanie Simone, talks to six of the key leaders in the MultiValue community to get their viewpoint on the future of our great technologies into the future.

Here is what Mike Ruane, President and CEO, Revelation Software had to say on the subject.

“At Revelation Software, we are incorporating features, capabilities, and integrations into OpenInsight (our MultiValue database development environment) to address the challenges of evolving data environments.

We are providing MV developers with a browser-based rapid application development tool that lets them generate responsive forms, reports, and dashboards, and we are supporting the “develop once and deploy to the desktop, tablet, or a mobile device” design philosophy.

With a development environment that tightly integrates with the Git source code management system, we offer an environment that allows for collaborative development teams as well as source code management.

Moreover, our database development environment seamlessly integrates with cloud databases. Building applications that utilize NoSQL cloud-based data storage allows us to support large numbers of concurrent users, deliver highly responsive experiences to a globally distributed base of users, provide high availability, and also handle semi-structured and unstructured data.

Enhancing usability, OpenInsight offers a development user interface within MV that is similar to what developers outside the MV world are accustomed to, provides a database environment that utilizes industry-standard AES encryption and policies, and enables end users who work with MV data stores to view their data in today’s BYOD world.”

Your can view the entire article on DBTA’s website here.

OpenInsight Crashing and Not Responding Issues.


We have recently received a number of support requests from clients reporting that OpenInsight has stopped responding or OpenInsight has stopped working and crashed.  This is sometimes the message that OpenInsight has stopped working because it is addressing illegal memory, or that OpenInsight has stopped responding and you can opt to close it, ask Windows to correct it or carry on waiting for a close.  On further questioning, we sometimes find that there is an associated FS1030 or and FS231 error message.

In 99% of cases, the issue is the result of something environmental or that the UD has been incorrectly installed or some has changed something on the network, such as replacing the server and not reinstalling the UD correctly.

If you should be faced with an issue such as those above, we recommend that you thoroughly check the Universal Driver installation and even uninstall and reinstall the Universal Driver, whilst ‘closely’ following the installation manual.  We also suggest that you check for DEP running on the system because this also causes issues on older OpenInsight based systems.

However, below are a few specific things to consider:

  • FS1030 – This is usually a result of the SYSTEM USER either not being configured correctly with full permissions during the installation, or someone has decided to delete the user.  The latter is common where a server administrator (or outside IT contractor) is running a user audit and removing old users.  They don’t recognise the SYSTEM user or don’t understand the significance and simply delete it as no longer needed, or reset the SYSTEM user with restricted permissions.
  • FS231 – This error message is often attributable to an issue within the REVPARAM file, or where the REVPARAM file has been deleted or created with an extension, such as .txt.  One of the most common configuration issues is the SERVERNAME= parameter in the REVPARAM file not matching the name in the registry that was input during the installation wizard.  Sometimes, if you try to run the UD Manager that will fail with an FS231 error message, this is often a result of the servername being incorrect in the UD Manager’s REVPARAM file.
  • FS1019 – New server and workstation deployments often contain default firewall rules that block OpenInsight from communicating with the Linear Hash service on the server.  When this occurs a FS1019 or similar message will appear during OpenInsight start-up.  Revelation have published a white paper (knowledgebase article) on this issue and an accompanying Port Checker.  Both are available on request or from OpenInsight Knowledge Base (revelation.com).
  • OpenInsight Is Not Responding – This message often shows in the top of the OpenInsight window or in a message.  Three options are offered and one is to allow the program to run until completed. OpenInsight is actually working but the Operating System, often Windows 7 or later, thinks that it has stopped responding because OpenInsight is busy and not ‘currently’ communicating with the Operating System for a time.  Often waiting for the OpenInsight process to complete will result in the message closing itself (or going away) and everything returns to normal.  Some likely causes could be a resize or creation of a large file or a large indexing run. If this becomes an issue for users, it is often necessary to identify which process is taking the time and then to add some code to let the Operating System know that OpenInsight is working.
  • OpenInsight has stopped working and Will Close – This is a more serious issue because the operating system will forcibly close down OpenInsight.  We have recently experienced that running OpenInsight with a profile log eradicates this issue and that OpenInsight again crashes when the log is removed.  This has been an issue invoked by the driver in NETDRV being incorrect.  One recent installation of the Universal Driver 4.7.2 was being run with the UD 4.6 driver set in OpenInsight.  This was because the 4.7.2 driver was not amongst the options in NETDRV.  We completed the Universal Driver installation correctly by running the UD Client Install and the system immediately began to run correctly.  If you experience ‘any’ OpenInsight crashing or not responding messages, we would advise that the client driver is checked and make sure that the UD and the client are running as a pair – i.e. 4.7.2 server and 4.7.2 client.

Sprezzatura have a useful blog article which discusses the OpenInsight Not Responding issue in much more detail.  Click Here for the SENL article.

Of course, if none of the above help to eradicate your networking or OpenInsight crashing issue, please contact your local Revelation support person and they will be happy to investigate the issue further.

Finally, if you are running an older version of the Universal Driver, please consider an upgrade to version 4.7.2 which has some important enhancements, including a memory leak fix.  The upgrade from 4.0 is free and your local Revelation representative will be happy to process the supply of the upgrade for you.

ITMS Uses Revelation Software to Stay Ahead of the Curve


usersThe February 14, 2017 issue of Database Trends and Applications features an article written by Stephanie Simone titled ITMS Uses Revelation Software to Stay Ahead of the Curve.

OPTO Software, part of iTMS Software Pty Ltd, provides manufacturing inventory software, including ERP solutions, to a wide variety of industries. Customers span the fields of manufacturing, mining, civil, fabrication, and engineering as well as distribution, retail and wholesale, construction, and importing and exporting.

Based in Brisbane, Australia, Opto has been providing ERP, material requirements planning, manufacturing and inventory software solutions to Australian businesses since the early 1990s, and in turn, these software solutions have enabled smaller manufacturers to close the technological and competitive gap between their business and larger-scale market leaders.

Used by hundreds of clients across Australia, Opto prides itself on being small enough to be highly flexible but large enough to deliver the latest technology trends to its customers while shielding them from the underlying complexity. Providing steadfast support, Opto seeks to guide customers through every phase of their installation, from evaluation and feature selection to technical support and help desk enquiries.

OpenInsight at the Core

“Our focus is on the manufacturing technologies you use to build things. Surrounding that, we also plug into accounting systems,” said Jeremy Bolton, managing director. “Revelation Software’s OpenInsight is the heart of our business; our whole product is based on it.”

According to Bolton, a key differentiator for ITMS/OPTO is its deep understanding of the nuances of manufacturing. Revelation supports that agility, ensuring that OPTO platform is easily configured.

“We’re very good at making software fit into many applications with the ability to deliver it quickly and cost effectively, while also making it easy to understand,” Bolton said. “What sets us apart is the ability for the OPTO platform to be easily configured to precise customer requirements.”

The company’s partnership with Revelation was forged after OPTO’s CEO sought to build an effective and simplified system to solve manufacturing issues.

Ability to Adapt

Revelation has made OPTO’s platform very adaptable. It’s simple to build on and it supports both emerging and existing applications, according to Bolton.

Because it runs on a MultiValue database, OPTO can add new capabilities to its platform without affecting the data model.

“If someone needs something with Revelation, the architecture of our product enables us to add the new capability without changing the underlying data model of every other customer,” Bolton said. “Our software can fit in many applications.”

MultiValue database technology can be quickly tailored to unusual requirements and it can talk directly to the CRM copy machine, Bolton explained.

“When we are talking to people about layout, normally we have to get spreadsheet, but this technology allows us to do a layout quickly and effectively,” Bolton said. “Revelation gives us the flexibility we need when responding to customer requirements.”

Built for the Future

Reliability and compatibility are also why OPTO has stayed with Revelation for more than 20 years.

The technology helps OPTO support its customers by providing them with a platform that delivers better customer outcomes, quickly, and cost-effectively.

The MultiValue aspect of the platform make it possible to process requests from customers quickly and with a speed that relational database management systems can’t provide, according to Bolton.

“Running Microsoft SQL Server or Oracle didn’t make any sense,” Bolton said. “There is nothing else you can find to handle so much data.”

Additionally, the cost to customize the platform for a customer was “astronomical,” whereas using Revelation makes the platform cost-effective for the client, Bolton explained.

However, if customers do need to utilize relational database management software, the OPTO platform can integrate to any part of the database that’s necessary, he noted.

Innovation with Revelation

Recently, ITMS/OPTO and Revelation collaborated on adding RESTful application programming interfaces (APIs) to ITMS/OPTO’s platform. The new capability allows the company to plug into modern web platforms such as Salesforce.

Moreover, the use of RESTful APIs means that ITMS/OPTO doesn’t have to do heavy manually coding to add capabilities as it did before, Bolton explained. Using RESTful APIs will enable integration with the increasing number of best-in-class cloud-based, mobile, and niche applications.

“Before, if we needed a CRM system, we’d have to ‘be’ the CRM system,” Bolton said. “Now, we can just plug into the world’s best CRM system.”

This has been a key step in the right direction as OPTO looks to integrate more web-based products, and to allow third parties to connect into its systems.

Opto gets requirements from customers and can build what they need, but in the past, Opto would be constrained, said Bolton. “What we want to do is make it so that any third party can pick it up and do an order.”

The company already utilizes integration in the cloud effortlessly, according to Bolton.

“Integration in the cloud becomes much easier, that’s one of the big benefits you get from RESTful APIs,” Bolton said. “Cloud-to-cloud products integrate almost seamlessly. From a customer’s point of view, the backups just get done.”

Previously, the company experimented with OpenInsight for Web (O4W), a user friendly web development environment that allowed the company to run its platform on a handheld device. Though it worked well, the company eventually needed a heavier mobile development environment and implemented a third-party connector, moving toward Revelation’s RESTful API tools.

Looking Ahead to the Future

The feedback from ITMS customers for over nearly 20 years has uniformly excellent, according to Bolton.

“Some may actually know that Revelation’s OpenInsight is platform the underlying our product, but many do not know, and this is in fact a benefit as the platform is transparent to the customer so they can focus on the business outcomes,” Bolton said.

As the manufacturing business changes, Bolton says Revelation continues to help his company stay ahead of the curve.

“There’s a complexity that we solve that very few other organizations can,” Bolton said. “Revelation helps us do that in agile manner.”

According to Bolton, Revelation also continues to deliver enhancements to OpenInsight in each release that keep the platform relevant and up to date.

“There are a series of features that are coming in the next release with OpenInsight 10  that we believe we will be able to use in continuing to deliver successful business outcomes to our customers,” Bolton said.

 

OpenInsight 10 Presentation Server


OI10white

OpenInsight 10 Features –
OpenInsight 10 Presentation Server

The OpenInsight Presentation Server is a core part of the OpenInsight Development suite.  It hosts the OpenEngine virtual machine and provides Basic+ programs with an object based interface to create and manipulate Windows Desktop Applications.  As well as providing the capability to create your own applications, the Presentation Server also provides the actual OpenInsight development environment itself, which comprises the IDE and its associated tools.

Download a copy of the OpenInsight 10 Presentation Server Reference Manual HERE.

PLEASE NOTE: The OpenInsight 10 Presentation Server Reference Manual is currently a work in progress and is may well change between now and the release of the OI10 final release.

Alternative Method to Maintain Indices Or Any Other Repetitive Processes


If your site is running an engine server, you can take advantage of the built-in “System Monitor” feature to automate regular processes such as index updates.  If you edit, with notepad or similar application, your engine server’s configuration file (normally eserver.cfg, located in your OpenInsight folder), you may find a line that starts:

System Monitor=

Following the equal sign, you can specify the process you want to run, along with the application, user name, and password where the process should be run (comma-delimited).  Multiple processes my be specified, separated by semi-colons.

You can find out more about this useful OpenInsight feature in the OpenInsight Knowledgebase or by simply clicking here.

OpenInsight 10 – Alpha 7


OI10whiteRevelation have made some good progress with the OpenInsight 10 Alpha and I’m currently working through my bug list and closing a nice number of reported issues from earlier alphas, something that I’ll continue with over the weekend.

In line with their open and transparent policy for OpenInsight 10, they Alpha v7 is now available for download to all Works Members.

The Alpha v7 is available as a full install. So, if you have worked with earlier alpha’s please use the AppBackup facility to backup your old alpha work and restore it into the new alpha.  This is what I do but one word of warning.  If you keep your data, images and other supporting files in a specific folder (I keep things in C:\RevSoft10.6\MDPmyApp) you’ll need to copy that folder from the earlier alpha and into the new alpha once installed.  The app restore will then use the new folder and the restore should run just fine.

This version includes many enhancements to the IDE, Form Designer, Table Builder and O4W, so it is well worth a look and to take the opportunity to report any issues that you find to Revelation and have those issue addressed before Revelation releases the beta.

OpenInsight for Web (O4W) v2.0, included in the OpenInsight 10 Alpha v7, is a rapid application development tool that lets you generate responsive forms, reports, and dashboards.  Use the powerful GUI drag-and-drop to lay out your forms and then test in both desktop and mobile browser mode. Or use the toolset’s full-function API to create the most sophisticated web pages.

Alpha v7 is set to expire on April 4, 2017.