2040 lines
76 KiB
Plaintext
2040 lines
76 KiB
Plaintext
|
========================
|
|||
|
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.
|
|||
|
|
|||
|
===================================================
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|