Warehouse Release 3.00.4020

10/07/2004

 
 
The enhancement in the 3.00.4020 release are:

. The TOKEN function has been enhanced so that all parameters

  may be variables.  In prior releases the delimiters parameter

  was required to be constant string.

. User defined functions have been enhanced to be available in

  the FOR condition of a READ statement when the READ statement

  accesses a remote database.  In prior releases the use of a

  user defined function in the FOR condition of a READ statement

  accessing a remote database would generate an error in most

  situations.  Enhancements have been made so that many more

  user defined functions will work in this context, however errors

  are still possible depending on what the user defined function

  does.

 

  For example, in previous releases the following script would

  cause an error when the READ statement was compiled, but now

  works regardless of whether the database being read is a local

  or remote database.

    OPEN SRC REMOTE ...

    FUNCTION GOODDATE(DATBUF : CHAR(8)) : BOOLEAN

      IF DATBUF = "" OR ISDATE(DATBUF, "YYYYMMDD")

        RETURN $TRUE

      ELSE

        RETURN $FALSE

      ENDIF

    ENDFUNCTION

    READ R=SRC.ORDERS FOR GOODDATE(ORDDATE)

        ...

    ENDREAD

i. XML is now available in all versions.

To access XML use the OPEN statement syntax:

    OPEN db-tag XML xml-file-name [MODE=mode] [CASEID] [NSTRING]

    xml-file-name   is the name of XML to open.

    mode            is the open mode of the file.  Same as FIXED,

                    TEXT and CSV files.

    CASEID          Indicates that the identifiers in the XML file

                    are case sensitive.  Using CASEID may require

                    you to specify table and column names in braces.

    NSTRING         Indicates that Warehouse use the NSTRING type

                    columns for accessing the XML file.  By default,

                    all columns in the XML file are of STRING type.

                    If any columns may contain wide (16-bit)

                    characters, the NSTRING parameter should be

                    specified.

    The internal XML parser built in Warehouse can parse most any XML

    file, but Warehouse is only designed to handle row and column type

    structures.  This means that only XML suitable for interpretation

    as rows and columns can be accessed with Warehouse.  If an XML

    is not suitable for Warehouse, an error is issued on the OPEN

    statement.  To see the Warehouse interpretation of an XML file,

    you the SHOW statement:

   

    SHOW db-tag { xml-table | ELEMENTS | TABLES | DTD }

   

    xml-table       Displays the layout of a "table" within the XML

                    file.

    ELEMENTS        Displays the elements (columns) within the XML

                    file.

    TABLES          Displays the "tables" within the XML file.

    DTD             Displays the XML DTD for the file.

    XML files may also be written using the CREATE and COPY statements.

    Example:

        OPEN SRC ODBC

        CREATE TGT XML CUSTFIL.XML

        READ C=SRC.CUSTOMERS

            COPY C TO TGT.CUSTOMERS

        ENDREAD

Release 3.00.4020 is available now on all supported platforms.