Migration from 4.x to 7.x

Introduction

This attached document serves as a guide for migrating existing templates in Elixir Report 4.x to Elixir Repertoire 7.x. It highlights changes made to the client API, the introduction of REST and outlines some of the steps taken to convert the templates and data sources to the latest version as well as some changes that need to be made to the data fields to preserve its original behavior.

Getting Started

For the migration it is assumed that that the user has already implemented the following:

  1. Elixir Repertoire 7.x has been installed with its respective license
  2. Java Runtime Environment (JRE) 1.5 or higher has been installed

What’s New in Elixir Repertoire 7.x

Comparing to Elixir Report 4.x, this MigrationProcedures20091112.pdf (1.9 MB) highlights the latest features available in Elixir Repertoire 7.x:

  • Introduction to REST and examples of its implementations with Version 7.x
  • Extended capabilities and API functions offered by the ERSClient
  • New output formats including our proprietary print spooler for high volume multiple print jobs
  • Extended support for data sources such as composite data sources which enable users to create personalised data views

Using Javascript as Embedded Scripting Language

Moreover, Elixir Repertoire 7.x uses Javascript as its embedded scripting language as compared to the Scheme syntax in earlier versions.
Advantages of Javascript include:

  • It is based on Java’s Object-Oriented programming structure
  • It is lightweight; variables need not be declared as Javascript will infer them

As such, existing Scheme syntax will need to be migrated to Javascript. This is achieved using the “migrate.bat” application found in the “/bin” directory of the Repertoire Designer installation.
More information plus the full process to migrate earlier templates and datasources can be found within this document: MigrationProcedures20091112.pdf (1.9 MB)

Some examples of converting Scheme Syntax to Javascript:

Scheme Syntax Javascript
Current_Mth =(x==YR) ? ((y==MTH) ?(QTY) :(0.00)):(0.00) if (x==YR && y==MTH) Current_Mth = QTY else Current_Mth = 0
Current_Mth =(x==YR) ? ((y==MTH) ?(QTY) :(0.00)):(0.00) if (x==YR && y==MTH) Current_Mth = QTY else Current_Mth = 0

Note:

1/ 4.x data-cache is not available in 7.x
2/ 4.x scheme syntax have changed to javascript (Elixir Migration tool will try to convert this to javascript but the conversion accuracy is not 100%)
3/ 4.x Cross-tabbed datasource is not available in 7.x

More information on how Elixir Repertoire 7.x can improve your operations efficiency as well as increase corporate profitability can be found in the MigrationProcedures20091112.pdf (1.9 MB)
MigrationCodeChanges_4.x_to_7.x.pdf (1.6 MB)