Outlook made me feel 2 inches tall :(

Outlook PST Compact Now routine window.
Outlook PST Compact Now routine window.

The developers amongst you will probably laugh at my stupidity and realise how small I felt over the weekend with my Outlook system, but other users like me that are used to working with OpenInsight’s self optimising database and other simply ‘set and forget’ technologies, this might be a useful posting.

I have been experiencing a number of issues with my laptop over the last few weeks.  The fan was running a lot more than usual, Outlook, Office and a number of other applications (including IE for some reason) were constantly reporting as ‘not responding’.  Then I found that Office wanted to regularly recover and check files and then I began to receive a number of blue screens of death, system memory dumps, etc.

I considered blowing my machine away (I’ve not done this for a few years now), but I asked my support colleagues for some advice first.  Their reply was the usual – check for malware, run another AV check, remove any unwanted files, compress my outlook file, etc.

Now the last of those items got me thinking.  My Outlook .PST file was 6.4Gb and I was having trouble backing it up to removable media sources.  In addition, my Outlook calendar was no longer working.  Furthermore, I deleted over half of my email and still the .PST file remained at 6.4Gb.

I therefore ran the SCNPST application that resides in the Outlook 2007 program folder and after sometime it reported an issue which I opted to have the routine fix for me.  Checking the .PST file, I found that it was still 6.4Gb and reviewing the Outlook menus I found the ‘Data File Management’ option under the ‘File’ menu.  I have no clue why, but I decided to double click on the entry for my main .PST file and a window popped up with a Compact Now button – Oooo Interesting.

With nothing to lose I hit the button and the machine went into a 13 hour long compression.  Not something that you want to begin at 09.00 on a work day and fortunately I was playing around with this on a Saturday morning.  Anyway, 13 hours later my .PST was reduced from 6.4Gb to just 675Mb.

I rebooted the machine and launched Outlook to see if it would still run.  It did, I breathed a sigh of relief and called it a day.

I have used my machine off and on during Sunday and all of Monday in the way that I usually work.  During today I have not heard the fan kick in once, I have had not one ‘not responding message’ and whilst I have not yet run my resource heavy video programs, the machine is running very nicely indeed.

So the lesson for today, is to have your users check their Outlook .PST files on a regular basis (I’m yet to know how 2010 will behave) and compact them.  My experience that was space was being allocated for every received email and that space did not ‘appear’ to be freed up when email was deleted and the file was just needlessly getting more and more bloated.

I should point out, that further research online indicates that I was not alone in running a huge Outlook.pst file and there are plenty of references to both the SCANPST (and SCANOST) utility for fixing issues and the compact utility.  I am not sure how systems behave on Windows XP and the forthcoming Windows 2008, nor with Office 2010 and later because my experiences were on a laptop running Windows 7 Ultimate and Office 2007.  However, this posting outlines the issue and resolution that worked for me.  I am not saying that this will be true for everyone, but it is certainly something worth thinking about if you are an Outlook user with a huge Outlook.pst or Outlook.ost file or where you are having issues like mine above.

I hope that some of you find this useful.

You can also watch my YouTube video related to this posting – Click here.

A date for your diary!!

Mark your calendars! The next Revelation Software Users’ Conference will be held at the Sheraton Music City Hotel, Nashville, Tennessee, USA on April 16-19, 2013. This is your chance to connect with the heart of downtown Nashville at the Country Music Hall of Fame or experience the awe of The Grande Ole Opry. Spend a relaxing day at one of Nashville’s beautiful state parks, the Adventure Science Center, or the home of President Andrew Jackson – The Hermitage. The Nashville International Airport is also just minutes away.

As well as the wonderful sight seeing, this event will also give you a great opportunity to network with some of the leading OpenInsight developers from around the world and to get yourself on their radars.  Along with these invaluable networking opportunities, you will also hear from some of these leading lights during the highly informative and educational technical talks.  With the emphasis on education, this is one trip that you can’t afford to miss and one that you can (hopefully) put down against your 2013 training budget.

I look forward to seeing you in Nashville on the 16th April 2013.  It will be interesting to see how the Revelation team will top the ‘amazing’ 2011 conference :).

Configuring OI 9.3 to use IDX_SETS2

After the initial release of OpenInsight 9.3 it was discovered that the original IDX_SETS routine (IDX_SETS1) no longer returns the correct results when doing indexed selections of large data sets. We are therefore suggesting that all users of OpenInsight 9.3 change their system to use the newer IDX_SETS2 routine.

IDX_SETS1 is the original OpenInsight routine and has been in the product since its inception. IDX_SETS2 is a relatively recent .NET based emulation of the functionality.  With small data sets, IDX_SETS1 seems a little faster than IDX_SETS2, but we’ve found that with large data sets, IDX_SETS1 appears to get “confused” on modern versions of Windows.

You can configure which version of IDX_SETS you use by creating or editing the record CFG_IDX_SETS in the SYSENV table. To use the new IDX_SETS, make sure field 1 of this record contains the string IDX_SETS2; to use the original, make sure field 1 contains the string IDX_SETS1.

The CFG_IDX_SETS record will control which version of IDX_SETS is used by default for everyone on the current OpenInsight system.  If instead you want to specify, for a specific user and application, which version (IDX_SETS1 or IDX_SETS2), you should create or edit the record CFG_IDX_SETS*<appid>*<username> (ie, CFG_IDX_SETS*EXAMPLES*EXAMPLEUSER); if you want to specify which version to use for everyone in an application, you should create or edit the record CFG_IDX_SETS*<appid> (ie, CFG_IDX_SETS*EXAMPLES); if you want to specify which version to use for a specific user in all applications, you should create or edit the record CFG_IDX_SETS**<username> (ie, CFG_IDX_SETS**EXAMPLEUSER)

Did you know . . . (BRW)

… that the new OpenInsight Banded Report Writer (BRW) in OpenInsight 9.3 has a command line interface that you can use to launch your banded reports or perform other BRW functions?

To start up the Banded Report Designer, you can do the following:


Once you have your report(s) defined, you can generate them programmatically using the following:

CALL RTI_BRW_GENERATEREPORT(rptFile, rptName, outputName, rptType, overrideListID, rptDetails, bUseGUI)

where rptFile is the name of the report group you saved the desired report(s) into and rptName is the name of the specific report to run (or “*” to run all the reports in the group). You may also specify a semicolon-delimited list of report names if desired.

OutputName is the path and name of the file to save the output to (if producing a PDF, HTM, etc. document) – leave this blank to generate printed output.

rptType is the type of output to generate, and can be PDF, TIFF, HTML, TEXT, XLS, or XLSX (or PRINT to generate printed output, but that isn’t really needed if you leave outputName blank).

overrideListID is the ID of a saved list that contains the record keys you want this report generation to use. If there is no overrideListID specified, but there is an active select list when RTI_BRW_GENERATEREPORT is called, then the active list will be used instead.

rptDetails is only used when the rptType is PDF – if desired, you can specify in rptDetails the access permissions for the PDF, and the password(s) for PDF access.

bUseGUI is a flag that indicates whether you want report generation to occur with a GUI (set bUseGUI to “1”) or without a GUI, i.e., silently (set bUseGUI to “0”). Note that if the output is going to the printer, you can also set bUseGUI to “2” – in this case, you’ll get a full print preview window, instead of just a printer control window as you would if bUseGUI is “1”. Note that the default if bUseGUI is not specified is “0” (no GUI).

You can also call, during SET_PRINTER, the LOADREPORT call; this will “embed” generated BRW output into OIPI output (this is only available when using VSPRINTER2, aka OIPI.NET). You’ll pass in to the SET_PRINTER call the name of the report group, the name of the report to include (“*” for all in the group, or a semicolon-delimited list), the overrideListName, and a flag (0/1) to indicate whether the BRW report is appended to the current output (1) or replaces the current output (0).

Note that in both cases (LOADREPORT in OIPI.NET, or RTI_BRW_GENERATEREPORT) you can if desired pass in a full report definition (which is just an XML string) in the “report group” parameter. In this way, you can actually access the report definition and modify it, or create one entirely programmatically.

If this is something you wish to do, you can use the following to read an existing report definition:

rptdef = RTI_BRWSUPPORT("READ", reportGroupName, bLockFlag)

where reportGroupName is the name of the report group, and bLockFlag is a flag to indicate whether the record should be locked (1) or left unlocked (0).

RTI_BRWSUPPORT is a handy function with a few different actions. We’ve already discussed LAUNCH and READ; you can also call it with the following actions:

DISPLAY: pass in the report group name and specific report name (in parameters 2 and 3) and the report will be displayed via OIPI.NET;


Article first published in the Revelation Software January 2011 newsletter and on http://www.revelation.com


2012 is planned to be a big year for Revelation Software;

On the development side, we have two scheduled releases planned.  The 9.3.1 patch and upgrade release (due in the first quarter) will mostly consist of features that did not make the code-cut off date for the recent 9.3 release.  These include Banded Report Writer (BRW) enhancements, a new connector for LadyBridge Systems Limited OpenQM (a very nice MultiValue database), and some other items from the suggestion box.  Revelation also expects to release a 9.4 version of OpenInsight later in the year, with even more web and mobile enhancements.  During this time the team will also be working on the 64-bit version of OpenInsight and it is hoped that this ground breaking release will be commercially available around Q1 of 2013.

On the travel side, Revelation Software staff will be all over the world, showing OpenInsight to current Revelation customers, as well as potential new clients and developers.  The company are already scheduled to give demonstrations and presentations at the Colorado MultiValue Users Group (CMUG) in March, at International Spectrum in early April, down in Australia and New Zealand after that, as well as MultiValue groups in Texas, Georgia, Seattle, and others.  Mike was over in Europe towards the end of 2011 and I hope to welcome him back here at least once over the next 11 months for our usual RUG and road trip.

We are also starting off the 2012 with a sprint here in the UK.  From tomorrow, we will have our competitive advantage banner displaying 20,000 times randomly over the next few weeks on the Guardian’s website and this campaign will be widened based on its success.  This theme of MultiValue tools (OpenInsight specifically) helping organisations of all sizes (and individual developers) to realise their modern business requirements through their software, faster and more economically, is a message that I personally plan to hammer home throughout 2012.

With more businesses looking for software solutions that work with their businesses, that can run quickly over the web and mobile devices and that can dynamically adapt and change with the ever rapidly changing business needs, I am more certain then ever that MultiValue databases are well placed to fill that requirement.  As numerous conversations during the later part of 2011 taught me, this thought is backed by the increased use of NoSQL databases for the business applications, with RDBMS (SQL databases) being used by the BI team for data crunching.  MultiValue tools (like OpenInsight) are therefore well placed to meet the needs of the users, whilst also delivering data into the corporate BI data stores – thereby enabling highly flexible, powerful and joined up solutions.

Roll on the next 12 months and even more people finding their competitive advantage through OpenInsight !!!!

OI 9.3 Dedicated and Background Indexer Patch

Revelation have identified an issue in OpenInsight 9.3 that prevents scheduled and dedicated indexing processes from starting.  The problem is limited to these scheduled index processes:

  • Set_IDX function launches the dedicated indexing window but no indexing occurs.
  • Launching OEngine.exe with /I command line argument launches the dedicated indexing window but no indexing occurs.
  • The background indexing setting in the database manager that specifies the delay before indexing has no effect.

Routines that call Update_Index directly or run the dedicated indexing service as a Windows scheduled task are unaffected by this problem.

OpenInsight WORKS subscribers can gain access to the patch by logging into the WORKS area on www.revelation.com.