Warehouse Release 3.01.1500
10/06/2005
The features in the
3.01.1500 release
DB2/ODBC libraries are now dynamically loaded on Unix platforms
(except RS6000) to provide
potential access to DB2 and other
databases.
The syntax of the OPEN statement for a DB2 database
is:
OPEN db-tag DB2 database [USER=db-user]
[PASSWORD=db-pass]
[DB2DIR=db2-dir]
[DB2INSTANCE=db2-instance]
db-tag is the database tag
used to reference the database
in the remainder of the script.
database is the name of the DB2 data
source as it has been
set up using DB2.
db-user is the name of the user
accessing the data source.
db-pass is the password for db-user.
db2-dir is the home directory of the
DB2 instance.
If db2-dir is not specified, Warehouse uses the
DB2DIR environment variable.
db2-instance is the DB2 instance. If db2 instance is
not
specified, Warehouse uses the DB2INSTANCE
environment variable.
Example:
OPEN MY_DB2_DB
DB2 SAMPLE USER=DB2INST1 PASS=MYPWD &
DB2INSTANCE=DB2INST1 DB2DIR=/usr/lpp/db2_05_00
To access to the dynamically loaded DB2/ODBC
libraries is
controlled with three
environment variables that need to be
set prior to running
Warehouse or the Warehouse server. The
environment variables must
be set correctly for Warehouse to
access the DB2/ODBC
libraries. The variables are:
WHODBCHOME
Specifies the home directory of your DB2
installation.
WHODBCLIBPATH Specifies the
name of the directory in
which the library file(s) are located.
WHODBCLIB Specifies the name of the library
file.
Example:
export WHODBCHOME=/opt/IBM/db2/V8.1
export WHODBCLIBPATH=lib
export WHODBCLIB=libdb2.so
/usr/local/taurus/whii/warehouse
1> OPEN DB2 ...
. A
feature to allow access to the record number in an IMAGE
(TurboIMAGE or
Eloquence) has been added. If enabled, a
virtual column named $RECNUM
is appended to each IMAGE record.
In addition, the record number may be used to read a
specified
record by referring to
$RECNUM.
Record number access may be enabled for the entire
database or
for a given READ
statement. To enable record number access for
the database, use the SET
statement after the OPEN statement
as follows:
SET db-tag
To enable record number access only for a given READ
statement,
use (RECNUM) after the
dataset name, as follows:
READ tag = db-tag.dataset(RECNUM) [FOR ...]
Examples:
1. Copies ORD to a target record that
contains the record number.
OPEN MYDB IMAGE ...
SET MYDB RECNUMS
ON
OPEN TGTDB ...
DEFINE TGTORD : USING TGTDB.ORD
READ ORD =
MYDB.ORDS FOR STAT = "INACT"
SETVAR TGTORD.ORDNO = ORD.ORDNO
SETVAR TGTORD.CUSTNO = ORD.CUSTNO
SETVAR TGTORD.RECORD_NUMBER = $RECNUM
COPY TGTORD TO TGTDB.ORD
ENDREAD
2. Finds ORD from a source that
contains the record number.
OPEN MYDB IMAGE ...
OPEN SRCDB ...
READ SRCORD =
SRCDB.ORD
READ ORD = MYDB.ORDS(RECNUM) &
FOR $RECNUM = SRCORD.RECORD_NUMBER
PRINT CUSTNO, ORDAMT
ENDREAD
ENDREAD
. A problem that could cause Warehouse to
abort when writing long
strings of characters to an XML file has been fixed.
. Support for longer
file names in the XEQ and START statement has
been added. The new maximum file name length is now
259
characters.
. The name of the
database in the Warehouse statistics has been
improved. The name displayed now shows the
database tag along
with information from the
OPEN statement. This also fixes a
problem in prior releases
that combined statistics from
databases that had the same
display name. Also, the database
password is never displayed
as it sometimes was in previous
releases.
. The display of the
run time at the end of a Warehouse run
has been improved. Instead of just showing CPU
seconds,
the elapsed time and CPU
time are both displayed in
hours, minutes, seconds
format.
. A problem
displaying Warehouse messages on Linux systems has
been fixed.
. A problem with
ignoring empty fields in an XML file has been fixed.
Release 3.01.1500 is available now on all supported platforms.