2040 lines
76 KiB
Plaintext
Executable File
2040 lines
76 KiB
Plaintext
Executable File
========================
|
||
UniVerse for Windows NT
|
||
Release 9.5.1.1D
|
||
Release Notes
|
||
August 1999
|
||
========================
|
||
|
||
|
||
Copyright 1999, Ardent Software, Inc. All rights reserved.
|
||
|
||
Microsoft is a registered trademark of Microsoft Corporation.
|
||
Visual Basic and Windows NT are trademarks of Microsoft
|
||
Corporation.
|
||
|
||
UNIX is a registered trademark in the United States and other
|
||
countries, licensed exclusively through X/Open Company, Ltd.
|
||
|
||
All other company or product names mentioned are trademarks or
|
||
registered trademarks of their respective trademark holders.
|
||
|
||
These release notes contain important information about
|
||
Release 9.5.1.1 of UniVerse for Windows NT that supplements
|
||
the help files and printed documentation.
|
||
|
||
|
||
Using UniVerse Online Help
|
||
==========================
|
||
UniVerse has a complete online help system. For details,
|
||
refer to UniVerse User Reference or UniVerse System
|
||
Description.
|
||
|
||
|
||
Technical Support
|
||
=================
|
||
Ardent Technical Support Center numbers are operated between
|
||
8:00 a.m. and 8:00 p.m., Eastern Time. To reach the Center,
|
||
simply dial 1-800-729-3553. A support representative will answer
|
||
your call and you will be asked to supply your license serial
|
||
number, UniVerse release level, and a description of the problem.
|
||
If you reach the electronic mail box, please leave your name,
|
||
phone number, time of call, license serial number, UniVerse
|
||
revision level, and a brief description of the problem. A
|
||
support representative will call you back shortly.
|
||
|
||
If calling from outside the United States, please dial
|
||
(508) 366-3888 and request that your call be transferred
|
||
to Technical Support.
|
||
|
||
You can also fax your request for assistance to the
|
||
Technical Support fax number at (508) 389-8750.
|
||
|
||
|
||
=========
|
||
Contents
|
||
=========
|
||
|
||
64-Bit File System Support
|
||
Important Notes about Replication
|
||
Differences from Previous Releases
|
||
Starting Up and Shutting Down UniVerse
|
||
Transferring Accounts to Windows NT
|
||
Improving System Performance
|
||
Problems and Restrictions
|
||
Differences Between PI/open and UniVerse
|
||
GTARS File
|
||
National Language Support (NLS)
|
||
Corrections/Updates to the Documentation
|
||
Problems Fixed at This Release
|
||
UVODBC 3.7 Release Notes
|
||
|
||
|
||
===========================
|
||
64-Bit File System Support
|
||
===========================
|
||
|
||
Starting with Release 9.5.1.1C, UniVerse supports 64-bit file
|
||
systems. There is a new UniVerse configurable parameter,
|
||
64BIT_FILES, that lets you specify whether UniVerse uses 32-bit
|
||
or 64-bit file systems.
|
||
|
||
New options have been added to the following UniVerse commands:
|
||
|
||
o CREATE.FILE has two new options that let you
|
||
override the current setting of the 64BIT_FILES
|
||
parameter. The 64BIT option lets you create 64-bit
|
||
files on a UniVerse system using 32-bit file systems.
|
||
The 32BIT option lets you create 32-bit files on a
|
||
UniVerse system using 64-bit file systems.
|
||
|
||
o RESIZE has two new options that let you
|
||
override the current setting of the 64BIT_FILES
|
||
parameter. The 64BIT option lets you resize a file
|
||
to 64-bit on a UniVerse system using 32-bit
|
||
file systems. The 32BIT option lets you resize a
|
||
file to 32-bit on a UniVerse system using 64-bit
|
||
file systems.
|
||
|
||
o FORMAT.CONV has a new -o (Old Style) option that
|
||
lets you convert a 32-bit file created or resized
|
||
on a UniVerse 9.5.1C or later system to the older
|
||
32-bit format used on Releases 7.3.1 through
|
||
9.5.1B.
|
||
|
||
The InterCall ic_fileinfo function does not support 64-bit files at
|
||
Release 9.5.1C.
|
||
|
||
|
||
=================================
|
||
Important Notes about Replication
|
||
=================================
|
||
|
||
At the A-patch release we added support for Q-pointers, multiple data
|
||
files and files with explicit file paths or short file names. This
|
||
support essentially requires changes be made to the underlying
|
||
replication subsystem. If you are upgrading from UniVerse 9.4.1 or 9.5.1
|
||
and you currently use the replication feature of UniVerse, you need
|
||
to follow these steps in order to maintain the stability of your
|
||
replication configuration. In order to complete this upgrade without
|
||
disrupting your systems replication subsystem, all subscriptions,
|
||
publications and system definitions must be removed while the patch
|
||
release is installed. Once the installation is complete and UniVerse has
|
||
been restarted, you can republish and resubscribe your files.
|
||
|
||
At the C-patch release, the user interface to replication has been
|
||
rewritten. Replication now supports the publication and subscription
|
||
of file dictionaries and distributed files.
|
||
|
||
|
||
==================================
|
||
Differences from Previous Releases
|
||
==================================
|
||
|
||
At this release some functionality may behave differently
|
||
from previous releases of UniVerse for Windows NT. Read the
|
||
following sections to see how this could affect your
|
||
applications.
|
||
|
||
|
||
Changed User Names Default
|
||
__________________________
|
||
|
||
Before Release 9.3.1, UniVerse on Windows NT used short user
|
||
names that did not include the domain name. At this release,
|
||
fully-qualified user names are used in the format:
|
||
|
||
<DOMAIN.NAME>\<username>
|
||
|
||
If you want to use short user names, use the Windows NT
|
||
Registry Editor to add an entry to the registry as follows:
|
||
|
||
1. Choose
|
||
HKEY_LOCAL_MACHINE > Software > Ardent Software > UniVerse >
|
||
CurrentVersion
|
||
|
||
On Windows NT 4.0, choose Edit > New > DWORD Value.
|
||
Enter the value name UseShortUserNames. Double click
|
||
the value name and you are prompted to enter a value.
|
||
Enter 0 for long user names or any nonzero number
|
||
for short user names, then choose OK.
|
||
|
||
|
||
Short User Names and MESSAGE
|
||
____________________________
|
||
|
||
If you configure UniVerse to use short user names as
|
||
described in the previous section, you cannot use the MESSAGE
|
||
command to send messages to all users on the local domain, as
|
||
the domain name is not present in the user name.
|
||
|
||
|
||
Domain Users and SQL GRANT
|
||
__________________________
|
||
|
||
A domain user and a local user with the same user name are
|
||
treated as different users. For example SALES\alice and alice
|
||
are not recognised as the same user. This affects the SQL GRANT
|
||
statement. If your users can log in both locally and from a
|
||
domain, you must specify both the domain and the local user
|
||
name in the GRANT statement. For example:
|
||
|
||
>GRANT CONNECT TO alice, SALES\alice;
|
||
|
||
|
||
FORMAT.CONV Command
|
||
___________________
|
||
|
||
The FORMAT.CONV command is not available in this release. Use
|
||
the fnuxi command from a DOS command window.
|
||
|
||
|
||
======================================
|
||
Starting Up and Shutting Down UniVerse
|
||
======================================
|
||
|
||
You must be a system or domain administrator to start up or
|
||
shut down UniVerse.
|
||
|
||
You can start up UniVerse in one of three ways:
|
||
|
||
1. From the UniVerse Control Panel
|
||
|
||
Choose Start > Programs > Ardent UniVerse> UniVerse Control.
|
||
Click Start All Services.
|
||
|
||
2. From the Windows NT Control Panel
|
||
|
||
Double-click Services. Scroll down the list of
|
||
services until you find four entries for UniVerse:
|
||
UniVerse Resource Service, Uni RPC Service,
|
||
UniVerse Telnet Service, and UniVerse REXEC Service.
|
||
Click UniVerse Resource Service and press Start.
|
||
Repeat this for the other three services.
|
||
|
||
3. From the MS-DOS prompt
|
||
|
||
At the MS-DOS prompt type the following four commands:
|
||
|
||
net start universe
|
||
net start unirpc
|
||
net start uvtelnet
|
||
net start hsrexec
|
||
|
||
Each command reports the name of the service it is starting
|
||
and whether the startup is successful.
|
||
|
||
|
||
NOTE: The UniVerse services start automatically when the operating
|
||
system is loaded unless you unchecked the automatic startup
|
||
boxes during UniVerse installation.
|
||
|
||
You can shut down UniVerse in one of three ways:
|
||
|
||
1. From the UniVerse Control Panel
|
||
|
||
Choose Start > Programs > Ardent UniVerse > UniVerse Control.
|
||
Click Stop All Services.
|
||
|
||
2. From the Windows NT Control Panel
|
||
|
||
a. Double-click Services. Scroll down the list of
|
||
services until you find four entries for UniVerse:
|
||
UniVerse Resource Service, Uni RPC Service, UniVerse Telnet
|
||
Service, and UniVerse REXEC Service.
|
||
|
||
b. Click UniVerse Resource Service and press Stop. A window
|
||
appears informing you that in addition to the UniVerse
|
||
Resource Service the UniVerse Telnet Service will also be
|
||
stopped, and asking for confirmation to proceed. Click OK.
|
||
The UniVerse Resource and UniVerse Telnet Services are shut
|
||
down.
|
||
|
||
c. Click Uni RPC Service and press Stop. A window appears
|
||
informing you that in addition to the Uni RPC Service the
|
||
UniVerse REXEC Service will also be stopped, and asking
|
||
for confirmation to proceed. Click OK. The Uni RPC and
|
||
UniVerse REXEC Services are shut down.
|
||
|
||
3. From the MS-DOS prompt
|
||
|
||
a. Type the following command:
|
||
|
||
net stop universe
|
||
|
||
This displays a message indicating that if the UniVerse
|
||
Resource Service is stopped, it will also stop the UniVerse
|
||
Telnet Service and will ask for confirmation to proceed.
|
||
Enter Y and press RETURN. The two services are shut down
|
||
in turn.
|
||
|
||
b. Type the following command:
|
||
|
||
net stop unirpc
|
||
|
||
This displays a message indicating that if the Uni RPC
|
||
Service is stopped, it will also stop the UniVerse
|
||
REXEC Service and will ask for confirmation to proceed.
|
||
Enter Y and press RETURN. The two services are shut down
|
||
in turn.
|
||
|
||
NOTE: If users are connected to the services when the services are
|
||
shut down, the users will not lose their connections; the connections
|
||
remain active until the users terminate them. However, it will not
|
||
be possible for new users to connect to UniVerse.
|
||
|
||
To do a complete shutdown of UniVerse, in order to
|
||
restart the services, you should ensure that all connections
|
||
are terminated.
|
||
|
||
|
||
====================================
|
||
Transferring Accounts to Windows NT
|
||
====================================
|
||
|
||
If you want to transfer accounts between UniVerse systems
|
||
running UNIX and Windows NT, or between two Windows NT systems,
|
||
you can use the uvbackup and uvrestore commands. You cannot
|
||
transfer accounts to Windows NT using UniVerse Admin.
|
||
|
||
If you save an account with uvbackup and want to restore it
|
||
to a different operating system, specify relative rather than
|
||
absolute pathnames as the directory structure may be different
|
||
on the target system.
|
||
|
||
|
||
============================
|
||
Improving System Performance
|
||
============================
|
||
|
||
This section contains some ideas for improving system
|
||
performance on a Windows NT server.
|
||
|
||
|
||
Tasking
|
||
_______
|
||
|
||
You can improve response time from UniVerse by balancing the
|
||
Windows NT tasking so that foreground and background tasks
|
||
receive equal CPU time.
|
||
|
||
On Windows NT 4.0, from the Windows Control Panel, choose
|
||
System, then choose the Performance tab. Move the Application
|
||
Performance slider to None. Click OK.
|
||
|
||
|
||
Screen Savers
|
||
_____________
|
||
|
||
Use a blank screen saver on your server. Screen savers
|
||
with elaborate graphics can use huge amounts of
|
||
foreground CPU tasking. This slows down background tasks,
|
||
such as a UniVerse telnet session.
|
||
|
||
|
||
=========================
|
||
Problems and Restrictions
|
||
=========================
|
||
|
||
This section contains information about some problems and
|
||
restrictions associated with this release.
|
||
|
||
|
||
Logging Out Sleeping or Busy Processes
|
||
______________________________________
|
||
|
||
It is not possible to log out a sleeping or busy process
|
||
on Windows NT. This affects the MASTER OFF and LOGOUT -pid
|
||
commands. For example, if you have used a SLEEP statement
|
||
to defer execution of a program sequence, you cannot use
|
||
MASTER OFF to kill it, you must wait until the process is
|
||
active again.
|
||
|
||
|
||
Phantom Processes and Console Users
|
||
___________________________________
|
||
|
||
If you run a phantom process from the console window, then
|
||
quit, the window does not go away until the phantom process
|
||
completes. (This can seem like UniVerse is hanging.) To avoid
|
||
this, always launch phantoms from a telnet window.
|
||
|
||
|
||
Lowercase Device Names and Transaction Logging
|
||
______________________________________________
|
||
|
||
You cannot configure transaction logging to log to a tape
|
||
device whose name is in lowercase. This applies even if
|
||
the device name is in lowercase in the &DEVICE& file. The
|
||
device appears in the list of possible devices, but if you
|
||
select it and then redisplay the list of devices configured
|
||
for transaction logging, it is not present. To avoid this
|
||
problem, use uppercase device names.
|
||
|
||
|
||
*REMOTE.B Subroutine Calls
|
||
__________________________
|
||
|
||
The *REMOTE.B subroutine encounters problems when it is called
|
||
during a UV/Net II connection to a UniVerse system running
|
||
under Windows NT version 4.0.
|
||
|
||
The subroutine works correctly the first time it is run;
|
||
the second time it is run it fails and returns an empty
|
||
string; the third or subsequent times it works correctly.
|
||
|
||
|
||
Windows NT Shutdown and Data Integrity
|
||
______________________________________
|
||
|
||
Windows NT allows only a very short time for applications to
|
||
close during a shutdown of the system. If applications do not
|
||
respond quickly, the shutdown process closes the applications
|
||
immediately. If your UniVerse application is writing data to
|
||
disk during the shutdown you could lose data.
|
||
|
||
This can have severe consequences for the UniVerse
|
||
transaction logging service. If a shutdown request is issued
|
||
during a transaction, the transaction logging service must
|
||
flush the buffered transaction to disk. If the operating
|
||
system shuts down before the write to disk finishes, the
|
||
data integrity of the transaction is lost.
|
||
|
||
To ensure data integrity, always shut down the UniVerse
|
||
service from the Services menu before shutting down
|
||
Windows NT. If you have a transaction running, check that the
|
||
final entry in the uvlogd.info file in your transaction
|
||
log directory reads as follows: "Logging system shut down
|
||
consistently." If this message is present, it is safe to shut
|
||
down Windows NT.
|
||
|
||
|
||
COMO files and VERIFY.SQL
|
||
_________________________
|
||
|
||
If you use a COMO file to collect the output from the
|
||
VERIFY.SQL ALL command when the COMO file is closed, an
|
||
unexpected error results and UniVerse terminates.
|
||
|
||
The workaround is to create an entry in the VOC of the account
|
||
where you wish to run the verification:
|
||
|
||
0001: PA
|
||
0002: TERM ,9999
|
||
0003: VERIFY.SQL ALL
|
||
|
||
Save the entry under a well known name, for example MY.VERIFY.
|
||
Execute the following command from the MS-DOS prompt:
|
||
|
||
uvsh "MY.VERIFY" >outputfile
|
||
|
||
The output is captured in the file outputfile.
|
||
|
||
UniVerse Admin
|
||
______________
|
||
|
||
If you change a configurable parameter that affects the multiuser
|
||
environment the configuration editor incorrectly reports that the
|
||
uvconfig file is corrupt.
|
||
|
||
These parameters are GSEMNUM, FSEMNUM, PSEMNUM, FLTABSZ,
|
||
GLTABSZand RLTABSZ.
|
||
|
||
The uvconfig is not corrupt and the data was saved. You
|
||
can use the uvconfig file.
|
||
|
||
|
||
=========================================
|
||
Differences Between PI/open and UniVerse
|
||
=========================================
|
||
|
||
The following sections describe differences between PI/open
|
||
and UniVerse that are in addition to those documented in
|
||
Moving to UniVerse from PI/open. These differences may
|
||
cause problems for users moving from PI/open to UniVerse.
|
||
|
||
|
||
SELECT SAVING
|
||
--------------
|
||
If you use the SAVING keyword with SELECT you may encounter
|
||
problems if the item being saved consists of multiple fields.
|
||
For example, suppose you have a file called TEST.FILE which
|
||
contains records whose F1 field contains multiple values
|
||
(values separated by value marks). If you execute the
|
||
following sentences the number of records saved may not
|
||
be what you expect; it depends on the number and size of
|
||
the values involved:
|
||
|
||
LIST TEST.FILE SAVING EVAL "RAISE(F1)"
|
||
SAVE.LIST TEST.LIST
|
||
|
||
With a small number of values, TEST.LIST will contain an
|
||
ID for every value in TEST.FILE. However, with a large
|
||
number of values, some of the values will not be raised
|
||
correctly, leading to a corrupt save list (see also GTAR 15940).
|
||
|
||
One suggested workaround is to create a new version of
|
||
the SAVE.LIST command (e.g., SAVE.LIST2) along the following
|
||
lines:
|
||
|
||
PA
|
||
HUSH ON
|
||
SAVE.LIST TEMP.NAME
|
||
DELETE &SAVEDLISTS& <I2,LIST NAME>>
|
||
ED &SAVEDLISTS& TEMP.NAME
|
||
DATA SAVE <<I2,LIST NAME>>
|
||
DATA QUIT
|
||
HUSH OFF
|
||
|
||
|
||
Order of Processing of Prompts in Paragraphs
|
||
--------------------------------------------
|
||
If a prompt in a paragraph is preceded by the * comment
|
||
symbol, the prompt may not appear in the same place in
|
||
the output when the paragraph is executed in UniVerse.
|
||
This may cause problems for some applications. Consider
|
||
the following paragraph:
|
||
|
||
PA
|
||
DATE
|
||
* <<I2,Press RETURN to continue>>
|
||
|
||
In PI/open it gives the following output:
|
||
|
||
Tuesday, January 31, 1995 06:01 PM
|
||
Press RETURN to continue =
|
||
:
|
||
|
||
In UniVerse it gives the following output:
|
||
|
||
Press RETURN to continue=
|
||
Tuesday, January 31, 1995 06:02pm
|
||
>
|
||
|
||
However, if you remove the comment symbol in the UniVerse
|
||
example, the ordering of the output is the same as in
|
||
PI/open (see also GTAR 15942).
|
||
|
||
|
||
terminfo Definitions
|
||
----------------------
|
||
If you do not install the UniVerse terminal definitions,
|
||
you may find that some display features of your terminal are
|
||
not handled as you might expect. In this case UniVerse uses
|
||
the version of the terminal definition supplied by the
|
||
operating system, but it does not interpret all of the control
|
||
sequences correctly. For example, on a Wyse 50, the HP-UX
|
||
operating system definition for the clear function is \E*$<20>,
|
||
but the UniVerse definition is ^Z. Both are valid, but
|
||
when UniVerse attempts to use the system definition, it
|
||
does not understand the $<20> syntax and sends the sequence
|
||
as printable characters to the terminal, hence it appears in
|
||
your output (see also GTAR 15943).
|
||
|
||
|
||
DISPLAY Does Not Support the : Option
|
||
--------------------------------------
|
||
The DISPLAY command, which can be executed from the
|
||
UniVerse prompt, does not support the : option. In PI/open,
|
||
if a : is appended to the display string, a newline character
|
||
is not sent to the terminal at the end of the string. This
|
||
means that the next display position starts immediately
|
||
after the last character of the display string; in UniVerse
|
||
the next display position is in column 1 of the next line
|
||
down (see also GTAR 15946).
|
||
|
||
|
||
Pagination Does Not Support the Suppress Option
|
||
-----------------------------------------------
|
||
In PI/open, when output is being paginated on the screen,
|
||
it is possible for the user to suppress it (i.e., skip to
|
||
the end) by typing s in response to the Press <RETURN> to
|
||
continue... prompt. This feature is not available in
|
||
UniVerse (see also GTAR 15947).
|
||
|
||
|
||
Clearing Distributed Files
|
||
--------------------------
|
||
In PI/open it is possible to clear all parts of a distributed
|
||
file by using the CLEAR.FILE command on the distributed file
|
||
itself. This is not possible in UniVerse. Instead you must use
|
||
the CLEAR.FILE command on each part file (see also GTAR 15948).
|
||
|
||
|
||
BASIC DEFFUN Statement
|
||
----------------------
|
||
In UniVerse the BASIC compiler produces an error if you use
|
||
the DEFFUN statement to define a function without first
|
||
defining its arguments. The following example uses the DEFFUN
|
||
statement twice: in the first case the compiler generates an
|
||
error; in the second case, the arguments are defined before the
|
||
function, and the syntax is accepted by the compiler (see also
|
||
GTAR 15453):
|
||
|
||
DEFFUN MYFUNC1(MAT A)
|
||
DIM B(0)
|
||
B(0) = ''
|
||
DEFFUN MYFUNC2(MAT B)
|
||
END
|
||
|
||
Compilation output:
|
||
|
||
Compiling: Source = 'BP/DEFFUN.B', Object = 'BP.O/DEFFUN.B'
|
||
*
|
||
Array 'A' never dimensioned.
|
||
1 Errors detected, No Object Code Produced.
|
||
|
||
|
||
BASIC KEYIN Function
|
||
--------------------
|
||
In a PI/open INFO/BASIC program, the KEYIN function normally
|
||
returns the mapped values for system delimiters (unless you
|
||
specified the PI/open RAW.INPUT compiler option) as shown in
|
||
the following table:
|
||
|
||
Delimiter ASCII Value Mapping
|
||
---------------------------------------------
|
||
Text mark 26 251
|
||
Subvalue mark 28 252
|
||
Value mark 29 253
|
||
Field mark 30 254
|
||
Item mark 31 255
|
||
|
||
In UniVerse no mapping takes place, and the KEYIN function
|
||
returns the ASCII values shown in the middle column.
|
||
|
||
|
||
BASIC $OPTIONS INFO.CONVERT
|
||
---------------------------
|
||
The INFO.CONVERT option is not supported in this release.
|
||
|
||
|
||
BASIC INPUT @ Statement
|
||
-----------------------
|
||
In a PIOPEN flavor compilation (i.e., $OPTION PIOPEN), or in
|
||
programs that use the $OPTIONS INPUTAT statement, the screen
|
||
position you specify is that of the input prompt, rather than
|
||
the input field. That is, the input field begins one column to
|
||
the right of the column you specify. Except in PIOPEN flavor,
|
||
the INPUT @ statement does not currently provide an automatic
|
||
carriage return when the specified number of characters have
|
||
been entered into the field (see also GTAR 15767).
|
||
|
||
|
||
BASIC RETURN Statement
|
||
----------------------
|
||
The UniVerse BASIC compiler produces a warning when the
|
||
RETURN statement returns from an internal subroutine within
|
||
a function. The warning does not affect the compiled code and
|
||
may be ignored (see also GTAR 15447).
|
||
|
||
FUNCTION BETA
|
||
GOSUB INITIALIZE
|
||
*
|
||
*Main program code
|
||
*
|
||
RETURN (CODE)
|
||
INITIALIZE:
|
||
*
|
||
* Internal subroutine code
|
||
*
|
||
CODE = 0
|
||
RETURN
|
||
END
|
||
|
||
Compilation output:
|
||
|
||
Compiling: Source = 'BP/FUNCTION.B', Object = 'BP.O/FUNCTION.B'
|
||
**
|
||
0018 RETURN
|
||
^
|
||
WARNING: no RETURN value specified, null used.
|
||
Compilation Complete
|
||
|
||
|
||
BASIC Variable Names
|
||
--------------------
|
||
If you use a variable name in the format INCLUDE.text,
|
||
as shown in the following example, the compiler produces
|
||
an error (see also GTAR 15451):
|
||
|
||
LOOP
|
||
INPUT INCLUDE.VAR
|
||
WHILE INCLUDE.VAR
|
||
REPEAT
|
||
END
|
||
|
||
Compilation output:
|
||
|
||
Compiling: Source = 'BP/INCLUDE.B', Object = 'BP.O/INCLUDE.B'
|
||
0007 WHILE INCLUDE.VAR
|
||
^
|
||
No VOC entry for INCLUDEd file ".VAR".
|
||
^
|
||
End of Line unexpected, Was expecting: Array Name, CALLable
|
||
Variable Name, DIMENSIONable Array Name, Variable name, New
|
||
variable name, Expression, "CREATE", "FLUSH", "GET",
|
||
"INPUTIF", "LOCATE", "LOCATEP", "LOCK", "MATREAD", "NOBUF",
|
||
"OPEN", "OPENPATH", "PROCREAD", "READ", "READBLK", "READNEXT",
|
||
"READSEQ", "READT", "READV", "REWIND", "SEEK", "uSEEK",
|
||
"TTYCTL", "WEOF", "WRITEBLK", "WRITESEQ", "WRITET", "FIND",
|
||
"FINDSTR", "GETLIST", "READLIST", "TTYGET", "TTYSET",
|
||
"uINPUT", "TRANSACTION", "OPENCHECK", "BSCAN", "RPC_CALL",
|
||
"WRITESEQF"
|
||
2 Errors detected, No Object Code Produced.
|
||
|
||
|
||
Terminal Width
|
||
--------------
|
||
In UniVerse, the default terminal width is set to 79 columns,
|
||
and column 80 is reserved for a Return. If your program uses
|
||
a terminal width of 80 columns, your reports may be listed
|
||
vertically on UniVerse. If you try to avoid this by using
|
||
the command TERM 80 to change the default setting, the reports
|
||
are listed double spaced because both UniVerse and the
|
||
terminal issue a Return at the end of each line. Currently,
|
||
the only workaround is to reduce the terminal width to 79
|
||
columns (see also GTAR 15434).
|
||
|
||
|
||
PI/open to UniVerse Account Conversion Problem
|
||
----------------------------------------------
|
||
Record IDs in NEWACC and VOC Files
|
||
|
||
If the ISYS NEWACC file or any of your PI/open accounts'
|
||
VOC files hold record IDs that contain the "special"
|
||
UNIX shell $ or \, account conversion may fail. The solution
|
||
to this problem is to change the record IDs in PI/open
|
||
before you begin the conversion, and change them back in
|
||
UniVerse when conversion is complete (see also GTAR 15780).
|
||
|
||
|
||
ISOMODE 2
|
||
---------
|
||
If you are running with the UniVerse configurable parameter
|
||
ISOMODE set to 2 (default value is 1), several System
|
||
Administration BASIC routines will fatal due to updating
|
||
an administrative file without previously setting a lock.
|
||
The menu options include Add Accounts, Modify Accounts, Delete
|
||
Accounts, and Devices (see also GTARs 15280, 15281, 15282, and 15283).
|
||
|
||
|
||
===========
|
||
GTARS File
|
||
===========
|
||
|
||
The UV account directory has a UniVerse file called GTARS
|
||
which contains both the fixed and open bugs associated with
|
||
the current release of UniVerse. You can use all the
|
||
facilities of RetrieVe to produce reports of these GTARs.
|
||
The VOC file of the UV account contains a menu that you can
|
||
use to display the following on your terminal:
|
||
|
||
<EFBFBD> All closed GTARs incorporated in the current release
|
||
<EFBFBD> All GTARs describing unfixed problems in the current
|
||
release
|
||
<EFBFBD> All GTARs submitted under your customer number
|
||
<EFBFBD> All closed GTARs submitted under your customer number
|
||
<EFBFBD> All open GTARs submitted under your customer number
|
||
|
||
To invoke this menu, change directories to the UV account
|
||
directory and enter the UniVerse environment by using the
|
||
uv command. This will bring you into the UniVerse System
|
||
Administration menu system. Press the Esc key to exit the
|
||
menu system and return to the UniVerse command prompt. Enter
|
||
the command LIST.GTARS to display the GTAR menu. If you do not
|
||
know your customer number, please contact your technical
|
||
support provider.
|
||
|
||
|
||
================================
|
||
National Language Support (NLS)
|
||
================================
|
||
|
||
Multibyte Identifiers
|
||
------------------------------------------------------
|
||
At Releases 9.4 and 9.5, UniVerse NLS does not support the
|
||
following:
|
||
|
||
- Multibyte UniVerse account names
|
||
- Multibyte SQL identifiers (schema names,
|
||
table names, view names, etc.)
|
||
|
||
|
||
UVLANG Environment Variable
|
||
---------------------------
|
||
To set your initial UniVerse locale, use the UVLANG variable.
|
||
When you start a UniVerse session, UniVerse retrieves the
|
||
value of the UVLANG variable and checks to see of a locale
|
||
of the specified name is loaded. If it is, it becomes your
|
||
current locale.
|
||
|
||
Direct UniVerse connections (uvsh), telnet connections, and BCI
|
||
connections are all affected by the UVLANG variable.
|
||
|
||
NLS Map for Windows NT Console
|
||
------------------------------
|
||
When you install UniVerse on Windows NT, be sure to set up
|
||
the NLS map for the console correctly. The default is
|
||
probably something like PC850 or MS1252; howeverm this may
|
||
not be correct for your version of Windows NT. Choose an
|
||
appropriate map. For example, for the Korean version of
|
||
Windows NT you should use MS949.
|
||
|
||
Note: The appropriate map may not be one of the
|
||
PCxxx or MSxxxx maps.
|
||
|
||
If you cannot set the map correctly during installation,
|
||
correct it later as follows:
|
||
|
||
1. Change directory to the UV account directory,
|
||
e.g. D:\UV\UV
|
||
|
||
2. Decompile the console terminal definition:
|
||
|
||
bin\uvtidc console > tmpfile
|
||
|
||
3. Use NOTEPAD to edit the tmpfile. Change at80 and at81
|
||
to the name of the required NLS map and save the file.
|
||
|
||
4. Compile the console terminal definition:
|
||
|
||
bin\uvtic tmpfile
|
||
|
||
If the map is not set up correctly UniVerse commands that
|
||
are run stand-alone or from UniVerse client/server products,
|
||
such as UniVerse Admin, may not display messages correctly.
|
||
|
||
|
||
Multibyte NLS Maps and System Delimiters
|
||
----------------------------------------
|
||
NLS provides maps for a number of multibyte character sets such
|
||
as Japanese, Chinese, and Korean. On their own these maps do not
|
||
allow the UniVerse system delimiters to be used (which is also
|
||
true of the single-byte maps). However, unlike the single-byte
|
||
maps where it is possible to use the internal values of the
|
||
system delimiters in the external character set, this is not
|
||
possible with the multibyte maps because the system delimiters
|
||
can be misinterpreted as lead bytes of multibyte characters. For
|
||
this reason NLS provides versions of all the multibyte maps
|
||
both with and without the UniVerse system delimiters. The maps
|
||
provided are as follows:
|
||
|
||
Without System Delimiters With System Delimiters
|
||
------------------------- ----------------------
|
||
BIG5 BIG5+MARKS
|
||
GB2312 GB2312+MARKS
|
||
JIS-EUC+ JIS-EUC++MARKS
|
||
JIS-EUC JIS-EUC+MARKS
|
||
JIS-EUC2+ JIS-EUC2++MARKS
|
||
JIS-EUC2 JIS-EUC2+MARKS
|
||
KSC5601 KSC5601+MARKS
|
||
PRIME-SHIFT-JIS PRIME-SHIFT-JIS+MARKS
|
||
SHIFT-JIS SHIFT-JIS+MARKS
|
||
TAU-SHIFT-JIS TAU-SHIFT-JIS+MARKS
|
||
|
||
The UniVerse system delimiters are mapped into the following
|
||
values for each character set:
|
||
|
||
Value (in hex) System Delimiter
|
||
-------------- ----------------
|
||
1A Text mark
|
||
1C Subvalue mark
|
||
1D Value mark
|
||
1E Field mark
|
||
1F Item mark
|
||
|
||
In addition, the null value is mapped to the hexadecimal value
|
||
19.
|
||
|
||
The NLS.UPDATE.ACCOUNT Command and the UV Account
|
||
--------------------------------------------------
|
||
The NLS.UPDATE.ACCOUNT command must be run in the UV account if
|
||
you want to use non-ASCII data. This ensures that all UniVerse
|
||
system files are configured with the appropriate NLS maps.
|
||
|
||
|
||
Code Page Configuration on Multibyte Windows NT
|
||
-----------------------------------------------
|
||
On Windows NT the code page detected by UniVerse client programs
|
||
may not be the real code page in use. This information is
|
||
returned by an operating system call and is outside of the
|
||
client's control. The code page information is passed to the
|
||
server, which looks it up in the NLS.CLIENT.MAPS file, part of
|
||
the NLS database. If there is no entry in
|
||
the file, a default is selected either from the NLS.CLIENT.MAPS
|
||
file, if one exists, or from the NLSDEFSRVMAP configurable
|
||
parameter in the uvconfig file. It should be clear from this that
|
||
the server can select the wrong map for the client.
|
||
|
||
For example, suppose you are running on the Korean
|
||
version of Windows NT. This returns the code page number 1252,
|
||
though the real code page is 949. The client sends an identifier
|
||
of WIN:1252 to the server. The server tries to find a record for
|
||
WIN:1252. If it finds the entry that is shipped with UniVerse, this
|
||
sets the NLS map to MS1252, which is wrong. You can do one of
|
||
three things to resolve the problem:
|
||
|
||
- Change the WIN:1252 entry to point to the correct NLS map,
|
||
e.g
|
||
|
||
Record id: WIN:1252
|
||
0001: Korean character set
|
||
0002: KSC5601+MARKS
|
||
|
||
- Delete the WIN:1252 entry and set the WIN:DEFAULT entry to
|
||
point to the correct NLS map.
|
||
|
||
- Delete both WIN:1252 and WIN:DEFAULT entries and set the
|
||
NLSDEFSRVMAP tunable parameter to the correct NLS map.
|
||
|
||
The first of these options is preferable.
|
||
|
||
|
||
Known NLS Problems at Release 9.4
|
||
=================================
|
||
|
||
International Currency Symbol in DEFAULT Locale
|
||
-----------------------------------------------
|
||
The DEFAULT locale is built during the initial installation of
|
||
NLS. This does not build the international currency symbol
|
||
correctly. It will be displayed as USD<SP> rather than USD ,
|
||
that is, USD followed by one space character.
|
||
|
||
This can be fixed as follows:
|
||
|
||
1. Change directory to the UV account directory.
|
||
|
||
2. Enter UniVerse.
|
||
|
||
3. Execute the following command:
|
||
|
||
ED NLS.LC.MONETARY DEFAULT
|
||
|
||
4. Change field 6 to USD , that is USD followed by one space
|
||
character. Save the record.
|
||
|
||
5. Use the NLS.ADMIN tool to create a new locale where all of
|
||
the categories are set to DEFAULT. Build the locale.
|
||
|
||
6. Shut down and restart UniVerse to load the new definition
|
||
into shared memory.
|
||
|
||
|
||
CURR_SYMBOL, POS_SIGN and NEG_SIGN Must Be Unique
|
||
-------------------------------------------------
|
||
The CURR_SYMBOL, POS_SIGN and NEG_SIGN fields of a locale must all
|
||
contain unique characters. If not, it is impossible to distinguish
|
||
the sign from the currency symbol meaning that an ICONV of
|
||
currency values can fail.
|
||
|
||
This problem has been raised as GTAR 21197.
|
||
|
||
|
||
BASIC Programs and Multibyte Filenames and Record IDs
|
||
------------------------------------------------------
|
||
The verbs which allow the you to compile, catalog and examine
|
||
programs work only with ASCII filenames and record ids. That
|
||
is, you cannot create a program with a multibyte name in a
|
||
file with an ASCII name, or a program with an ASCII name in a
|
||
file with a multibyte name. The BASIC command will not compile
|
||
the program and you will not be able to catalog it. Commands
|
||
affected are:
|
||
|
||
BASIC
|
||
CATALOG
|
||
DECATALOG
|
||
DELETE.CATALOG
|
||
VCATALOG
|
||
|
||
This problem has been raised as GTAR 21509.
|
||
|
||
|
||
uvrestore and Multibyte Characters
|
||
-----------------------------------
|
||
Dynamic files are not restored properly from a full uvbackup if
|
||
the dynamic file name contains multibyte characters and the
|
||
dynamic file currently exists in the directory where the file
|
||
is to be restored. Before attempting such a restore, delete the
|
||
dynamic file from the account. The file will then be recreated
|
||
properly by the uvrestore process.
|
||
|
||
Additionally, if the NLS map on a type 1 file has been changed
|
||
since the time of the full backup, the type 1 file must be
|
||
deleted for the original NLS map to be restored properly. If
|
||
the map has not changed, the warning messages printed will not
|
||
stop the file from being restored properly.
|
||
|
||
|
||
List of Outstanding NLS GTARs at This Release
|
||
---------------------------------------------
|
||
The following is a list of NLS relate GTARS that are outstanding
|
||
at this release. Some of the problems noted above are repeated
|
||
in this list.
|
||
|
||
GTAR. Long Description...........................................
|
||
|
||
16834 When using T.READ to display the contents of a tape, if
|
||
NLS is active and the byte count of a character is not
|
||
equal to the display length then the display can become
|
||
corrupted.This will only happen with NLS active and
|
||
multi-byte data on the tape.
|
||
|
||
21007 The uvrestore fix under Gtar 20150 was implemented
|
||
incorrectly. The functions iftoef and eftoif should have
|
||
been called but instead were included verbatum inside the
|
||
uvbackup.c module. Further modifications to the iftoef
|
||
and eftoif functions will not be available to the
|
||
uvrestore process because of this. Need to change
|
||
uvrestore to call these functions.
|
||
|
||
21112 The functional spec for NLS locales says that the
|
||
MT conversion code should allow the HMS separator to be
|
||
any single non-numeric character, which may be enclosed
|
||
in quotes (single or double). As implemented today, if
|
||
NLS is off it can be any character, but cannot be
|
||
quoted. With NLS on it can be any character enclosed in
|
||
single or double quotes. No check is made to see if the
|
||
character is nonnumeric, in either case.
|
||
|
||
21153 BCI must reject connections to ODBC data sources when NLS
|
||
is ON (because BCI maps user data to UTF8 before writing
|
||
and from UTF8 after reading, so data other than 7bit
|
||
ASCII is changed)...NOTE: needs reconsideration; may be
|
||
ok.
|
||
|
||
21197 The CURR_SYMBOL, POS_SIGN and NEG_SIGN fields of a locale
|
||
must all contain unique characters. If not, it is
|
||
impossible to distinguish the sign from the currency
|
||
symbol meaning that ICONV of currency values can fail.
|
||
The solution is to modify NLS.BUILD to verify that all
|
||
the characters chosen are unique.
|
||
|
||
21269 Install (or possibly just re-install) of NLS on NT does
|
||
not set the terminal map correctly for the console. You
|
||
can specify the map you want during the install, but it
|
||
seems to be ignored.
|
||
|
||
21370 The LISTU command does not display the date correctly
|
||
when running on NT with a multibyte character set. The
|
||
code does not take NLS into account and the month
|
||
displays with unmappable characters.
|
||
|
||
21474 There are two problems with the default MT conversion
|
||
code (field 7) in the Korean locale: (1) it is defined
|
||
as MTP[...etc...], giving an hour, minutes, seconds
|
||
separator of 'P' (should be ':'); (2) the text in []
|
||
following the MT is missing a leading ' for the seconds
|
||
separator:['^xC2DC','^xBD84',^xCD08'] =>
|
||
['^xC2DC','^xBD84','^xCD08']
|
||
|
||
21485 Uvrestore will not restore a dynamic file with a
|
||
multibyte name if the file already exists on disk
|
||
and the user is attempting a full restore. Also,
|
||
the .Type1 and .uvnlsmap files associated with Type1
|
||
files are not being removed are restored properly.
|
||
|
||
21486 CREATE.FILE <multibyte name> will not work when the file
|
||
already exists on disk but does not have a corresponding
|
||
VOC record. The command fails with the error messages:
|
||
Maximum file number has been reached. ***Processing
|
||
cannot continue***
|
||
|
||
21487 Revise does not display associated multivalued fields
|
||
properly if these fields contain double width characters.
|
||
An extra blank space appears to be printed for each
|
||
double width character being displayed.
|
||
|
||
21488 mkdbfile.c and do_mkdb.c have places where internal and
|
||
external file names are not being mapped properly when
|
||
NLS is on.
|
||
|
||
21509 Verbs which provide the BASIC compilation and cataloging
|
||
environment cannot be used with multi-byte filenames or
|
||
record ids. At present only ASCII filenames and record
|
||
ids are guaranteed to work.
|
||
|
||
21510 ANALYZE.FILE does not display the Pathname of the file
|
||
correctly when the filename is multi-byte. The Filename
|
||
*is* displayed correctly, however.
|
||
|
||
21511 When building the NLS-DEFAULT locale during an initial
|
||
install of NLS you get a message warning that the
|
||
MNEMONICS map is not loaded and that the locale may not
|
||
be built correctly if it contains mnemonics. This affects
|
||
the MONETARY category of NLS-DEFAULT because the
|
||
international currency symbol is defined as USD<SP>.
|
||
This is taken as the literal currency symbol - the <SP>
|
||
should be replaced by a space character, but is not. The
|
||
fix is to change the definition to have a real space
|
||
rather than <SP> in the definition.
|
||
|
||
|
||
=============================================
|
||
Corrections and Updates to the Documentation
|
||
=============================================
|
||
|
||
The C-patch release includes a new UniVerse Online Library on
|
||
CD-ROM. This is a completely updated documentation set for
|
||
UniVerse 9.5.1D. It supersedes the previous UniVerse
|
||
Online Libraries for Release 9.5.1, Release 9.5.1A, and
|
||
Release 9.5.1C.
|
||
|
||
Use the following notes in conjunction with the UniVerse
|
||
documentation described in the Ardent Technical Publications Catalog.
|
||
The following sections describe updates to the documentation
|
||
that are applicable for Releases 9.5.1 and later.
|
||
|
||
The following technical bulletins have been corrected on the
|
||
web at http:\\www.ardentsoftware.com.
|
||
|
||
UVEXPORT: The UniVerse Export Facility, updated for
|
||
Release 7.3.3 Part No. 74-0074 Revision Date: 6/94
|
||
|
||
WordPerfect Versions 5 and 6 Part No. 74-0063
|
||
Revision Date: 6/94
|
||
|
||
|
||
===============================
|
||
Problems Fixed at This Release
|
||
===============================
|
||
|
||
|
||
Problems fixed in release 9.5.1.1D
|
||
----------------------------------
|
||
|
||
10531 A BASIC program will no longer hang when using the FINDSTR
|
||
command on a string that includes a CHAR(255).
|
||
|
||
13071 SMAT no longer takes up a universe license seat.
|
||
|
||
17755 !AMLC will now work properly with keys 4 and 5.
|
||
|
||
19623 When the uvconfig file is modified and uvregen is run, NT systems
|
||
no longer incorrectly display a message referring to DBsetup.
|
||
|
||
21895 FILEINFO, FINFO$IS.AKFILE will now return a 0 if no indexes are
|
||
found. This is now consistent with documentation.
|
||
|
||
23420 The -SUPPRESS option was added to the "MESSAGE" command to suppress
|
||
the display of the message announcement "Message from USERNAME"
|
||
when receiving a message.
|
||
|
||
23637 Implemented utility to automatically generate record ids.
|
||
TABLES now allow no PRIMARY KEY or PRIMARY KEY DEFAULT
|
||
NEXT_AVAILABLE. Files support DICT entry of NEXT_AVAILABLE.
|
||
|
||
24039 The DN date conversion code now defaults to DY when NLS is off.
|
||
|
||
24302 FILEINFO, FINFO$PATHNAME now returns the correct pathname when
|
||
when the file is opened using the VOC pointer with a relative
|
||
pathname.
|
||
|
||
24432 The "FROM" keyword is now case insensitive in the command
|
||
"DELETE from table".
|
||
|
||
24452 Cache memory is now cleared in a PICK flavor account both before
|
||
and after execution of verbs with a Z mode in field 4.
|
||
|
||
24593 Fixed query optimizer problem so that I-descriptors will now be
|
||
evaluated after simple AND nodes involving the same field.
|
||
|
||
24674 A new tunable is now available in the uvconfig file called
|
||
PIOPENDEFAULT which, when set on, will affect the default behavior
|
||
of PIOPEN flavor accounts in the following manner
|
||
$OPTIONS INFO.CONVERT will be turned on when the program is
|
||
recompiled.
|
||
$OPTIONS PIOPEN.EXECUTE will be turned on when the program is
|
||
recompiled.
|
||
|
||
24683 EVAL with a TRANS no longer causes an abnormal termination of
|
||
universe.
|
||
|
||
24687 Implement support for multiple forms within UV spooler.
|
||
|
||
24695 Fixed the compiler to store both $COPYRIGHT and $COMMENTS at the
|
||
end of the object code. VLIST will now print out $COPYRIGHT at
|
||
the top along with the other header info. If source is
|
||
available the $COMMENTS print out as part of the source code. If
|
||
source is not available, the $COMMENTS print out after the
|
||
$COPYRIGHT.
|
||
|
||
24916 When RLTABSZ < MAXRLOCK and an SQL command is being executed, if
|
||
1. the process has consumed all record lock entries in a group
|
||
lock semaphore, set where a new record lock is to be inserted
|
||
2. all the record lock entries are for the file on which the new
|
||
record lock is being obtained
|
||
3. the process holds less than MAXRLOCK record locks on the file
|
||
on which the new record lock is being obtained
|
||
|
||
then a File lock of the appropriate strength will be obtained in
|
||
lieu of the record lock. Furthermore, on each subsequent commit
|
||
of a (sub)transaction, any record locks that were rendered
|
||
redundant due to the acquisition of a File lock will be released.
|
||
|
||
24943 Within a transaction, after escalating to a File Lock because
|
||
there are more than MAXLOCK record locks, the File Lock is no
|
||
longer prematurely released by FreeStmt-CLOSE.
|
||
|
||
25004 HS.SCRUB...AUTOFIX DATA will no longer loop indefinitely.
|
||
|
||
25013 If an error occurs when listing a printer on NT while doing a
|
||
SPOOL -LIST, all other printers will now be listed properly.
|
||
|
||
25046 The SICA has been enhanced to allow more than 18 bytes for
|
||
Schema and Table name in NLS mode.
|
||
|
||
25123 Printing to the HOLD file with NLS ON will no longer generate
|
||
an available memory exceeded error after 55 jobs are spooled.
|
||
|
||
25128 UVRestore of some Dynamic files with very large records will
|
||
now restore the files correctly.
|
||
|
||
25138 Changes to spooler including (1) adding support for SETPTR
|
||
extension specifying USEROPTS, (2) sending USEROPTS , Page-width,
|
||
and Page-length to the usd driver script, and (3) allowing spooling
|
||
to a bogus print queue.
|
||
|
||
25184 A core dump will no longer occur when running a BASIC program
|
||
using the INT function with a number that is too large.
|
||
|
||
25189 SQL CONSTRAINT CHECK will now work for the upper set of 8 bit
|
||
characters (eg Japanese) in column names.
|
||
|
||
25190 Foreign key constraints will now work correctly with Japanese
|
||
tables.
|
||
|
||
25191 Extra field marks are now removed from capture files. This change
|
||
has been implemented as part of the $OPTIONS PIOPEN.EXECUTE
|
||
under gtar 25267.
|
||
|
||
25245 Correct spelling of Japanese year "Heisei" in the file NLS.LC.TIME.
|
||
|
||
25267 HS.FILEINFO will no longer abort if the dictionary contains an
|
||
uncompiled itype.
|
||
|
||
25273 Query will no longer abnormally terminate when being executed
|
||
through a PROC.
|
||
|
||
25275 Universe will no longer give improper errors when it is unable
|
||
to open files due to no file units being available.
|
||
|
||
25276 Implemented $OPTIONS PIOPEN.EXECUTE to generate a more PIOPEN
|
||
compatible version of the Basic EXECUTE command, where a new
|
||
layer is not setup which will enable select lists created in an
|
||
EXECUTE level to remain active unless they are instead returned
|
||
back to the calling level via the RTNLIST clause.
|
||
|
||
25283 Implemented BREAK COUNT command. When this command is issued,
|
||
the number of times that breaks have been turned off will be
|
||
returned.
|
||
|
||
25330 uvlictool in report_lic mode will no longer generate an unhandled
|
||
exception on NT.
|
||
|
||
25379 UvAdmin will now install properly when loaded on a system
|
||
without Visual Basic.
|
||
|
||
25396 HS.SCRUB no longer exceeds available memory if there are too
|
||
many data anomalies.
|
||
|
||
25398 CONVERT.SQL will now correctly handle leading zeros in dictionary
|
||
LOC fields.
|
||
|
||
25414 Dynamic files will now correctly handle a SPLIT.LOAD greater
|
||
than 87 percent.
|
||
|
||
25454 A record can now be deleted out of a directory when the VOC entry
|
||
is in lower case.
|
||
|
||
25455 COPY will now properly copy records in type 1 and type 19 files.
|
||
|
||
25459 CREATE.FILE (in PICK flavor) will now create a file using the
|
||
specified modulo when the resulting file size is greater than
|
||
0x7fffffff hex.
|
||
|
||
25475 HS.FILENFO will now provide better reporting when creating the
|
||
file information cache.
|
||
|
||
25479 New style 32bit files will no longer produce BLINK error
|
||
messages when the file is actually intact.
|
||
|
||
25494 UvAdmin will now work properly when using short names with the
|
||
UV account or UV directory option in UvAdmin.
|
||
|
||
25503 UVObjects will now detect a network failure on a read or write.
|
||
|
||
25522 See Gtar 25494.
|
||
|
||
25524 UVNET will now work successfully between NT and unix at the
|
||
9.5.1.1D release.
|
||
|
||
25537 RESIZE no longer corrupts a file that has records sizes over 512
|
||
bytes.
|
||
|
||
25549 The domain name in UV_USERS on NT systems can now be changed by
|
||
using the command "CREATE.DOMAIN OLD-domain NEW-domain user".
|
||
|
||
25556 UVNET will no longer core dump when trying to open a remote file
|
||
that does not exist.
|
||
|
||
25557 Universe cleanup could remove memory segments with an ID of 0
|
||
under some circumstances. Users attempting to enter universe
|
||
would receive an initialization error 2 2. This has been
|
||
corrected.
|
||
|
||
25597 HS.SCRUB now detects an uncompiled itype amd restarts itself only
|
||
once.
|
||
|
||
25621 UVnet will now connect properly between the "D" release and
|
||
releases prior to 9.5.1.1C.
|
||
|
||
25681 Update HEADING command documentation
|
||
|
||
|
||
Problems fixed in release 9.5.1.1C1
|
||
-----------------------------------
|
||
|
||
GTAR Short Description
|
||
---- -----------------
|
||
|
||
24374 Fix LSEEK support for 64 bit files.
|
||
|
||
24414 Memory will now be properly allocated for SDML queries.
|
||
|
||
24993 Fix problems in filetool for 64 bit files.
|
||
|
||
25141 UNLOCK ALL will now properly release locks. Latches will now
|
||
be release properly on Alternate Keys.
|
||
|
||
25242 NFS file stat calls will now work properly with 64-bit files.
|
||
|
||
25273 Query will no longer abnormally terminate when executing a
|
||
query via a PROC.
|
||
|
||
25295 SISO maps will now work properly on UNIX systems.
|
||
|
||
25364 Filepeek will now work properly with files larger than 2 gigabytes.
|
||
|
||
25426 Fix dereferencing of variable in transaction logging.
|
||
|
||
25457 Fix possible hangs in UCI.
|
||
|
||
|
||
Problems fixed in release 9.5.1.1C
|
||
----------------------------------
|
||
|
||
GTAR Short Description
|
||
---- -----------------
|
||
|
||
22647 Implement 64-bit file support in UniVerse.
|
||
|
||
23221 DROP TABLE will now handle removing all tables with
|
||
multibyte names.
|
||
|
||
23406 Fix problem with machine name matching in Replication Access List.
|
||
|
||
23624 UV/ODBC does not require the server's host file (on AIX) to
|
||
contain an entry for every client if the rexecd process is started
|
||
with the "-c" parameter. In the /etc/inetd.conf file on the AIX
|
||
server, the "-c" parameter should be added to the "rexecd" command.
|
||
Then, at unix level use the command "refresh -s inetd" so the new
|
||
option will take effect.
|
||
|
||
23626 Allow publication and subscription of multiple files in replication.
|
||
|
||
23641 It is now possible to replicate dictionaries along with data files.
|
||
|
||
23663 Warn users that files with old style headers will not work with
|
||
replication.
|
||
|
||
23762 Duplicate print ids will no longer exist on spooler startup.
|
||
|
||
23928 SET.SQL REPORTING will now report the current VOC.CACHE setting.
|
||
|
||
23932 USING clause for SQL joined tables will now work correctly.
|
||
|
||
24058 The uv.rc will now log out the creator of shared memory segments.
|
||
|
||
24069 All SQL keywords in CREATE TABLE will now be case insensitive.
|
||
|
||
24140 Improve performance of replication.
|
||
|
||
24137 Disable CNAME command on files marked for replication.
|
||
|
||
24138 Add a new interface for Replication in UVAdmin.
|
||
|
||
24139 Increase user debugging support for replication.
|
||
|
||
24144 BASIC non-transactional Write will release any record lock
|
||
on the item after the trigger/cascade have completed.
|
||
|
||
24411 UCI will now support SQLParamOptions.
|
||
|
||
24504 The return value from the UCI/BCI command SQLRowCount will no
|
||
longer have its return value truncated to 16 bits.
|
||
|
||
24564 Performance enhancement for UCI/BCI in INSERT/UPDATE/DELETE.
|
||
|
||
24635 Accessing accounts via the UV.ACCOUNT file will now
|
||
work properly for accounts containing multibyte characters.
|
||
|
||
24637 Fix VOC entry for udtconv on NT.
|
||
|
||
24638 RESIZE no longer fails when dealing with oversized records.
|
||
|
||
24673 BCI connected to an ODBC database will now return the correct
|
||
result for SQL.COLUMN.MONEY.
|
||
|
||
24682 The file tool and uvfixfile will now detect invalid record
|
||
padding values.
|
||
|
||
24693 OPENSEQ and CREATE with multibyte files containing "\"
|
||
as a trail byte character will now function properly.
|
||
|
||
24705 It is now possible to delete and then recreate multi-column
|
||
UNIQUE indexes in a table that is not empty.
|
||
|
||
24706 BUILD.INDEX will now work correctly on an SQL table where
|
||
the index has a multi-column UNIQUE constraint.
|
||
|
||
24749 Memory will no longer be freed incorrectly when an NLS
|
||
mapping error occurs.
|
||
|
||
24767 A backup of all UniVerse accounts on NT run through UVAdmin will
|
||
now work with a long list of pathnames. This is a change to the
|
||
UVAdmin client at this release and requires the version of UVAdmin
|
||
shipped with this and later releases.
|
||
|
||
24768 Fixed uvbackup to properly wait between I/O operations.
|
||
|
||
24770 Pathnames will now be stored correctly in SQL control
|
||
files when NLS is enabled.
|
||
|
||
24799 The EMPTY.NULL option will now allow empty numeric fields with
|
||
INSERT ... SELECT.
|
||
|
||
24800 SQL SELECT statement with IN keywords will no longer abort.
|
||
|
||
24862 Calls to OCONV for time conversions will no longer dump core
|
||
when a bad specification string is passed.
|
||
|
||
24880 Core dumps will no longer occur while adding or deleting a right
|
||
justified null index.
|
||
|
||
24893 Record locks will no longer be left in certain cases on type 25
|
||
files.
|
||
|
||
24920 The install script now correctly calls /usr/sbin/slibclean for the
|
||
IBM.
|
||
|
||
24925 FORMAT.CONV will no longer dump core when processing files with
|
||
new style padding.
|
||
|
||
24938 A uvnet process with a shared memory id of 0 will no longer
|
||
terminate during initialization.
|
||
|
||
24940 The uv.rc script will now log out users regardless of the
|
||
length of their PID.
|
||
|
||
24956 RD Group locks will now be released properly on type 25 files.
|
||
|
||
24958 Update HS.ADMIN interface to support UniOLEDB as well as UV/ODBC.
|
||
|
||
24993 Update UniVerse File Tool to support 64-bit files.
|
||
|
||
24998 DROP INDEX will no longer take an unhandled exception on NT
|
||
due to memory problems.
|
||
|
||
25063 Uninitialized portions of NLS maps will no longer cause checksum
|
||
problems.
|
||
|
||
25082 Raid test 3620 in the QA suite no longer coredumps on the IBM.
|
||
|
||
25103 Unable to get shared memory segment messages will no longer appear
|
||
when upgrading to release 9.5 from a previous release.
|
||
|
||
|
||
Problems fixed in release 9.5.1.1B
|
||
----------------------------------
|
||
|
||
GTAR Short Description
|
||
---- -----------------
|
||
|
||
22879 The READU statement without a LOCKED clause will
|
||
now wait on a lock if the row in the lock table is
|
||
full until it can be obtained or until the timeout is
|
||
reached. Note that the ELSE clause will still be taken
|
||
if the lock cannot be obtained after the timeout period
|
||
(default is one hour).
|
||
|
||
23019 UVObjects - Problems with string arguments with a char(0)
|
||
in them. This has been found to be a problem with
|
||
native Visual Basic.
|
||
|
||
23221 DROP TABLE will now remove tables from DISK when NLS is enabled
|
||
and the table name contains multibyte characters.
|
||
|
||
23740 UVobjects will now properly release memory associated with
|
||
file objects.
|
||
|
||
23842 Record locks will be released correctly when the lock
|
||
table has been filled.
|
||
|
||
24234 Extend SET.SQL TRACE to put trace entries into an external
|
||
file.
|
||
|
||
24251 Added support for multiple database specification in the
|
||
uvrpc services file.
|
||
|
||
24266 Uvrestore will now work properly on NT systems
|
||
|
||
24278 Extend SET.SQL TRACE facility to the UCI/BCI Server.
|
||
|
||
24308 The remote UCI/BCI server now returns only the used size
|
||
buffer with each LS_SQFetch request, not the MAXBUFFSIZE size.
|
||
This is a performance improvement, especially for slow modems.
|
||
|
||
24336 Remove an 'extranious' NLS on induced data mapping from
|
||
BCI/UCI Server. Doing it twice resulted in bad data.
|
||
|
||
24341 A UCI/BCI client could not do row fetching from a second
|
||
server which used a larger MAXBUFFSIZE fetch buffer.
|
||
|
||
24352 NLSSTRmap() will now correctly map strings containing only
|
||
SISO characters.
|
||
|
||
24353 UVread will no longer take an access violation in certain
|
||
circumstances when NLS is off.
|
||
|
||
24378 Test TL.5B1.1 in the akstress testbed will no longer coredump.
|
||
|
||
24401 NLS will now generate one unmappable character (instead of two)
|
||
when a valid lead byte is followed by an invalid trail byte.
|
||
|
||
24402 NLS will no longer generate shift characters in internal
|
||
data when unmappable characters are input.
|
||
|
||
24404 Corrected tamdem command in Feed mode on HP systems
|
||
|
||
24405 The BCI/UCI does not ship a LS_SQDefine request to the Server
|
||
for each subsequent SQLBindParameter call if the SqlType field
|
||
did not change. Performance improvement.
|
||
|
||
24413 Fixed several core dump problems when NLS is on
|
||
(opening remote partfiles of a distributed file, invoking
|
||
UVFIXFILE with -LOG or -OUTPUT option and executing
|
||
SORT from a BCI client program).
|
||
|
||
24426 BUILD.INDEX on AIX and NT no longer fail with fault type 11.
|
||
|
||
24432 Release 9.5.1 supports mixed case keywords in SQL's DML. The
|
||
FROM keyword was missed. This GTAR now allws 'from' to be
|
||
mixed case.
|
||
|
||
24449 Update JPN- shift-in, shift-out maps.
|
||
|
||
24454 SET.FILE.MAP will now work for SISO maps with myltibyte shift
|
||
characters.
|
||
|
||
24467 Provide an alternate shift-JIS map and associated collation
|
||
sequence.
|
||
|
||
24484 A numeric column's value was not being compared correctly
|
||
when it was in a multi-column index. This caused the
|
||
optimizer to produce incorrect results when it tried to use
|
||
the index to get row sets that met the WHERE clause criteria
|
||
(column contained unnormalized data, like 075).
|
||
|
||
24486 ALTER TABLE will now successfully add a column to a table
|
||
containing multi-column UNIQUE constraints.
|
||
|
||
24500 Add the NLS map MS1252+MARKS.
|
||
|
||
24501 Enhanced UCI to support Unidata DBMSType.
|
||
|
||
24502 Added two new functions: SQLUseCfgFile and SQLDataSource.
|
||
|
||
24506 Uvbackup will no longer leave groups locked after -R option
|
||
is used.
|
||
|
||
24512 LIST will no longer display garbage when the field of a
|
||
large record in a dynamic file is empty.
|
||
|
||
24530 Japanese Shift maps will now consistantly ignore spurious
|
||
shift sequences.
|
||
|
||
24533 The SQL GROUP BY function will now work properly with NLS
|
||
locales enabled when grouping by more than one column.
|
||
|
||
24536 When NLS is enabled, SEQPath() will now return a proper error
|
||
when the file name does not map into the OS character set.
|
||
|
||
24540 SEQPath() will now decompose a UTF pathname properly.
|
||
|
||
24552 In Sql, deleteing more then 'about' 2000 rows caused any
|
||
INDEX not to be updated.
|
||
|
||
24554 Enhanced BCI to support new datatypes returned by SQLTables when
|
||
using SQL Server 7 ODBC driver.
|
||
|
||
24577 See gtar 24552.
|
||
|
||
24591 ICONV Date conversion codes with delimiters will now
|
||
correctly handle years less than 100 when the year is specified
|
||
in the first or second format position in the conversion code.
|
||
For example, ICONV("0001-01-01","DYMD").
|
||
|
||
24605 Enhanced UCI to support OLEDB
|
||
|
||
24608 Fix problem with broken overflow blocks.
|
||
|
||
24616 Certain SQL queries will no longer core dump when NLS is
|
||
enabled. These involved UNIONs.
|
||
|
||
24619 Dynamic files will be properly restored using uvrestore.
|
||
UVFIXFILE will no longer find problems with the
|
||
T30first flag and file load discrepancy.
|
||
|
||
24631 DROP TABLE will now longer leave some records locked on the
|
||
SQL catalog tables.
|
||
|
||
24644 It is now possible to attach to an account via the api when the
|
||
account name contains multibyte characters.
|
||
|
||
|
||
Problems fixed in release 9.5.1.1A
|
||
----------------------------------
|
||
|
||
GTAR Short Description
|
||
---- -----------------
|
||
|
||
21797 It is now possible to publish or subscribe a file where the
|
||
VOC entry for the file does not match the name of the file
|
||
located in the current directory. (This includes files with
|
||
Q pointers, long VOC entries with truncated OS filenames,
|
||
and files located in remote accounts.)
|
||
|
||
23255 If Data Replication has been setup with some published files
|
||
that have the hot backup box checked and some which are only
|
||
replicated (hot backup box not checked), then when synchronizing
|
||
on the Publisher after a failover, the SYNC command is now
|
||
successful.
|
||
|
||
23662 Replication no longer allows you to unpublish a file until all
|
||
subscriptions have been removed.
|
||
|
||
23680 The FORMAT.MAP option will now produce formatted output when
|
||
NLS is active. The FORMAT.MAP mapname will no longer be reset to NONE
|
||
after a PRINT is done. Also, if a FORMAT.MAP mapname is changed
|
||
and the new mapname length is larger than the original mapname length,
|
||
a core dump will no longer occur at a future PRINT time.
|
||
|
||
23804 When modifying SETPTR settings, an implicit PRINTER CLOSE is
|
||
now correctly done. This sends a pending print job to the
|
||
spool queue.
|
||
|
||
23830 Using READLIST with the SETTING option will now set the
|
||
variable to the correct number of records.
|
||
|
||
23937 See gtar 23421.
|
||
|
||
24036 Correct internal naming conventions for clarity.
|
||
|
||
24037 The C option for LIST now correctly generates the reference number
|
||
for the extra parameter for the LENDP, FMTDP and FOLDDP opcodes.
|
||
|
||
24057 If a file has keys greater than 64 characters in a type 25 file,
|
||
the records will now be accessed correctly.
|
||
|
||
24064 Corrected memory error when accessing an index within a view.
|
||
|
||
24073 On NT, if a view's data file is missing, DROP VIEW now clears up
|
||
the SQL catalog, removes the view's dictionary file, and deletes
|
||
the view's VOC pointer.
|
||
|
||
24116 A BCI client running remotely will no longer 'hang' on NT if it
|
||
receives a NOWAIT error return on a SQLFetch.
|
||
|
||
24131 HELP files now exist in UVADMIN.
|
||
|
||
24132 Running a UCI or BCI program with the sequence of calls similar to
|
||
SQLPrepare, SQLFreeStmt Close, SQLExecute with an ORDER BY or GROUP
|
||
BY clause will no longer cause the uvsrvd process to produce a core
|
||
dump.
|
||
|
||
24232 The UNIX and NT installer no longer write an entry for "&NEXT.AVAIL&"
|
||
to any new UDR configuration file dictionaries.
|
||
|
||
24261 Enhanced universe file tool.
|
||
|
||
24271 When viewing the list of published files on a replication server, the
|
||
details button on that dialog will now correctly use the publication
|
||
ID as the publication key.
|
||
|
||
24277 The display of LIST.READU will no longer line wrap with the Group
|
||
information.
|
||
|
||
24280 Improved existing multibyte code.
|
||
|
||
24284 Add support for shifting in and out of multiple maps within UniVerse
|
||
NLS
|
||
|
||
24285 Export unishared function from universe.dll.
|
||
|
||
24287 When opening more than 48 files, UVOBJECTS no longer fails with an
|
||
application error.
|
||
|
||
24292 Changed uvfixfile to follow latch concurrency rules for type 25 files.
|
||
|
||
24337 NLS string mapping functions will now work properly if a ShiftIn/ShiftOut
|
||
map is missing.
|
||
|
||
24342 Fixes to NLS SISO code.
|
||
|
||
24348 Fix SPOOL -LIST -PRINTER command.
|
||
|
||
24352 NLSSTRmap() will now correctly map strings containing only SISO
|
||
characters.
|
||
|
||
24353 UVread will no longer take an access violation in certain circumstances
|
||
when NLS is off.
|
||
|
||
24358 When reinstalling uniVerse release 9.5 from cdrom onto a Solaris 2.7
|
||
machine, the install no longer aborts when copying certain files into
|
||
the uvhome/INCLUDE directory.
|
||
|
||
|
||
===================================================
|
||
|
||
End of UniVerse for Windows NT Release Notes.
|
||
|
||
===================================================
|
||
|
||
|
||
|
||
================================
|
||
UniVerse ODBC Server Version 3.7
|
||
Release Notes
|
||
================================
|
||
|
||
Copyright 1998, Ardent Software, Inc.
|
||
All rights reserved.
|
||
|
||
UniVerse ODBC, UV/ODBC, UniVerse ODBC Config, UV/ODBC Config,
|
||
HyperStar, HyperStar Server, HyperStar FP Server, STAR/Config, STAR/ODBC,
|
||
UniVerse, UniVerse Call Interface, PI/open, Prime
|
||
INFORMATION, and Ardent are trademarks of Ardent Software, Inc.
|
||
|
||
Cognos and Impromptu are trademarks of Cognos Inc.
|
||
DG/UX is a registered trademark of Data General Corporation.
|
||
Hewlett-Packard and HP-UX are trademarks of Hewlett-Packard Company.
|
||
IBM and AIX are trademarks of the IBM Corporation.
|
||
Microsoft is a registered trademark and Open Database
|
||
Connectivity, Windows, Windows NT, and Windows 95 are trademarks of
|
||
Microsoft Corporation.
|
||
Powersoft and Powerbuilder are trademarks of Sybase Inc.
|
||
UNIX is a registered trademark in the United States and other countries,
|
||
licensed exclusively through X/Open Company, Ltd.
|
||
Solaris and SPARC are trademarks of Sun Microsystems, Inc.
|
||
All other company or product names mentioned are trademarks or
|
||
registered trademarks of their respective trademark holders.
|
||
|
||
|
||
=============================
|
||
Compatibility and Limitations
|
||
=============================
|
||
|
||
UniVerse ODBC Server version 3.7 is compatible with the
|
||
following UniVerse ODBC client software:
|
||
|
||
UniVerse ODBC Driver version 3.7
|
||
|
||
UniVerse ODBC Config version 3.7
|
||
|
||
* If the Encrypt Passwords option is used, the configuration file
|
||
can be used only by version 3.7 client software.
|
||
|
||
STAR/Config Version 2.1 or later
|
||
|
||
* Configuration files with encrypted passwords are not supported.
|
||
|
||
STAR/ODBC FP and STAR/ODBC FP 32 Version 3.0
|
||
|
||
* Configuration files with encrypted passwords are not supported.
|
||
* ODBC procedures are not supported.
|
||
* Data source connection options for NLS are not supported.
|
||
|
||
STAR/View, STAR/DDE, STAR/C and STAR/ODBC (non-FP) clients do not work
|
||
with any UniVerse ODBC server.
|
||
|
||
|
||
Compatibility of older UniVerse ODBC servers with UniVerse Release 9.5
|
||
----------------------------------------------------------------------
|
||
|
||
UniVerse ODBC (HyperStar) non-FP server versions 3.0 and earlier will
|
||
continue to operate after upgrading your UniVerse installation to
|
||
Release 9.5 on UNIX platforms ONLY.
|
||
|
||
UniVerse ODBC server releases for Windows NT earlier than version 3.5
|
||
will NOT operate with UniVerse Release 9.5.
|
||
|
||
|
||
===============================
|
||
Tested ODBC Client Applications
|
||
===============================
|
||
|
||
UniVerse ODBC Server version 3.7 has been tested with the
|
||
following 16-bit Windows ODBC client applications:
|
||
|
||
* Microsoft Access Version 2.0
|
||
* Microsoft Query Version 1.0
|
||
|
||
UniVerse ODBC Server version 3.7 has been tested with the
|
||
following 32-bit Windows ODBC client applications:
|
||
|
||
* Microsoft Access Versions 95 (7.0) and 97
|
||
* Microsoft Visual Basic Enterprise Edition Versions 4.0 and 5.0
|
||
* Microsoft Query Versions 2.0 and 8.0
|
||
* Powersoft Powerbuilder 5.0
|
||
* Cognos Impromptu Version 3.0
|
||
|
||
|
||
Microsoft Access
|
||
----------------
|
||
|
||
The performance of running queries in Microsoft Access can be
|
||
significantly affected if the primary key field of a UniVerse file,
|
||
table, or view is not UniVerse ODBC accessible. This would occur if
|
||
the primary key field is excluded from the @SELECT phrase in the
|
||
dictionary of a file, table, or view, or the primary key field is
|
||
excluded and ID.SUP is specified in the '@' phrase of a file
|
||
dictionary where there is no '@SELECT' phrase (note that the '@'
|
||
phrase is ignored by UniVerse for SQL tables and views). To get the
|
||
best possible performance from Microsoft Access, we strongly recommend
|
||
that the primary key field be UniVerse ODBC accessible. For more
|
||
information about UniVerse ODBC accessible fields, see chapter 4,
|
||
Accessing UniVerse Data, in "UniVerse ODBC Server Guide".
|
||
|
||
Microsoft Access has the following functional limitations imposed
|
||
by its use of the Microsoft Jet database engine:
|
||
|
||
* Only the first 255 columns of an ODBC table are accessible.
|
||
All other columns are hidden from the user.
|
||
|
||
* Access does not allow importing or linking ODBC tables with table or
|
||
column names longer than 64 characters.
|
||
|
||
Fields defined with a UniVerse SQL data type of DECIMAL or NUMERIC and
|
||
a precision greater than 15 digits are converted to Text fields by
|
||
Microsoft Access.
|
||
|
||
When inserting new rows into a table whose underlying UniVerse
|
||
representation is an association or unassociated multivalued field, be
|
||
sure to enter a value for the @ASSOC_ROW pseudo-column (with name
|
||
mapping on, this column will be called Z_ASSOC_ROW). Failure to
|
||
specify a value for @ASSOC_ROW can cause Access 97 to abort with an
|
||
"access violation" error.
|
||
|
||
When creating a query in Microsoft Access, you have the option to
|
||
specify an SQL statement as the basis of the query. Due to a bug in
|
||
Access, any SQL statement that contains the UNION keyword will fail to
|
||
execute. Before submitting the query to ODBC for execution, Access
|
||
rewrites the SQL and puts parentheses around each SELECT statement,
|
||
which is invalid ODBC SQL syntax. For example:
|
||
|
||
SELECT * FROM U_TABLE UNION SELECT * FROM U_TABLE
|
||
|
||
would be rewritten by Access as:
|
||
|
||
( SELECT * FROM U_TABLE ) UNION ( SELECT * FROM U_TABLE )
|
||
|
||
|
||
|
||
Microsoft Query (accessed via "Get External Data" from Microsoft Excel)
|
||
---------------
|
||
|
||
Attempting to connect to a UniVerse account that has a file, table, or
|
||
view whose name is greater than 65 characters will fail with a
|
||
"General ODBC Error". This is due to a bug in Microsoft Query, which
|
||
fails to allocate enough memory to accomodate ODBC table names, which
|
||
can contain up to 128 characters as defined in the ODBC 2.0
|
||
specification. Microsoft has confirmed that this is a problem with
|
||
Query, but is not planning to provide a fix in any future release.
|
||
|
||
When connecting to a UniVerse account that is not an SQL schema, only
|
||
UniVerse files referenced by that account are made available by
|
||
Microsoft Query. All UniVerse SQL tables and views are excluded from
|
||
the list of available tables, and the dropdown list of available
|
||
schemas is disabled. Microsoft has confirmed that this is a problem
|
||
with Query, but is not planning to provide a fix in any future
|
||
release.
|
||
|
||
When connecting to a UniVerse account that is an SQL schema, only
|
||
UniVerse SQL tables and views are made available by Microsoft Query.
|
||
UniVerse files are excluded from the list of available tables. Due to
|
||
a bug in Microsoft Query, any ODBC tables reported with an empty
|
||
string as the ODBC Table Qualifier are ignored. Since Universe files
|
||
are not part of a Universe SQL schema, UniVerse ODBC reports their
|
||
ODBC Table Qualifier as the empty string, in conformance with the ODBC
|
||
2.0 specification. Microsoft has confirmed that this is a problem
|
||
with Query, but is not planning to provide a fix in any future
|
||
release.
|
||
|
||
Microsoft Query Version 1.0 quotes numeric literals in the SQL
|
||
statements it generates for queries which select on numeric columns.
|
||
This causes a "Data type conflict" error to be returned when the query
|
||
is executed, as the quoted numeric literal is interpreted as a string
|
||
and cannot be used in a numeric comparison. This problem has been
|
||
fixed in Version 2.0 of Microsoft Query, which is included with
|
||
Microsoft Excel for Windows 95 Version 7.0.
|
||
|
||
Microsoft Query only provides visibility to the first 255 columns of
|
||
an ODBC table. All other columns are hidden from the user.
|
||
|
||
Microsoft Query does not allow adding tables to a query that have
|
||
column names longer than 64 characters. Attempts to do so fail with a
|
||
"Can't access table" message. However, such tables are accessible by
|
||
building a query using an SQL statement which SELECTs the table. To
|
||
execute an SQL statement, choose "Execute SQL..." from the File menu.
|
||
|
||
It is suggested that Query Designer be used with Microsoft Query 8.0
|
||
(available in Microsoft Office 97) rather than Query Wizard. If Query
|
||
Wizard is used to create queries having any selection criteria,
|
||
Microsoft Query will generate an SQL statement having invalid syntax
|
||
and the query will fail to execute. Microsoft has confirmed that this
|
||
is a problem with Query, but is not planning to provide a fix in any
|
||
future release. To use Query Designer, make sure the box labeled 'Use
|
||
the Query Wizard to create/edit queries' is unchecked when presented
|
||
with the 'Choose Data Source' dialog box.
|
||
|
||
|
||
File DSNs
|
||
---------
|
||
|
||
If you are having problems using File DSNs, you can generally circumvent
|
||
the problem by using the file DSN as a "pass-through" mechanism to an
|
||
existing User or System DSN. You do this by manually editing the file DSN
|
||
file and inserting a single line after the "[ODBC]" section header as
|
||
follows:
|
||
|
||
[ODBC]
|
||
DSN=<your User or System DSN name as defined in the registry>
|
||
|
||
No other lines should be present in the ODBC section. When your
|
||
application requires a file DSN (because it uses the FILEDSN keyword in its
|
||
SQLDriverConnect call,) the Driver Manager will find the file DSN and then
|
||
extract all needed connection information from the User or System DSN.
|
||
|
||
|
||
Visual Basic
|
||
------------
|
||
|
||
Data Access Objects have the following functional limitations imposed
|
||
by their use of the Microsoft Jet database engine:
|
||
* Only the first 255 columns of an ODBC table are accessible.
|
||
All other columns are hidden from the user.
|
||
* ODBC Tables with table names longer than 64 characters are inaccessible.
|
||
* ODBC Tables with column names longer than 64 characters are accessible
|
||
for queries, but attempts to insert, update, or delete rows from the
|
||
table will fail.
|
||
The above limitations do not exist with Remote Data Objects.
|
||
|
||
|
||
|
||
===================
|
||
General Usage Notes
|
||
===================
|
||
|
||
|
||
Connection Licenses
|
||
-------------------
|
||
|
||
Each connection from an ODBC client application to the UniVerse ODBC
|
||
requires one UniVerse ODBC server connection license and one UniVerse
|
||
user license. If your application makes multiple simultaneous
|
||
connections to UniVerse, each one uses one UniVerse ODBC server
|
||
connection license and one UniVerse license.
|
||
|
||
|
||
Fetching Data from Multiple Statement Handles
|
||
---------------------------------------------
|
||
|
||
To fetch data from multiple open statement handles using SQLFetch, the
|
||
application must be in manual-commit transaction mode. To enable
|
||
manual-commit mode, auto-commit mode must be turned off by calling the
|
||
SQLSetConnectOption ODBC function as follows:
|
||
|
||
SQLSetConnectOption(hdbc, SQL_AUTOCOMMIT, SQL_AUTOCOMMIT_OFF);
|
||
|
||
It is not possible to concurrently fetch data using SQLFetch on two or
|
||
more statement handles in auto-commit mode due to the cursor commit
|
||
behavior of the UniVerse Call Interface (UCI), which the UniVerse ODBC
|
||
server uses to access UniVerse data. UCI has a cursor commit behavior
|
||
of SQL_CB_CLOSE, which means that all allocated statement handles
|
||
(apart from the statement which caused the auto-commit) in the
|
||
'executed' state are closed and returned to the 'prepared' state.
|
||
Result sets associated with closed statement handles are no longer
|
||
available to be retrieved using SQLFetch.
|
||
|
||
To fetch rows from multiple open statement handles using SQLFetch, use
|
||
manual-commit mode. For more information on cursor commit behavior
|
||
and transaction modes in ODBC, see "Microsoft ODBC 2.0 Programmer's
|
||
Reference".
|
||
|
||
|
||
==============
|
||
Error Messages
|
||
==============
|
||
|
||
The following error messages are not documented in "UniVerse ODBC
|
||
Guide":
|
||
|
||
1. Invalid Cursor State - Cursor unprepared by an autocommit caused by a
|
||
previously executed statement.
|
||
|
||
Error ID: 8 Severity: ERROR Facility: OCLIERR
|
||
|
||
=============================
|
||
Problems Fixed in UniVerse ODBC version 3.7
|
||
=============================
|
||
|
||
The following problems have been fixed in UniVerse ODBC Server 3.7.
|
||
|
||
GTAR Description
|
||
-------------------------------------------------------------------------
|
||
20850 Error when A-correlative refers to field 0
|
||
21664 HS.ADMIN menu doesn't reprompt correctly
|
||
21789 Correlative with group extract codes are invisible
|
||
22493 Pick associations with correlative in controlling field are invisible
|
||
23117 Can't change transaction isolation level
|
||
23750 Several HS.SCRUB problems fixed
|
||
23752 SQLSpecialColumns() fails to identify some SQL_BEST_ROWIDs
|
||
|
||
==================================================
|
||
Functionality changed in UniVerse ODBC version 3.7
|
||
==================================================
|
||
|
||
The following functionality has changed in UniVerse ODBC 3.7 Server. For
|
||
details of UniVerse ODBC functionality, see the UniVerse ODBC Guide.
|
||
|
||
GTAR Description
|
||
-------------------------------------------------------------------------
|
||
23746 HS.SCRUB supports DATE, TIME, VARCHAR(n)
|
||
23748 HS.SCRUB creates @SELECT phrase in dictionary
|
||
23747 HS.SCRUB creates @EMPTY.NULL phrase in dictionary
|
||
24061 Support ODBC SQL FOR UPDATE clause
|
||
24061 Support UniVerse SQL keywords EXPLAIN and NOWAIT
|
||
24061 Support parameter markers in {native} and reparsed SQL statements
|
||
24061 Improved server debug logs
|
||
|
||
|
||
===================================================
|
||
|
||
End of UniVerse for Windows NT Release Notes.
|
||
|
||
===================================================
|
||
|
||
|
||
|
||
|