>Introduction to WebOI videos


The Introduction to WebOI videos are now ready and published to You Tube. However, please note that owing to video time limitations set by You Tube, the two videos have been split into two, leaving four You Tube videos in all. I will also be making these available as two zipped downloads shortly.

In the meantime, you can find the videos at:

1) Introduction to WebOI – Part 1a
2) Introduction to WebOI – Part 1b
3) Introduction to WebOI – Part 2a
4) Introduction to WebOI – Part 2a

Part one is a PowerPoint presentation that looks at what WebOI is, who it is for and provides a brief architecture overview.

Part two takes a look at my IIS7 settings for Vista and then we run through converting an OpenInsight form for WebOI and to run with a commuter module.

>WebOI under Vista and IIS7 Quick Start Guide


As many of you will know, throughout the 9.0 beta program I have been working on a Vista machine. Following the commercial release I have continued and more recently worked through configuring IIS7 under Vista for WebOI. Whilst I would advise you to take professional advice on configuring IIS7 in a live environment, I have written up my experiences in getting WebOI running under IIS7 on my standalone Vista machine.

You can download the WebOI under Vista and IIS7 White Paper from the UK Revelation web site.

>Shaded Table Rows in OIPI (now) and OIPI.NET for 9.0.1


Most of us print reports onto plain white paper these days, rather than the old report paper with pre-printed alternating white green rows/lines. For this reason, shading table rows in reports makes them easier to read, especially when printed landscape or on oversized paper.

This can be easily achieved in OIPI through a few lines of code added to the report’s stored procedure. The code is used to print each row of the table separately and to toggle the background shades between each row. For example:

Isappend = 0
Shading = 1
For each.row = 1 To num.rows
If shading = 1 Then
shading = 0
this.shade = rgb(220,220,220)
End Else
shading = 1
this.shade = rgb(0,0,0)
thisrow = table2
If thisrow = “” Then thisrow = ” “
x = Set_Printer(‘ADDTABLE’, ‘<840':@vm:'<960':@vm:'1200′:@VM:’>1200′:@VM:’>1440′:@VM:’>1440′:@FM, TABLE1, thisrow, ”, this.shade, isappend, TB_BOX_COLUMNS)
isappend = 1
Next each.row

As mentioned on the blog last week, not all of the old OIPI functionality works in OIPI.NET and this is another example. However, good to Revelation’s commitment to fix any issues that can be addressed internally, Bryan has already begun working on this requirement after it was raised with me by one of our clients, in fact I had an example within ‘four hours’ of suggesting this for a future release – now that’s service!!

For version 9.0.1, OIPI.NET has been modified so that it will work like OIPI in the example above. – that fixes the incompatibility issue between OIPI and OIPI.NET for those of you using the above example in your existing OIPI reports.

In addition, Bryan has made it even easier in OIPI.NET and added the ability to add multiple row colours. In an example that he sent to me the report has rows that alternate white-grey-red-white-grey-red, etc. This is achieved by specifying multiple shades in the background shade parameter (@VM-delimited), and OIPI.NET will alternate between the shades. For example:

ourshading = rgb(220,220,220):@VM:rgb(250,0,0):@VM:0
x = Set_Printer(‘ADDTABLE’, ‘<840':@vm:'<960':@vm:'1200′:@VM:’>1200′:@VM:’>1440′:@VM:’>1440′:@FM, TABLE1, TABLE2, ”, ourshading,”, TB_BOX_COLUMNS)
x = Set_Printer(‘ADDTABLE’, ‘<840':@vm:'<960':@vm:'1200′:@VM:’>1200′:@VM:’>1440′:@VM:’>1440′:@FM, TABLE1, TABLE2, ”, ourshading,’1′, TB_BOX_COLUMNS)

Please note that in this example 3 colours are defined, being grey, red, and nothing. The example also shows how the use of multiple addtables (with the ‘append’ parameter set on the 2nd one) properly keeps track of the alternating rows.

>OpenInsight 8.0.8 released

>The OpenInsight 8.0.8 upgrade is now available for download from The Works Download section on www.revelation.com. The upgrade can only be applied to OpenInsight versions 8.0.3 through 8.0.7.

New to OpenInsight 8.0.8 are enhancements to Arev32 and a fix to an error with LOSTFOCUS when FOCUS was lost to a non-OpenInsight window. The FOCUSID was unassigned. The FOCUSID is now set to NULL.

>A date for your diary.

>Guys – Please keep Monday the 23rd and Tuesday 24th of March free. Mike Ruane is planning on coming over for a whistle stop visit and we will be hosting an afternoon session in London during which we will be reviewing some of the new feature delivered in version, some insights into 9.0.1 and also ways that you can get more productivity from the recent releases.

In addition, this event will provide you with the perfect opportunity to put your future development requests to Mike in person.

We will be confirming a venue and which of the two dates sometime during next week and I will post more details as they are available. In the meantime, please drop an email to mp@revsoft.co.uk to reserve your place and give me an idea of the numbers that we need to accommodate.

Many thanks.

>Managing how your OIPI reports are run in version 9.0


Those of us upgrading older OI applications to version 9.0 will inevitably want to have some reports printed using the old OIPI print engine and others using the new OIPI.NET engine, especially where an old OIPI report is not fully compatible with OIPI.NET.

The OI help files explain how the default print engine can be defined in the CFG_OIPI record to run either the old OIPI engine or the new OIPI.NET engine released in version 9.0 – more below.

However, what happens if you want to have an old report run using OIPI and a new one to run using OIPI.NET? In addition, what if you want one user or one application to exclusively use one of the other? All of this is configurable within OpenInsight:

  • Default Behaviour
    The CFG_OIPI record controls the default behaviour for the entire system. Setting this record to VSPRINTER will run all OIPI reports with the old OIPI print engine as a default. Set the record to VSPRINTER2, and OpenInsight will default to use OIPI.NET.
  • Setting the default print engine by application
    You can configure the system to use one of the two print engines across a specific application by creating a CFG_OIPI* record in SYSENV. For example, CFG_OIPI*SYSPROG with a value of VSPRINTER2, will set all OIPI reports printed from the SYSPROG application to run using OIPI.NET. This setting will override any system wide default setting in CFG_OIPI.
  • Setting the default print engine by user
    A print engine to be used for a specific user can easily be configured in a similar way. In this instance, a CFG_OIPI** record will need to be created. For example, if there is a CFG_OIPI*SYSPROG*MARTYN record defined with a value of VSPRINTER, all reports that user MARTYN prints from the SYSPROG application will be printed using the old OIPI print engine. Again, the system wide default in CFG_OIPI will be overridden by this user-specific record.
  • Setting the print engine for a specific OIPI report
    Revelation has also catered for those of you with legacy OIPI reports that are not compatible with OIPI.NET and who also want to use OIPI.NET for printing to html or who want to use the many new features in OIPI.NET. In this situation you simply need to call SET_PRINTER2() and GET_PRINTER2() in your report’s Stored Procedure to use the OIPI.NET print engine or SET_PRINTER1() and GET_PRINTER1() to use the old OIPI engine. Once again, this method overrides the default setting in the CFG_OIPI record, leaving you the best of both worlds.

For most people upgrading older applications to version 9.0, the obvious choice is to make sure that the default engine is set to VSPRINTER in the CFG_OIPI record and then simply create your new OIPI.NET driven reports using VSPRINTER2 instead, or one of the app/user specific options. This removes the need to modify your hundreds of old tried and tested reports when upgrading to version 9.0.

>Vista running in compatibility mode.

>I’d planned not to post this article as I thought it was just me being stupid again. However, a recent conversation with a non-Revelation developer proved that Vista running all sorts of programs in compatibility mode can have consequences where the software is behaving in a certain way for the installed operating system. This posting is therefore more of a heads up than anything.

During the beta test program for OI 9.0 I let my license run towards its expiry date and I duly began receiving the notice that the period was about to expire. I clicked the OK button and continued to use the beta software without any problems. However, when I let the beta test run passed the expiry date I began to have problems on my Vista machine, although the same copy running under Windows 2003 Server behaved as expected.

Following a number of tests, my colleague in the US support team uncovered the problem. My machine, although running Vista, was reporting to OI that it was running XP. This lead him to research the issue further and he found that running in “Compatibility Mode” could cause the operating system to be reported as XP, not Vista.

Changing the shortcut properties to not run in compatibility mode resolved the issue and the license warning screen operated as designed – something else to watch out for when installing your OpenInsight system (and other applications) on Vista machines.