An important date for your diary.


Bob at the 2015 Conference.

Mark your calendars! On Thursday, June 7, 2018 11 am PT / 2 pm ET Revelation Software in conjunction with DBTA will be hosting a webinar on “An Introduction to the Features and Benefits of OpenInsight 10”.

Click HERE to Register for this event.

In April, 2018, Revelation Software proudly announced the official release of OpenInsight Development Suite (OI) 10.0. OI 10 has been re-engineered for 64-bit in this new release. We have rewritten nearly every bit of code in the product, from the interface with the user, to the reporting tools, and the speed of the indexing routines. OI 10 provides the following new and/or improved components:

  • New IDE – OpenInsight 10 includes a brand new IDE, visually similar to modern application development tools, yet still designed for the MultiValue developer. Each of the product’s designers, for forms, tables, reports and all others are now contained into a single, cohesive workspace.
  • Arev64 – The next generation of our Advanced Revelation emulator, utilizing the full power and capabilities of modern 64-bit architectures.
  • User and Data Security – With increased concerns about security and privacy, including upcoming GDPR requirements, a number of enhancements and changes have been made to strengthen data security.
  • Management Console – The OpenInsight Management Console is a browser-based database management tool for system administrators.
  • Git Integration – OpenInsight’s repository based environment is integrated to the Git source code management system.
  • Universal Driver 5.1 – 64-bit and VSS capability.

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

Advertisements

OI10 Splitter Bars – Ouch and a smile.


splitterOn the whole, my OpenInsight 10 (OI10) Beta 4 conversion has been a major success and I’m now using the application on a daily basis and working on the UI to make it cleaner using the new tools in OI10.

However, one gotcha which we should all already be aware of, is the splitter bars that were introduced in OI9.  In that version, you simply dropped the controls on the form and it did its best to resize controls (usually edit tables).  The downside for me was a flickering screen as the form constantly redrew whilst the bar was being dragged by the user.

In OI10, Carl has introduced a new ‘MOVE’ event which enables developers to very quickly and easily handle the resizing of the controls to best suit the application.  In my example, I have a form with three panels (Groupboxes) and on each panel is an editable.  The panels are then set to autosize and the following code is added to the upper and lower Splitter Bars to managed the moving of the bars as needed.  The code below is taken from the Upper Splitter bar’s MOVE event.

Declare Subroutine Set_Property

// Adjust the window's controls as the user moves the horizontal splitter bar.

   // Get the bar "thickness"
   barH = Get_Property( ctrlEntID, 'HEIGHT' )
   
   // Get the bar initial position
   barP = Get_Property( ctrlEntID, 'TOP', YCoord )
   
   // Move the bar
   Set_Property( ctrlEntID, 'TOP', YCoord )

   // How far did the bar Move 
   barM = barP - YCoord
   
   // Move the upper panel control
   valPanelUpper = @window:'.GRP_ALF30DAYSPLUS'
   Set_Property( valPanelUpper, 'BOTTOM', yCoord - 4 )

   // Move the lower panel control and reset the height
   valPanelLower = @Window: '.GRP_ALF30'
   Set_Property( valPanelLower, "TOP", yCoord  + barH + 4 )
   
   valPanelHeight = Get_Property(valPanelLower, 'HEIGHT')
   Set_Property( valPanelLower, 'HEIGHT', valPanelHeight + barM )
    
return 1

Disclaimer: The above code is written by me as a non professional developer.  Whilst it works, it is not optimised, does not include any error trapping and does not promote best practice.  The above code includes comments to explain what it does.

I was initially disappointed that I would have to write code to manage the splitter bars, but now that this is done I really like the way that I have control over the controls that move and that the form no longer flickers when the splitter bars are moved.

For more details about OI10 changes, please check out Carl’s OI10 Blog.

 

Did You Know … SYSCOPYAPPS


didyouknowoiDid you know… that you can copy entities from one application to another using SYSCOPYAPPS.

Repository entities are prefixed with an application name which makes it difficult to copy items from one application to another.  The SYSCOPYAPPS form is a handy tool to copy specific types of entities or a complete application from one application to another application.

READ ON…

Tech Tips


Did you know…

That the INET Configuration form allows you to configure defaults, handlers, and allowed routines for RUN_OECGI_REQUEST.

When using RUN_OECGI_REQUEST as the “listener” routine for handling web requests, you can configure various routines to check security, handle errors, and do any post-processing. In addition, you can specify which INET routines should be processed.

The INET Configuration form can be accessed from the Application Manager, Tools, INET Configuration.

READ ON…

Did You Know – OECGI3 Failover & Load Balancing.


Did you know……That OECGI3 supports Failover and Load Balancing modes.  These modes make OECGI3 a more robust connection object and allows for extra capacity and/or redundancy to be added to a web application.  The OECGI3 registry setting, MultipleServers, controls whether OECGI3 operates in Failover or Load Balancing mode.

MultipleServers = 0 sets Failover mode
MultipleServers = 1 sets Load Balancing mode

Multiple URL’s and Port’s are entered as comma delimited fields into the ServerURL and ServerPort registry settings.

ServerURL = 192.168.0.1,192.168.0.2
ServerPort = 8088,8089

In Failover mode, you supply OECGI3 with a list of ServerURL’s and ServerPort’s that are available.  OECGI3 attempts to connect to the first ServerURL/ServerPort in the list.  If the connection is unsuccessful then OECGI3 will continue on to the next ServerURL/ServerPort in the list until a successful connection is made.  If all connection attempts fail, then OECGI3 will return the SYSDOWNPAGE page.

In Load Balancing mode, you supply OECGI3 with a list of ServerURLs and ServerPorts that are available.  OECGI3 will randomly choose a ServerURL/ServerPort from the list available, and then attempt to connect to that server.  If the connection fails, OECGI3 will move to the next ServerURL/ServerPort in the list, looping through the list until it is back at the originally selected URL/Port combination, at which point OECGI3 will return the SYSDOWNPAGE page.

Complete details can be found in the OECGI3.EXE INSTALLATION AND CONFIGURATION QUICK START GUIDE.