Readme

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 21

Welcome to SBClient Version 5.

4
May 2006
=================================

This README document is divided into the following sections:

Important Notes
Installation Information
Compatibility Information
Currently Supported Communication Protocols
Currently Supported Terminal Emulations
Database Compatibility
New Features in Version 5.4
Known Problems
Miscellaneous Information

This document is an adjunct to the existing documentation and is found in


the file README.TXT of the installation directory, which is usually
C:\Program Files\IBM\SBClient\readme.txt.

Important Notes
===============

Upgrading from Prior Versions of SBClient to SBClient 5.4


---------------------------------------------------------
In release 5.x, there were significant changes to the organization of
SBClient's internal structure.

SBClient 5.4 cannot be installed on top of any previous version of SBClient


except 5.0.x, 5.2.x, or 5.3.x. You must install SBClient 5.4 into another
folder. You can then use the File > Import Configuration facility to import
your configuration data from prior versions. If you install SBClient 5.4 on
a machine that has SBClient 5.x or higher, when you run SBClient 5.3 for the
first time, it will ask if you want to update your configurations.

A registry entry called "NoUpgrade" can be set to 1 to disable the feature


for asking users whether to update configurations the first time SBClient is
run. NoUpgrade is an entry under the following key:
LOCAL_MACHINE\SOFTWARE\IBM\SBClient
It is not there by default, but can be added as a string entry "NoUpgrade"
with a value of 1.

Note that all user configurations, toolbars, and scripts no longer reside in
the C:\SBOffice\SBClient\TU directory, but rather in a Windows directory. On
Windows 2000, Windows XP, and Windows Server 2003, the path is:

C:\Documents and Settings\user_name\Application Data\IBM\SBClient

Where username is the name of the person currently logged in.

You can still access the GUI cache files and stored queries by changing the
SBSTATEPATH and SBQUERYPATH environment variables in the sbopen.ini file.

SBClient registry entries are no longer located under the Ardent Software key,
but under IBM instead:
HKEY_LOCAL_MACHINE\SOFTWARE\IBM

Note that the emulation and communication DLL files now have the .DLL
extension. Build numbers are embedded in the file names so you can
identify DLL versions more easily.

Note on Work Accounts


---------------------
The procedure for installing work accounts has been modified in version 5.
For more information on this subject, see Chapter 3, "Creating a Client/Server
Environment," in the SBClient Getting Started manual.

To upgrade from a previous 5.x version, you need only copy the new administrator
account on top of the previous administrator account. The work accounts are
automatically upgraded when users log in for the first time. When you upgrade
the administrator account, the installation program may accept the older license.
(For example, when upgrading from version 5.3 to 5.4, the installation
program does not ask for the new 5.4 license.) It is important, however, that
you update the administrator account with the new license before any of the
work accounts are run. To update the license, run the administrator SBClient,
select the Help > Register SBClient menu option, and enter the new license
number. If you do not update the license, the work accounts will not be updated
properly.

Microsoft Windows Versions


--------------------------
SBClient 5.4 is supported on Windows 2000 Professional, Windows 2000 Server,
Windows XP Professional, and Windows Server 2003. SBClient 5.4 is also
supported on Windows 2000 Server Terminal Services and Windows Server 2003
Terminal Services. Note that SBClient 5.4 has not been certified on Windows
XP Professional x64 Edition or Windows Server 2003 x64 Edition, but
preliminary testing on these editions of the operating systems has shown
no problems.

For information on Windows 2000 Terminal Server and Citrix, see the
document "MS_Terminal_Server.doc" in the TU directory of SBClient
installation (or in SBClient's highest-level directory on the product CD).

Notes on User Types for Installing SBClient 5.4 on Windows


----------------------------------------------------------
To install SBClient on Windows 2000, Windows XP Professional, or Windows
Server 2003, the user must be either an Administrator, Power User, or User.
It is not possible for a Restricted User to install SBClient or any other
program.

If a user has trouble starting SBClient on Windows 2000, it is most likely a


permissions problem. Check to make sure the user is assigned to the User group.

Microsoft Windows 2000/XP/Server 2003 and BTrieve


-------------------------------------------------
The manual workaround involving editing of registry keys is no longer required.
However, it is included here because we have had reports that it can still be
helpful in some installations.

Windows 2000/XP/Server 2003 changes the default BTrieve permissions for


Restricted Users in the HKEY_LOCAL_MACHINE registry branch from Read/Write to
Read only. To allow Restricted Users to run SBClient, you need to expand the
registry entries for BTrieve Technologies.
Following is the general installation procedure with the additional steps
necessary to enable Restricted Users:

- Install SBClient on Windows 2000/XP/Server 2003 as previously described, as


a User or Administrator.

- After the installation, invoke 'regedt32' from Start > Run.

- Find the key HKEY_LOCAL_MACHINE\Software\BTrieve Technologies.

- Select the Security option on the menu bar, and then select the Permissions
option (on Windows XP or Windows Server 2003, right-click BTrieve Technologies
and select Permissions). A dialog box appears.

- In the dialog box, click the Advanced button.

- Select the 'Users' group (or the appropriate user group for your setup).

- IMPORTANT
In addition to the default permissions:

Query Value
Enumerate Subkeys
Notify
Read Control

add the following permissions:

Set Value
Create Subkey
Delete

Save your changes. These additional permissions are displayed in the entries
list on a separate line as Special Permissions.

- In addition, change the permissions to be open for everyone on the following


files, which reside in the root directory of your hard drive:
MKDEWE.TRN
MKDEMSG.LOG

GUI Tokens and Unix STTY Settings


---------------------------------
When installing the bootstrap for the Host Library, setting the Unix kill
character to any character less than 127 can cause the installation to fail.

The LNEXT token (usually set to 'Ctrl - V') is a literal next character on SVR4
and 4.4+BSD Unix. The LNEXT character is recognized on input in Extended mode
only; it causes any special meaning of the next character to be ignored. The LNEXT
character is discarded when processed, but the next character entered is passed to
the process. The LNEXT character is in conflict with one of the internal SBClient
tokens. If it is enabled, you need to turn it off. You can turn off Extended mode
by entering 'stty -iexten'.

SBClient makes extensive use of ASCII characters 1 and 2 (Ctrl-A and Ctrl-B)
for communications protocols. You should ensure that these are not used by Unix or
terminal server line settings.
7-bit communications utilities on Unix, such as "rlogin", should not be used in
conjunction with SBClient.

Euro Character
--------------
The Euro character is not included in the SB or System Builder font. The reason
is that there is no international consensus as to where the character should be
positioned within an OEM. IBM has decided to place the character at position 159,
while Xerox has chosen position 186, Microsoft has chosen position 128, and
Monotype and many other companies have chosen position 168.

When communicating with a UniData or UniVerse etc host, the host in most cases
uses an OEM character set. Since most Windows fonts are ANSI fonts, SBClient must
do an OEM-to-ANSI conversion on data coming from the host and an ANSI-to-OEM
conversion on data going to the host. SBClient calls the standard Windows API to
do the conversions. The problem is that the Windows API knows nothing about the
Euro or its OEM position.

If the user is using the SB or System Builder font, SBClient does not perform a
conversion when communicating with an OEM host because these are already OEM
fonts. This means that if the application on the host sends CHAR(159), the IBM
Euro position, and System Builder font uses the Xerox position 186, the display
is incorrect.

Therefore, SBClient needs to know the position of Euro character according to the
host and this has to match the position in the SB or System Builder font. If the
user is using an ANSI font, such as Courier New (with Euro support), SBClient
needs to perform a conversion, but the standard Windows conversion will not work.

Currently, two solutions are available:

- If the Euro character is required, download Microsoft's new Courier font (or a
similar font from another vendor), and select it from the Setup/Fonts window.
A translation table should be set up. (For further information, see the section on
the new translation functionality in the Using SBClient manual.) The table should
specify ANSI-to-OEM mappings in the [output] section and OEM-to-ANSI mappings in
the [input] section. If using a Microsoft font, the host's Euro character position
should be mapped to CHAR(128) in the [input] section of the translation table and
vice versa in the [output] section. You can map an Alt or Ctrl key to CHAR(128) in
the [display] section so the user can enter the character from any keyboard.

- For detailed information on a second workaround solution for display of European


currency symbols, see the IBM U2 SBClient 5.4 New Features manual on the
documentation CD.

Installation Information
========================

There have been some reports of Norton AntiVirus causing SBClient to freeze or
fail during installation. If you experience difficulties during installation,
please disable Norton AntiVirus until SBClient installation is complete.

Microsoft Outlook communicates with an Exchange server, which tends to slow the
system dramatically during installation and DDE. We recommend closing Microsoft
Outlook while installing SBClient.

During installation of SBClient, files are copied to the directory chosen by the
user. This is usually C:\Program Files\IBM\SBClient for single-user installations
and some other drive for shared, multi-user installations. When client
installations are created, files are copied to the directory chosen by the user.
This is usually C:\Program Files\IBM\SBClient. Some files are copied to other
locations, as listed below.

The following SBClient files are copied to the WINDOWS\SYSTEM directory if the
files do not exist or if older versions of the files are found in the target
directory:
W32MKDE.DLL
W32MKRC.DLL
W32MKSET.DLL
WBTRCALL.DLL
WBTRV32.DLL
WBTRVRES.DLL
MFC40.DLL
MFC42.DLL
MSVBVM50.DLL
MSVCRT.DLL
MSVCRT20.DLL
MSVCRT40.DLL
MSVCIRT.DLL
MSCHART.OCX
MSCAL.OCX
MSCOMCTL.OCX
PSAPI.DLL
OLEAUT32.DLL
COMCAT.DLL
OLEPRO32.DLL
ASYCFILT.DLL
STDOLE2.TLB
COMCTL32.OCX
GRID32.OCX
SBPVDT60.OCX
MSMAPI32.OCX
MSCHART.OCX
MSCAL.OCX
SB.FON
SB.TTF
U2LICN.DLL
MANY2PDFX.OCX

The following third-party software file is copied to the WINDOWS\SYSTEM directory


only if the file does not exist or if an older version of the file is found
on the target machine:
CTL3DV2.DLL to the WINDOWS\SYSTEM directory

The following fonts are installed to the system:


System Builder=SB.FON
SB Font (True Type)=SB.TTF

Please note the following minimum operating system version requirements:

Windows 2000: First Shipped Release (no Beta releases are supported)
Windows XP Professional: First Shipped Release (no Beta releases are supported)
Windows Server 2003: First Shipped Release (no Beta releases are supported)

Note that as of SBClient version 5.4, the Windows 95, Windows 98, Windows NT
operating systems are no longer supported.

Compatibility Information
=========================

SBClient version 5.4 or later is required for correct functioning of GUI mode in
SB+ version 5.4. SBClient 5.4 is backward compatible with previous SB+ 5.x and 4.x
versions in GUI runtime mode only. For GUI development, you must be running a
matched server and client. For example, SB+ 5.4 GUI development requires SBClient
5.4. If you have any questions regarding compatibility, please contact IBM Software
Support.

Currently Supported Communication Protocols


===========================================

Connection by standard serial line is supported with a variety of COM ports and
baud rates. The only network communication stack supported is TCP/IP through the
Windows Socket (Winsock) interface.

Currently Supported Terminal Emulations


=======================================

SBClient currently provides support for the following terminals:

ANSI
VT52
VT100
VT220
VT320 use VT220 with "ANSI color" on
Wyse 50 use Wyse 60 with "Embedded" on
Wyse 60
Wyse 120

An SB+ mode is available for all the above terminal types. Set this mode when
using SB+ to enable a number of subtle functionality differences. To set the SB+
mode, open the SBClient Setup menu. In the Terminal Setup option, select the
SB+ Mode check box. We recommend using VT220 when communicating with SB+ server
for optimal performance.

Database Compatibility
======================

The minimum database requirements of the SBClient 3GL Host API are as follows:

UniData 5.2 or later on UNIX or Windows NT


UniVerse 9.6 (Pick compatibility) or later on UNIX or Windows NT

New Features in Version 5.4


===========================

- The SBClient 5.4 installation program was rewritten in InstallShield 10.5,


bringing it current with industry standards. The new installation program
offers a silent installation as well as the standard installations on
stand-alone PCs and network server/client PCs. For details, see the IBM U2
SBClient 5.4 New Features manual on the documentation CD. 5395*USA
- A new dialog box has been added in the SBClient 5.4 installation program
that enables users to select a preference for running multiple sessions of
SBClient on a single instance of the SBClient engine or multiple instances
of the SBClient engine. For information about this feature of the new
installation program, see the IBM U2 SBClient 5.4 New Features manual on
the documentation CD. 34796*USA

- SBClient 5.4 supports two variations of the launch screen, offering you a
choice of the legacy launch screen or a new launch screen in the standard IBM
format as a preference. For detailed information about the new launch screen
and setting or changing your preference, see the IBM U2 SBClient 5.4 New
Features manual on the documentation CD. 34217*USA

- New splash screens are displayed when starting SBClient or getting


information from Help > About SBClient. For details, see the IBM U2 SBClient
5.4 New Features manual on the documentation CD. 3865*USA

- The Start bar and system tray icon for SBClient sessions has been changed
from the legacy icon to a new icon. 34597*USA

- In previous versions, SBClient sent a warning message to the user every two
minutes if the product was installed without an authorization key or license
number. At version 5.4, SBClient no longer sends warning messages in this
situation. If the product is installed without an authorization key or license
number, it runs for a trial period of 60 days and then stops. This feature is
documented in the IBM U2 SBClient 5.4 New Features manual on the documentation
CD. 3693*USA

- At version 5.4, SBClient upgrades to new open SSL libraries. These new SSL
libraries are the same as those used in UniData 7.1 and incorporated in the
forthcoming release of UniVerse 10.2. For details, see the IBM U2 SBClient 5.4
New Features manual. 33507*USA

- The license text files are now included on the product CD the location
of the license files is shown on the splash screen displayed from Help >
About SBClient. 33179*USA

- The InstallShield program for IBM U2 SBClient 5.4 implements a Software


Electronic Licensing (SEL) version of the license agreement using the
License Access Process (LAP), in compliance with IBM standards. 32600*USA

New Features in Version 5.3.8


=============================

- This version corrects a cross-product issue in which SBClient version


5.3.7 was using a DLL that issued device licenses from a different pool than
that shared by other IBM U2 products. 7676*UK

- SBClient version 5.3.8 was enhanced to support the ability of client


applications to make secure connections to the database server through Secure
Sockets Layer (SSL). See the SBClient online help for details. 5583*USA

- When running Smart Query on SBClient/SB+ versions 5.2.4 and later, if you
clicked the elipses '...' button on the dictionary line and the VOC file
contained a large number of file pointers, a Windows error occurred and SBClient
closed abnormally. This issue was addressed by correcting a sort update function
that affected memory allocation. 6977*USA
- In SBClient versions 5.3.4 and later, Smart Query did no OEM to ANSI conversion
on data, field descriptions, or table headings when the output was directed to a
graphical user interface (GUI) or to Microsoft Office. This has been fixed.
6946*USA

New Features in Version 5.3.7


=============================

- Version 5.3.7 resolves issues that caused the installation of newer versions of
SBClient to disable previously installed versions. As a result of this change,
SBClient will no longer report on registration details, and the Registration
Details option has been removed from the Help menu. 7243*USA, 6520*UK, 6185*USA

- In earlier versions, when running a file transfer process created in PD.LO (SB+
to DOS), sbclient.exe used 100 percent of CPU resources. This version corrects
the issue that caused high CPU usage when running this type of file transfer.
6944*USA

New Features in Version 5.3.6


=============================

- SBClient version 5.3.6 is certified to run on Windows 2003.

- At SBClient version 5.3.6, machines running Windows 2000 support the use of
the Japanese locale in the sbc script. 6312*USA

- Previously, ASCII characters above 127, such as the German umlaut,


were converted to other characters in MV grids. These characters are now
displayed properly in MV grids. 6554*USA

New Features in Version 5.3.4


=============================

- The sbu2lic.dll has been renamed to u2lic.dll and we are no longer placing a
copy of the file in the System32 directory in order to prevent a conflict with
Crystal Reports.

- SBClient no longer continuously broadcasts messages over the local area network
(LAN) to keep the registration details updated. The broadcast message is now sent
automatically only once each time SBClient is invoked. A new Update button has
been added to the Registration Details screen so users can obtain a current count
of client sessions and user details at any time. To get the count and user details,
open the Registration Details screen and click the Update button. The Update button
closes the Registration Details screen and sends a broadcast message to gather the
current count of client sessions and user details. To view the results, you must
open the Registration Details screen again.

- In a previous version, a single DDEREAD was limited to approximately 5,000 bytes.


This problem was since corrected; SB+ now allocates the string dynamically. The
Windows DDE implementation now determines the limit, which could be up to 50,000
bytes. 6118*USA

New Features in Version 5.3


===========================
- Samba is now supported with Network Copy protocol. This feature requires two
environment variables in the user profile:

SBNCTEMP points to Unix temp directory configured in Samba for Windows access
SBNCWIN points to the same directory using Windows UNC notation

For example, the .profile entry for SB+ users on a Unix system may look like this:
...
# for Samba/network copy mode of SBClient
SBNCTEMP=/tmp/sbc
SBNCWIN=\\\\192.168.103.54\\public
export SBNCTEMP SBNCWIN
...

Extract from /etc/samba/smb.conf:


...
[public]
comment = Public SBC Directory
path = /tmp/sbc
public = yes
only guest = yes
writable = yes
printable = no
...

SBNCTEMP points to the Unix directory as declared in Samba configuration files.


SBNCWIN points to the same directory, but using Windows naming conventions.

There is no need to do anything in SBClient setup. Selecting "Network Copy" as


the file transfer method is sufficient; no share name is necessary.

Please make sure that Samba is set up correctly and configured according to
Samba documentation. If you experience problems during an SBClient file transfer,
first check that athe Unix machine running Samba is accessible and that the
shared directory (the one to which both SBNCTEMP and SBNCWIN point) is available
and visible from Microsoft Windows Explorer.

- The Windows 2000 workaround that involved editing of registry keys is no longer
required.

- During installation, a dialog box asks users if they want to place an SBClient
shortcut on the desktop.

- The default installation directory for new installations has been changed from
C:\Program Files\Informix\SBClient to C:\Program Files\IBM\SBClient. Note that
profile and registry locations have also been changed and now refer to IBM.

- During an upgrade, existing sessions and setup details are copied from Ardent
Software to IBM.

- Passive FTP mode is now supported and requires addition of the following section
to SBOPEN.INI file:

[ft]
passive=1

- TU.LAUNCH.APP can now run applications by running a relevant data file; the
file extension will determine which application will be run. For example, a .DOC
file can be run by specifying the name of the file in the APPLICATION parameter
and specifying D in the OPTIONS paramater.

- There is added support for BCC in the TU.MAPI routines:


TU.MAPI.SENDMAIL
TU.MAPI.REPLYTOALL
TU.MAPI.REPLY
TU.MAPI.FORWARD

To use the BCC functionality, enter the BCC addresses in the CC parameter as
described below:

The CC parameter now supports the following


CC - A VM delimited string with a SVM delimited list
of cc email addresses in the first value and an
optional SVM delimited list of bcc email addresses
in the second value
for example, add1:SVM:add2:VM:add3:SVM:add4
will send add1 and add2 as a CC and addr3 and add4
as a BCC

- In the SB+ GUI, "Print Screen" and "Switch to CEO" options have been added to the
Tabfolder's System menu.

- A new HOST LIBRARY routine retrieves the SBClient session configuration data.

TU.GET.CONFIG(CONFIG, OPTIONS, ERROR)

DESCRIPTION : Gets the current session configuration from the client

PASSED : OPTIONS - Reserved for future use

RETURNED : CONFIG - The current session configuration record


: ERROR - 0:no error, else:error

For details of the parameters, see the document "SBClient_Session_Configuration" in


the TU directory of SBClient installation.

- There have been various improvements to the Tree and List displays in SB+ GUI,
SBX mode.

- The positioning and sizing of GUI Help in the Status line has been improved, and
Tabfolder positioning has been improved when using Large Fonts.

- The Undo, Redo, Cut, Copy, Paste, and Duplicate options have been removed from
the Edit menu in Form Painter.

- Print SB+ Form and Print Desktop options have been added to the menus for
CEOs. 316724*USA

New Features in Version 5.2.4


=============================

- The Form Painter has been modified to allow wildcard specification (such as a
null value) when multiple objects are changed. For example, to change only one
dimension of selected objects, you can now enter ';17' or '100;'. The value that
is omitted will be queried for each object and used instead.
- The Form Painter has been enhanced to place a history of the five most recently
edited forms on the File menu.

- A new option called FORM_WHANDLE has been added in the SBCom GetOptions API. This
option allows the VB/Delphi access to the Windows Handle of the (SB+ GUI) top form.
302811*USA

- When using Smart Query to Excel, you can size columns using Excel's autofit
option
rather than relying on the dictionary lengths. To enable this option, you need to
edit the item EXCEL.MACROS in the TUBP file in the host library by deleting the
Width macro and renaming the WidthAuto entry to "Width".

- Host programs are now provided to import and export TUQUERY files between the
host
and PC. To import/export a query:
* Log in to the account on the host to which you want to import your client query
definitions.
* At TCL, run the IMPORT.TUQUERY program to import your PC queries to the host or
the EXPORT.TUQUERY program to export your host queries to the client.

- You can use two generic subroutines from your own programs to import from any
client BTrieve file to any host file, and vice versa. The routines are:

TU.IMPORT.FILE(CLIENTFILE, HOSTFILE, OPTION, Status)


This function imports a BTrieve client file.
[P] HOSTFILE The name of the file on the host to import to

[P] CLIENTFILE The name of the file on the client to import from

[P] OPTION "Q" if importing a SMART QUERY definitions, otherwise ""

[R] Status Indicates the success or failure of the subroutine.


A successful call returns a zero Status and failure returns
a non-zero value.

TU.EXPORT.FILE(CLIENTFILE, HOSTFILE, OPTION, Status)


This function exports a host file to a BTrieve client file.
[P] HOSTFILE The name of the file on the host to import from

[P] CLIENTFILE The name of the file on the client to import to

[P] OPTION Reserved for later use

[R] Status Indicates the success or failure of the subroutine.


A successful call returns a zero Status and failure returns
a non-zero value.

- There has been a significant improvement in performance when running SBClient/SB+


on UniVerse on NT patch 9.6.1.7 or later. There is a new TCL verb in Universe that
turns nagling on/off: SET.TELNET NODELAY ON/OFF. SBClient 5.2 sets the option
automatically during login. Note that on very slow networks, leased lines, or WANs,
performance may be degraded by using this option, and in those cases it may be
better not to use this new option.

- Smart Query now supports GET-LIST and SAVE-LIST for queries. To use this
functionality, select Savelist from the Output combo box and enter the name of a
list to which you want to save. If you do not specify a name, the default name of
"SQLIST.":PORTNO is assigned, where PORTNO is your current port. You can also use
GET-LIST in your select statement on the Smart Query screen. For example, you might
enter: GET-LIST MYLIST

- On the Smart Query display field selection screen, the length of each field (as
per the dictionary definition of the field) is shown under the list box as each
field is selected. The total length of the selected fields is displayed under
the selected fields list box. This makes it easier to plan reports because you do
not have to run a report first to see its width.

- An Insert button on the Smart Query display field selection screen allows you to
insert a field before the selected field.

- SBClient now supports Device Licensing on UniVerse and UniData when running
SBClient on a Microsoft Terminal Server/Citrix system. Note that this requires
the latest version of UniData or UniVerse.

- The option to automatically run the SBClient Manager at startup is no longer


offered durng installation. The Manager is still available in the SBClient group
and can be added to the Windows startup group at any time if required.

- The default installation directory for new installations has been changed from
C:\Program Files\Ardent Software\SBClient to C:\Program Files\Informix\SBClient.
Note that profile and registry locations have not been changed and still refer
to Ardent Software.

- Please see the file Patch.txt for details of problems fixed in this version.

New Features in Version 5.0.5


=============================

- Grids
A Font attribute has been added to the multivalue grid, allowing you to change
the font used by the grid via SETATTR().

- SB+
This version incorporates Various changes to support SB+ functionality. (For
details, see the SB+ documentation.)

- FTP Passwords
If using FTP with a login script and the FTP password has not been set, the user
is now prompted for the password.

- TU.SCRIPTNAME
There is a new TU API that allows you to set the logout/login script from the
host. This is described below.

TU.SCRIPTNAME(Loginscript, Logoutscript, Status)

This function sets the SBClient login or logout script name.

[P] Loginscript Sets the name of the login script

[P] Logoutscript Sets the name of the logout script

[R] Status Indicates the success or failure of the subroutine.


A successful call returns a zero Status and failure
return a non-zero value.
Comments:
To reset a script to no script, use "<No Script>" as
the relevant Logout or Login parameter. To leave one
of the scripts unchanged while changing the other,
pass "" for the script that is not being changed.

- Tray Icon
Double-clicking the SBClient tray icon now creates a new session. The online help
is now available from the tray icon.

- Network Copy
The Network Copy feature is now available on D3/NT. For this to work, D3 must have
a patch level of at least (7.1.4). You must also do the following to enable Network
Copy on D3:
* Logto DM account.
* Edit the HOSTS file and create or modify the existing item 'ntn'. It needs to
look like this:
<001> 01
<002>
<003> na
<004>
<005>
<006> For referencing raw data

Turn on Network Copy in the SBClient session setup. The rules for 'Share Name' are
the same as usual; in most cases, the Share Name is not required.

Note: Due to D3 limitations, there may be a potential problem with very large files
because the whole file must be read or written in one READ or WRITE rather than in
blocks as is the case on other platforms.

- SBClient Manager
The SBClient Manager has been introduced in version 5.0. By placing the Manager
in the Startup group in Windows, you can improve the startup performance of
SBClient significantly.

- Storing Data in Profiles


SBClient 5.0 takes advantage of user profile within the Windows environment. All
user data is now in the current user's profile. If profiling is enabled within the
network, users' SBClient configuration will follow them around the network as
they move from workstation to workstation.

- New Configuration Maintenance


SBClient 4.x introduced the concept of SBC files for storing session
configurations.
In SBClient 5.0, the default behavior is to store configurations in SBC files. This
behavior is known as "Document" session maintenance. The behavior of storing
configurations within database files that only SBClient can access is known as
"Classic" session maintenance. This change was made in SBClient to keep pace with
Microsoft's initiative to make the operating system more document-centric.

- Dial a Number
It is now possible to call the "Dial a Number" functionality when using a Network
session. This feature allows the user to telnet to a modem pool and then dial the
number by selecting it from the dial directory.

- Setting Modem Registers


Register S12 has a different meaning on some modems. When dialing a number,
SBClient always sets register S12. In previous verions, the user had no way of
changing this. As of version 5.0.5, it possible to stop all registers from being
set
by adding an environment variable in the Setup > Environment window. For example,
NOMODEMREGISTERS = 1
stops the setting of all registers. You can then set the registers via the
initialization sequence in the Setup > Communications > Modem window.

- SBC Configurations Form Titles


The title in an SBClient ".SBC document" session no longer displays the full path
to
the file. As of this version, it shows only the file name.

- Smart Query Field List


In SBClient version 5.0.5, the Field List tab, rather than the Item List tab, is
the
default tab on the helper for selecting fields.

- SBClient Is More Robust


SBClient now automatically checks the integrity of the various data files that
are essential for correct operation. If they are corrupt, SBClient automatically
restores the files by copying new ones from the .\tu\profile

- TCL.SBCVERSION
As of this version of SBclient, TCL.SBCVERSION also displays the location to which
the Temp environment variable is pointing on NT platforms.

- Automatically Email Support Information to IBM


The Troubleshooting > Support Information screen can automatically email the
details and internal state of SBClient to IBM support if the PC has Microsoft Mail
components installed.

- Exit All Confirmation


The Exit All option warns the user to shut down host sessions properly before
closing all connected sessions.

- New Documentation
The host library reference that was previously in the online help has been
enhanced and moved to a new manual, Developers Guide, which is part of the
online documentation set. The new documentation requires Adobe Acrobat 4.0,
which is shipped with this version of SBClient.

SB OLE Server
-------------
The following functionality was introduced in release 4.5.5, but is not included
in the online documentation.

- form_parent
The form_parent option in the setoptions API allows the VB/DELPHI etc code to
pass the VB/DELPHI etc form handle to be used as a parent for the SB+ forms.
If a valid form handle is passed, SB+ will parent all its forms to the given
handle. This ensures that the SB+ forms will never be hidden behind the VB/DELPHI
forms and thus obstructed from view. In other words, the z order will be correct.

The syntax to use in Visual Basic is:

Status = fLogin.sbc.SetOptions(fLogin.SessionHandle, "form_parent~" & Me.hwnd)

Use the SetOptions method with "form_parent~" concatenated with the desired
parent window as soon as the desired VB/DELPHI parent form has been created.
This has been added to the VBExplorer example in the samples directory of the
SBClient CD.

- Improved robustness of the SBCom interface fixes an issue with events being
lost. The problem manifested itself when a user logged in to a host and the
menu did not display at login until a refresh was requested.

- There is a new SERVER_EVENT that SB+ sends to the client when doing a logto
to tell the client to clear the tree and repopulate the tree with the
accompanying menu. The event is sbcom_refresh and is identical to sbcom_menu
in syntax.

- The 'parameters' parameter of the StartServer() API can now have an unlimited
amount of ~ delimited script replacement data pairs. In addition, there is also
a new reserved value that can be used to override the hostname or IP address that
is stored in the SBC file. The pair that can be added is:
'<HOST>'~hostname
where '<HOST>' is the reserved word (note uppercase) and hostname is the variable
containing the new host name or ip address.

- Any SBClient macro can now be called from the SBCom interface using the syntax
below.
Status = sbc.SendEvent(SessionHandle, "MACRO", "[macroname('paramaters')]", val)
where
- macroname is the macro to call
- parameters are the parameters to pass
The macros are described in the Using SBClient manual.

- When an SBClient process closes, focus does not return to the Explorer. This
issue is resolved by some new functionality that the application using SBCom can
implement. At this version, SBClient sends an event to the application code when
the last SB+ form in the form stack has been closed. The application (such as
Delphi or VB code) then needs to set focus to itself. For example,

If (event_type = "SB_FORM_CLOSED") Then


Me.SetFocus
End if

- In the past, it was difficult for an application using SBCom to manage closed
or lost connections. At this version, a server state 10 indicates to the
Delphi/VB program that the session has been disconnected (the server has gone
down). The Delphi/VB program can then notify the user and clean up gracefully
by doing the normal shutdown in VB.

If event_data = 10 Then
' External disconnect happened underneath us!
MsgBox ("The server has been disconnected")
' Now shut down the server session gracefully
' Server is shutting down - set the timer to
' give some time for logouts to happen before
' shutting down server. Also show disconnection progress.
Timer1.Interval = 3000
ProgressBar1.Value = 50
ProgressBar1.Visible = True
lconnect.Caption = "Disconnecting ... 50 %"
End If
- At this version, you can hide the SysTray icon When using the SBCom interface.
This can be achieved by setting the new environment variable notrayicon=1 in the
environment section of the sbopen.ini file in the TU directory. This environment
variable is only valid for the com interface - the normal running of SBClient
will always have a tray icon irrespective of this setting.

- A new SBCom event called tree_shell brings up SBClient and places the user at
TCL. This is similar to typing 0 at a menu prompt in SB+ GUI. The session can then
be resumed by typing mm at the TCL prompt. For example,

Status = fLogin.sbc.SendEvent(fLogin.SessionHandle, "SB+",


fLogin.SessionHandle & ";tree_shell", val)

- A new option called OPEN_FORMS in the getoptions API returns true if there is
a form or forms open. The syntax is as follows:
forms = fLogin.sbc.GetOptions(fLogin.SessionHandle, OPEN_FORMS)
SBCom applications can check this before allowing the user to close a form and
display a dialog box to tell the user to quit the SB forms if necessary before
shutting down.
Note: Since the GetOptions generically returns a string, the return variable (such
as forms, above) must be declared as a string, not a Boolean.

- A new option called FORM_TITLE in the setoptions API prefixes all SB+ forms
with whatever is passed into this call. The syntax is as follows:
status = fLogin.sbc.SetOptions(fLogin.SessionHandle, FORM_TITLE~My Title is
SBExplorer - )
Note that you should set this option before the user has an opportunity to display
an SB+ form, such as in the Load Form event of the Explorer.

- SBCom applications can use two new events, GUI_HIDE_FORMS and GUI_RESTORE_FORMS,
to hide and restore all the SB GUI windows that are open when the application is
minimized and restored. For example,
status = fLogin.sbc.SendEvent(fLogin.SessionHandle, GUI_HIDE_FORMS,
fLogin.SessionHandle, val)
status = fLogin.sbc.SendEvent(fLogin.SessionHandle, GUI_RESTORE_FORMS,
fLogin.SessionHandle, val)
Note that this does not hide dialog boxes, as dialog boxes cannot be minimized
in general windows.

- In scripting, if [user_data()] is nil, SBClient prompts the user to enter a


value. Programmers may want to set certain script replacement pair values to nil
in the 'parameters'parameter of sbc.StartServer(), for example, when a user has
no System Builder password.

If you set the user_data value to <NULL>, the dialog box does not appear, but
SBClient sends through a null value.

- It is now possible to set fonts in the debug window of the SBCom interface.
When you pass the debug parameters, value 2 is the window handle, value 3 is the
font size in same format as SBClient (such as 7x14), and value 4 is the font
family (fixed-pitch fonts only).

- Error code -8 was added in the sendevent API to indicate an invalid event.

Known Issues
============

- Problem Caused by Use of the Toolbar Copy Button in Grids


Using the toolbar Copy button in multivalued grids minimizes the SBClient
session window. This issue will be addressed in a future version. 7463*USA

- Limitation of Secure File Transfers through SSL


SSL provides secure file transfers only if you use the SBZ file transfer
type. Other file transfer types do not support SSL functionality. Even if
SSL is enabled for the session, file transfers with FTP or Network Copy
are not secure. Notes have been added in the Using SBClient manual.
34290*USA and 34352*USA

- Long Numbers Display Incorrectly in GUI ListView Mode


Due to limitations of ActiveX controls, long numbers are truncated or
padded with zeros, or digits are overwritten in GUI ListView mode.
7789*USA

- SM9400 Emulation Is No Longer Supported


Although SM9400 is still listed as a terminal emulation option, SBClient
no longer supports it. SBClient 4.5.5 was the last version to support
SM9400 emulation. 8256*FR

- Problem with Deleting User Environment Variables


When attempting to delete a user environment variable, the user
highlights the variable and clicks the Delete button. The variable is
deleted from the display; however, the variable remains in the sbopen.ini
file. This issue will be addressed in a future version. 5345*USA

- Issue with Running SBClient on Dual Monitors


When running SBClient in GUI mode on a system enabled for dual monitors
with SB+ MAINWIN running on the secondary monitor, SB+ screens and dialog
boxes are displayed in the main monitor. This behavior does not comply
with Windows standards, which specify that the program remember the
monitor on which the screen was last displayed. 34167*USA

- New Launch Screen Does Not Display Properly at 256 Colors Setting
The new launch screen available in SBClient 5.4 does not display
properly with a setting of 256 colors. On monitors that display 256
colors, we recommend using the old launch screen, which is available
as a preference. For more information about changing your launch screen
preference, see the IBM U2 SBClient 5.4 New Features manual on the
documentation CD. 34896*USA

- Message Text in Deleting Multiple Configurations


When deleting multiple SBClient configurations, the confirmation
message is the same as that displayed when deleting a single
configuration. 34798*USA

- Pressing ESC in Delete Confirmation Dialog Box Executes the Deletion


Regardless of whether the OK or Cancel button has focus in a delete
confirmation dialog box, if you press ESC or click the Close button
(the X in the upper right corner of the dialog box), the deletion is
executed. 34799*USA

- SBClient Does Not Support LogiTech Cordless Devices


SBClient does not support the LogiTech cordless keyboard and mouse. We found
that SBClient menus and SB+ GUI menus were not holding place when clicked,
collapsing immediately when the LogiTech cordless keyboard and mouse were in
use. 6559*UK

- Workaround to Enable Compatability with Btrieve Version 8


SBClient does not support Btrieve Version 8; however, SBClient can now run on
the same machine. To enable compatability, copy the following files from the
SBOPEN directory to the SYSTEM32 directory:
w32mkde.exe
w32mkrc.dll
Note that Btrieve Version 8 engine must be installed AFTER the version
of Btrieve engine that is installed with SBClient. We do not recommend
running two versions of Btrieve at the same time as it produces
unpredictable results. 6435*USA

- Date Fields Sorted as String


Date fields are sorted as strings in list view in GUI mode. This is a known
issue with GUI mode that will be addressed in a future version of SBClient/SB+.
4249*USA

- SBClient Does Not Support Roaming User Profiles


The user profile is stored on the C: drive in Documents and Settings on the
user's computer, so roaming user profiles are not supported. 4023*USA

- Microsoft Office XP Overwrites MSCAL.OCX File


When you install Microsoft Office XP on a computer with SBClient, the
installation program loads a new version of MSCAL.OCX. This version of MSCAL.OCX
prevents SB+ from working in GUI mode when you execute any function on date (for
example, /date or F3 on a date field).
Workaround solution:
Copy the MSCAL.OCX file from the Microsoft Office/Office10 directory to the
Windows/System32 directory. 5517*USA

- Printing PCL or Binary Files Using AUX Printing


Users requested the ability to print a PCL file using AUX printing. However,
the AUX printing feature is not designed to print PCL or binary files. The
original idea of AUX printing was that whatever would normally be displayed on
the terminal screen would be diverted to the printer. Based on this principle,
you would never have the ability to dump a binary file to your terminal screen
because it does not handle binary data. The same holds true of terminal emulation:
SBClient cannot handle binary data in this mode.
Workaround solution:
Transport the PCL file to the client and print from there without going through
the AUX printing interface and emulation. 5461*USA

- SBClient Does Not Support All Character Sets


Although Windows 2000, Windows XP, and Windows 2003 provide full multilanguage
support, SBClient supports only the English and Western European character sets
on these operating systems. 4290*USA

- Limitation in Compatibility with Lotus Notes


SBClient interoperates with Lotus Notes via MAPI. The only limitation is that to
send a note, you must manually intervene by clicking the 'Send' or 'Send and File'
option. The SB development team researched this issue with the Lotus development
team, who indicated that this is a purposeful limitation to prevent the use of
Lotus Notes as a broadcasting tool. 5319*USA

- Developing SBClient GUI Applications Outside SB+


The practice of developing SBClient GUI applications outside the SB+ server
environment is no longer supported. The SBClient APIs continue to be distributed
with the product, but they are provided for the purpose of supporting the SB+
server/SBClient interface, and are not intended for direct use by developers.
3836*USA
- Microsoft Outlook in Installation
Microsoft Outlook communicates with an Exchange server, which slows the system
dramatically during installation and DDE. We recommend closing Microsoft Outlook
while installing SBClient. If you use any DDE routines from the host (including
some Smart Query pass-through routines), you may need to shut down Microsoft
Outlook while running the routines.

- TU.TO.123
The TU.TO.123 API does not function correctly when communicating with Lotus 123
in SmartSuite 97. In this release, Lotus 123 removed its DDE interface. This
makes it impossible for SBClient to interface with Lotus 123 through DDE.

- Host Library Installation on Microdata Reality - X


Due to architectural problems, it is not possible for the Host library installation
to maintain customer modifications to the USER.INCLUDE.H header file in the TUBP
library. If you have code stored in this header file, make a copy of the file and
store it in a non-SBClient host file. After the installation is complete, copy your
modified version of the USER.INCLUDE.H header file back to the TUBP file,
recompile,
and recatalog the library.

- FTP
Due to some technical issues, it has not been possible to provide FTP support for
D3 on Windows NT. Note that Network Copy is now available on D3. (See "New Features
in This Release" above.)

- Pervasive 7
There is a conflict between applications that use Pervasive.SQL (or Pervasive
version 7) and SBClient. The problem occurs when the old BTrieve engine
(w32mkde.exe) is started and running in SBClient before the new Pervasive version 7
engine (w3dbsmgr.exe) is started. If SBClient is running, an attempt to launch a
Pervasive.SQL application results in following error message:
"W3DBSMGR Error 8594 - Engine cannot be restarted. Pervasive components are in
use and must be shut before restart can occur."

If you want to run SBClient on machines with Pervasive version 7, you must force
SBClient to use the new engine (Pervasive version 7) rather than the old engine
(BTrieve 6.16). To do so, complete the following steps:

* Copy the wbtrv32.dll file from Pervasive's bin directory into the
..\SBClient\SBOpen\Bin directory. (Rename the existing .dll file in SBClient's
bin directory first, as a precaution.)

* Modify the registry setting for the maximum item size that can be written by
the BTrieve engine. For example, use 'regedit' to change the key setting for
Max Communication Buffer Size from a default of 10 to d800 (hex) in
HKEY_LOCAL_MACHINE\Software\Pervasive Software\MicroKernel Workstation Engine\
Version 7\Settings.

* Optional: To disable the display of the Pervasive splash screen when the engine
starts, modify the key 'Splash Screen' in HKEY_LOCAL_MACHINE\Software\
Pervasive Software\BTrieve Requester\Version 7\Settings. Set the value of the
key to 'no'.

Documentation Errors
--------------------
- The online documentation on the SBCom interface contains an error relating to the
[com_data(data)] script macro on page 227 in the Using SBClient manual
(DSC-5002.pdf) and on page 880 in the SB+ Server manual, Appendix Q. The correct
syntax is as follows:
[com_data(data)]

- In the online help section "Script Setup," the documentation describing Hidden
Session behavior is incorrect. The first sentence should not read "The session
window is hidden until the script is complete, then the session window is
displayed as normal." It should read "The session window is hidden indefinitely."

*********************************************************************************
*** Note ***
*********************************************************************************

For a full listing of problems fixed in this version of SBClient, please see the
patch.txt file in the install directory of the SBClient distribution.

Miscellaneous Information
=========================

- UniVerse Case Inversion


When logging in to a UniVerse account, UniVerse inverts the current case of the
characters. This can cause problems with the 3GL Host API communicating with the
client. We suggest that you turn off case inverting in a login proc/paragraph.

- The Wyse terminal emulations use the Wyse ANSI keyboard. If you want to
emulate the Wyse EPC keyboard remap, using the Terminal Configuration>Key
Mapping dialog box to remap the following keys:
Insert to (27)r
Shift+Insert to (27)q
Delete to (127)
Shift+Tab to (27)I

- Input Buffer Size


On some platforms, when data is sent to the host where the data is larger than
the input buffer, the system may "hang". In most cases SBClient knows the
correct size of the input buffer and will break the data into small enough
blocks, however there are some cases where SBClient only finds out the size
after the data transfer has already failed. SBClient always tries to re-send
the data but on some platforms it is too late. If you experience problems
when uploading the host code or doing DDE transfers, set the value of the
input buffer to an actual value rather than the default of Auto. If the
system hangs again, try a smaller value. Keep trying smaller values until the
system works correctly.

- GUI Watchdog Timer


When in GUI mode, SBClient periodically sends a sequence to the host to check
that the host is still 'alive'. If the host fails to return a sequence within
a certain length of time, SBClient knows that it is not running and displays a
dialog box to inform the user. The frequency at which SBClient checks the host
is called the watchdog timer. The timer can be configured in the GUI parameters
setup screen. The default value is 0 seconds (the feature is turned off). A
second parameter controls the timeout period, or the length of time to wait after
sending an escape sequence to the host before displaying a dialog box. You can
also set this value from the GUI parameters screen. The default timeout period is
0 seconds (the feature is turned off). Setting the above values to 0 switches off
the watchdog timer.

- Network Copy
If you are using Network Copy between multiple NT domains (for example, the domain
you need to connect to is different from the one which you logged in to), we
recommend that you create a drive mapping to the TEMP directory on the Windows NT
server. See the online help for instructions. Mapping a drive will avoid problems
with authentication when connecting to this domain. Note: This drive mapping should
always be reconnected at login time.

- TU.TERMINATE
You should no longer use TU.TERMINATE. It was originally provided for people who
use the host library, not SB+ users. SBClient required a generic initialization
because there is no login, so TU.INIT was added to provide this functionality.
TU.TERMINATE served to clean up the client objects afterwards.

Prior to version 4.5.2/4.5.3, the basic ROC code was stored in two mirrored
libraries: one part was in the host library, and the other part was in SB+. The
libraries are now merged; both use the host library code. SB+ calls the TU routines
directly. When you log in to SB+, SB+ now calls the TU.INIT and when you exit SB+,
SB+ performs the TERMINATE function. It is therefore not necessary (and actually
quite dangerous) to call TU.TERMINATE from the user's own code. This is because if
you call TU.TERMINATE, it destroys the GUI objects on the client as well as the GUI
objects with which the SB+ GUI communicates. Clearly, any application that uses SB+
should not call TU.TERMINATE because it destroys the SB+ objects. You should not
use
TU.INIT unless SB+ is not being invoked (for example, if an application uses only
the host library from UniBasic). Calling TU.INIT and TU.TERMINATE is costly in
terms of processing overhead as well. If you do use TU.TERMINATE, you should call
it only once, just before shutting down the application.

You might also like