2_6:kb2610010

KB2610010 Summary of Technical Changes in 2.6

Overview

PROJECT in a box Professional 2.6.1 is an increment of 2.5.1 to work with the new platforms: Windows 7 (32 and 64 bit) and Windows Server 2008 (R2) (64 bit only). There is little end-user functionality change, the main difference is the introduction of a plugin system for reporting on Excel spreadsheets and Microsoft Project files.

This article gives a summary of the technical changes for implementers and system administrators.

Database Schema

There is no change to the database schema in moving from 2.5 to 2.6.

Config Files - Extension Change

Config files used to be called '*.config', now they are called '*.cfg'. This is because the .NET framework now uses '*.config' as a special file if paired with a program '*.exe'

Files affected:

  • piabws\piabws.cfg
  • piabpe\bin\piabpe.cfg
  • piabpe\bin\piabdatatool.cfg
  • piabpe\bin\piabmethodman.cfg

The patch installer renames these files on the server, and the client piabpe.exe now checks for the existance of an old-named piabpe.config file the location it's looking in, and if there isn't a piabpe.cfg file there already, then it renames the .config file to .cfg.

Plugin System for Reporting

Because of the changes in the Windows platforms in going to Windows 7 and Server 2008 R2, it has been necessary to update the way the PROJECT in a box reports on Excel spreadsheets and Microsoft Project files. For instance, the traditional JET OleDb driver is not supported in 64 bit systems. PIAB now uses a plugin system to read these files using a choice of the JET driver (if on 32 bit Windows) or a third party control (currently Gembox Spreadsheet) on 32 or 64 bit systems. There is a similar plugin arrangement to read Microsoft Project .mpp files on the server as an alternative to the existing client-side COM interface.

Plugin Files

There is a new folder called 'plugins' in the root of installation folder. It contains the following files:

  • mppmpxj.dll, mppmpxj.cfg
  • exceljet.dll, exceljet.cfg
  • excelgembox.dll, excelgembox.cfg

where the '.cfg' files are config files for each plugin. These also require supporting DLLs in 'piabws\bin'

  • In support of Gembox Spreadsheet:
    • Gembox.Spreadsheet.dll
  • In support of mpxj (read .mpp files)
    • IKVM.OpenJDK.ClassLibrary.dll
    • IKVM.Runtime.dll
    • junit.dll
    • poi-3.2-FINAL-20081019.dll
    • mpxj.dll

Excel Interface

The choice of Excel interface plugin can be set in the server config file 'piabws.cfg'. The current choices are 'exceljet' or 'excelgembox'.

<excel>
  <!-- excelgembox or exceljet -->
  <plugin>excelgembox</plugin>
</excel>

Excel JET OleDb config file exceljet.cfg

The config file for the exceljet plugin allows you to specify the OleDb driver (the default below uses the driver for Office 2007 which includes .xlsx files).

<config>
  <options>
    <oledbprovider>Microsoft.ACE.OLEDB.12.0</oledbprovider>
    <oledbextendedproperties>Excel 12.0;HDR=No;IMEX=1;</oledbextendedproperties>
  </options>
</config>

Gembox config file excelgembox.cfg

Note that you can set a series of Excel date format strings that the software uses to try to identify dates in columns. These can be a bit of a problem otherwise. To find out the date formats Excel is using, switch on the <showcellformat> flag and run a spreadsheet report (or look at raw data). The format string will be printed next to the cell value.

e.g. The Excel format 'yyyy-mm-dd' is actually stored as 'yyyy\-mm\-dd'. Note the use of the escape character '\'.

<config>
  <options>	
    <exportdateformat>yyyy-MM-dd HH:mm:ss</exportdateformat>
		
	<!-- Identiyfing dates from Excel can be hit and miss. 
	     Use these cell format strings to identify a date.
	     Separate multiple format strings with the '|' character.
	     You can temporarily switch on the 'showcellformat' setting below to 
              print a project report that includes the spreadsheet cell formats.
	-->
	<inputdateformats>yyyy\-mm\-dd|dd/mm/yyyy|dddd\,\mmmm\dd\,\yyyy</inputdateformats>
	<trytoconvertdates>True</trytoconvertdates>		
	<use1904datesystem>False</use1904datesystem>
		
	<!-- Useful settings for debugging cell data conversion issues. -->
	<showcellformat>False</showcellformat>
	<showcelldatatype>False</showcelldatatype>
  </options>
</config>

Microsoft Project Interface

The Microsoft Project Interface can be selected via the PIAB client, to allow the use of the client-side COM interface using a local installed copy of Microsoft Project, or the server-side 'mppxj' plugin. The 'mpxj' interface has the advantage that it does not need a copy of Microsoft Project to be installed on the client PC. The older OleDb based mechanism is also included, however this only works for Microsoft Project 2003.

The server settings for the interface are made in the server config file 'piabws.cfg'. Currently the only plugin choice is 'mppmpxj'.

<msp>
  <mppinterfacetype>plugin</mppinterfacetype>
  <mppplugin>mppmpxj</mppplugin>
  <oledbprovider>Microsoft.Project.OLEDB.12.0</oledbprovider>
  <dateformat>yyyy-MM-dd</dateformat>
 
  <!-- These relate to the 'Plan Support Tool.xls' spreadsheet.
       These are the defaults but can be extended if required.
  -->
  <xlstool_worksheet>Export</xlstool_worksheet>
  <xlstool_cellrange>A1:G22</xlstool_cellrange>	
</msp>

Templates

Some template modifications are necessary to accomodate the change in Excel reporting interface.

The Gembox Spreadsheet component is case-sensitive when it looks for names e.g. worksheet names. Previously, that was not the case so the template named ranges (in the template.xml) file contained e.g. 'export data', whereas the Risk, Issue, Quality (etc.) logs contained 'Export Data'. In this version, the template.xml files have been updated to 'Export Data'.

Ranges Affected:

  • 'export data' → 'Export Data'
  • 'keyissues' → 'Keyissues'

The patch installer attempts to rename these ranges in all the templates found in the template folder on the server.

Server Management Tool

The Server Tool 'piabserver.exe' used to be called 'PROJECT in a box Server' but responding to user feedback this was felt to be confusing, so the caption is now 'PROJECT in a box Server Management Tool'.

Enterpise Hub

The background image for the hub home page is now in the 'piabws\hubcontent' folder with the other customisable items.

SQL 2008

This version now supports SQL 2008 and 2005 but no longer 2000. The installer attempt to detect either 2008 and 2005 Express Edition installed on the local PC. Note that SQL 2005 backup .bak files can be read into SQL 2008.

This version includes support for 'Windows Search' as well as the older 'Windows Indexing Service'. The choice between them is a server setting in 'piabws.cfg':

<search>
    <!-- "indexingservice" or "windowsearch" -->
    <interfacetype>windowsearch</interfacetype>
    <windowssearch_serviceprovider></windowssearch_serviceprovider>
    <indexingservice_serviceprovider></indexingservice_serviceprovider>
</search>

There are elements to specify the OleDb service provider, in case Microsoft change the service provider names in the future. Currently they can be left blank to use the defaults shown in the following table.

Interface OleDb Connection String
Windows Search Provider=Search.CollatorDSO;Extended Properties='Application=Windows';
Indexing Service Provider=MSIDXS.1;Integrated Security .='';

To use Windows Search, this feature needs to be enabled in Windows, and the PROJECT in a box 'doc' folder included in the index. Windows Search is the default in Windows 7, and can be enabled in Windows 2008 Server by adding and configuring the 'File Server' role.

Using Windows Indexing Service

To use Windows Indexing Service, this feature needs to be enabled in Windows, a catalog called 'piabdoc' created and the PROJECT in a box 'doc' folder added to that catalog. Windows Indexing Service is included but not enabled by default in Windows 7 and Windows 2008 Server.

Installer

The installer is now changed to these variants:

  • Server
  • Desktop
  • Client

Previously the 'Desktop' variant was known as 'Personal Version'. This has been superceded by the standalone 'Personal Edition'. However, the patch installer is still 'Personal' to fit with existing installations of the previous version.

New Windows Users

The default users necessary for various system tasks on the new Windows platforms have changed over those in XP, Server 2003 and Vista.

Task User
Connecting to SQL Server IIS APPPOOL\DefaultAppPool
Accessing files from the web application IIS_IUSRS

New LOCK2 Licence Type

The original LOCK-type licence locks to a number of features read from the server's hardware and software. This has caused problems where customers have had to relicence when updating the BIOS or when moving VMs around. The new LOCK2 licence is simplified to allow for this and help reduce the need to re-licence.

New Outlook Toolbar Installer

Previously, the PROJECT in a box Outlook Toolbar was installed by a call to 'regsvr32' in the installer. Now, there is a dedicated installer to install the outlook toolbar from the either on setup, or from within the PIAB client itself: 'Options | Email | Install Outlook Toolbar'. This allows the toolbar to be installed from e.g. the clients downloaded from the Enterprise Hub web client.

The installer is at the following location:

PROJECT in a box Professional\bin\piabpe-outlook-toolbar-setup.exe

New Client Config File Elements

New elements in the client config file 'piabpe.cfg':

<msp>
  <processmpponclient>False</processmpponclient>
  <dateformat>dd/MM/yyyy</dateformat>
  <usecominterface>False</usecominterface>
  <useoledbinterface>False</useoledbinterface>
  <useplugininterface>True</useplugininterface>
</msp>

New Server Config File Elements

New elements in the server config file 'piabws.cfg':

<excel>
  <!-- excelgembox or exceljet -->
  <plugin>excelgembox</plugin>
</excel>

<msp>
  <mppinterfacetype>plugin</mppinterfacetype>
  <mppplugin>mppmpxj</mppplugin>
  <oledbprovider>Microsoft.Project.OLEDB.12.0</oledbprovider>
  <dateformat>yyyy-MM-dd</dateformat>
 
  <!-- These relate to the 'Plan Support Tool.xls' spreadsheet.
       These are the defaults but can be extended if required.
  -->
  <xlstool_worksheet>Export</xlstool_worksheet>
  <xlstool_cellrange>A1:G22</xlstool_cellrange>	
</msp>

<search>
  <!-- "indexingservice" or "windowsearch" -->
  <interfacetype>windowsearch</interfacetype>
  <windowssearch_serviceprovider></windowssearch_serviceprovider>
  <indexingservice_serviceprovider></indexingservice_serviceprovider>
</search>
2_6/kb2610010.txt · Last modified: 2017/06/22 13:13 (external edit)

Page Tools