home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DOS/V Power Report 1996 November
/
VPR9611B.ISO
/
vabasic
/
ntsvr.exe
/
README.1ST
< prev
Wrap
Text File
|
1996-07-31
|
40KB
|
955 lines
========================================================================
IBM VisualAge for Basic
README File
========================================================================
Licensed Materials -- Property of IBM.
IMPORTANT: The license for this evaluation copy of IBM VisualAge for
Basic starts just after the table of contents below. If you are about
to download the product from the World Wide Web, please page down and
read the license. If you agree to the terms of the license, signify
your agreement by continuing with the installatione. If you do not agree
to the terms of the license, you have to uninstall the product.
========================================================================
Table of Contents
1. License Agreement
2. About the Beta Program
3. Installation Information
4. Guide to VisualAge for Basic Documentation
5. Description of Functions Supported in the Beta Code
6. Description of Known Bugs in the Beta Code
7. Copyright Notice and Trademarks for this README File
========================================================================
1. EVALUATION LICENSE FOR PROGRAMS NOT GENERALLY AVAILABLE
IBM VISUALAGE FOR BASIC
PLEASE READ THIS LICENSE AGREEMENT CAREFULLY. YOU MUST AGREE TO THE
FOLLOWING TERMS AND CONDITIONS BEFORE DOWNLOADING OR INSTALLING IBM
VISUALAGE FOR BASIC (the "SOFTWARE"). IF YOU DO NOT AGREE TO THESE
TERMS, DO NOT DOWNLOAD, INSTALL, OR USE THE SOFTWARE.
NOTICE: The Software is not released for general availability and may be
modified substantially before such release. The Software may not be at a
level of performance or compatibility of generally available IBM
products. In addition, IBM does not guarantee that the Software will
ever be released for general availability. ANY APPLICATION PROGRAMS
PROCESSED OR COMPILED WITH THE SOFTWARE DURING THE EVALUATION PERIOD MAY
NOT REMAIN OPERATIONAL WITH THE SOFTWARE IF IT IS RELEASED FOR GENERAL
AVAILABILITY.
1. Ownership and License.
The Software is owned by International Business Machines Corporation or
one of its subsidiaries ("IBM") or an IBM supplier and is copyrighted and
licensed, not sold. The Software consists of machine-readable
instructions, audio/visual content (such as software documentation) and
related licensed materials.
IBM grants you free of charge a non-exclusive, non-transferable license
to download the Software and install and use it on a reasonable number of
client machines for purposes of testing and evaluation only. The
Software is not to be used for production purposes.
You may copy the Software for backup. You may not: 1) copy, merge,
distribute, sublicense, lease, or rent the Software except as
specifically permitted by this Evaluation License; 2) reverse assemble,
reverse compile, or otherwise translate the Software except as
specifically permitted by law without the possibility of contractual
waiver.
2. Term and Termination
IBM may terminate this Evaluation License, with or without cause, by
providing notice to you. You may terminate this Evaluation License at
any time by deleting or destroying all copies of the Software and
documentation. Unless either party terminates this License at an earlier
date, your license to the Software expires on its release for general
availability.
3. Warranty Disclaimer and Limitation of Liability
IBM licenses the Software to you on an "AS IS" basis, without warranty of
any kind. IBM HEREBY EXPRESSLY DISCLAIMS ALL WARRANTIES OR CONDITIONS,
EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OR CONDITIONS OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. The entire risk arising from use of the Software remains with
you. Some jurisdictions do not allow for the exclusion or limitation of
implied warranties, so the above limitations or exclusions may not apply
to you.
IBM WILL NOT BE LIABLE FOR ANY DIRECT DAMAGES OR FOR ANY SPECIAL,
INCIDENTAL, OR INDIRECT DAMAGES OR FOR ANY ECONOMIC CONSEQUENTIAL DAMAGES
(INCLUDING LOST PROFITS OR SAVINGS), EVEN IF IBM, OR ITS DISTRIBUTOR, HAS
BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IBM will not be liable
for the loss of, or damage to, your records or data, or any damages
claimed by you based on a third party claim. Some jurisdictions do not
allow for the exclusion or limitation of incidental or consequential
damages, so the above limitations or exclusions may not apply to you.
4. General
This Evaluation License is governed by the substantive laws of the State
of New York applicable to agreements fully executed and performed in New
York.
After downloading the Software, you can view or print a copy of this
Evaluation License, along with the complete Copyright Notices for IBM
VisualAge for Basic, in the file NOTICES.TXT in the directory where you
installed the Software.
END OF LICENSE AGREEMENT
========================================================================
2. ABOUT THE BETA PROGRAM
------------------------------------------------------------------------
2.A. PURPOSE OF THE BETA PROGRAM
The purpose of the IBM VisualAge for Basic beta program is to give
customers the opportunity to review technology from IBM.
------------------------------------------------------------------------
2.B. IBM AND CUSTOMER RESPONSIBILITIES DURING THE BETA PROGRAM
What IBM will do during the beta program:
-- Periodically refresh the code and documentation on the World Wide Web.
-- Respond to your questions and problems via the VisualAge for Basic
Forum on the World Wide Web. To access this forum, go to the
VisualAge for Basic web page at http://www.software.ibm.com/ad/vabasic.
What IBM asks you to do during the beta program:
-- Evaluate the code and documentation.
-- Provide feedback on function, performance, quality, usability, and
documentation via the VisualAge for Basic Forum on the World Wide Web.
------------------------------------------------------------------------
2.C. HOW TO COMMUNICATE WITH IBM DURING THE BETA PROGRAM
To ask questions, report problems, or give feedback about IBM VisualAge
for Basic, use the VisualAge for Basic Forum on the World Wide Web.
To access this forum, go to the VisualAge for Basic web page at
http://www.software.ibm.com/ad/vabasic/vabasic.htm
------------------------------------------------------------------------
2.D. CAUTIONS REGARDING THE BETA PROGRAM
IBM makes no promises regarding the eventual delivery of this VisualAge
for Basic beta code as product code. IBM also takes no responsibility
for errors or potential losses of customer data resulting from the use of
this code.
The customer can withdraw from the VisualAge for Basic beta program at
any time. IBM can discontinue the VisualAge for Basic beta program at
any time.
========================================================================
3. INSTALLATION INFORMATION
For information on how to install VisualAge for Basic from the World
Wide Web, including prerequisite and configuration information:
-- If you've already downloaded VisualAge for Basic from the World
Wide Web, see the file INSTALL.TXT.
-- If you've haven't downloaded VisualAge for Basic yet, return to the
Home Page (http://www.software.ibm.com/ad/vabasic/vabasic.htm)
and link to the installation information.
========================================================================
4. GUIDE TO VISUALAGE FOR BASIC DOCUMENTATION
------------------------------------------------------------------------
4.A. Summary of VisualAge for Basic Documentation
VisualAge for Basic documentation includes online help and two online
books:
VisualAge for Basic Online Help
-- Provides comprehensive, task-oriented information to help you use
the VisualAge for Basic graphical user interface to create GUI
applications, DB2 stored procedures, and DB2 user-defined functions.
-- Provides detailed descriptions of all VisualAge for Basic language
elements, including all components, events, functions, methods,
objects, properties, and statements.
VisualAge for Basic Programming Guide
-- Tells you how to use the VisualAge for Basic visual development
environment to develop GUI applications, DB2 stored procedures, and
DB2 user-defined functions.
VisualAge for Basic Data Access Guide
-- Tells you how to access data from VisualAge for Basic applications
using various data access protocols and APIs.
-- Tells you how to create, build, test, register, call, and manage
DB2 stored procedures and DB2 user-defined functions.
VisualAge for Basic Tutorials
-- PostScript files that describe how to perform common tasks in
step-by-step detail.
-- Source code included with tutorials.
-- Located in vabasic\samples\tutorial subdirectory.
------------------------------------------------------------------------
4.B. Accessing VisualAge for Basic Documentation
To view the VisualAge for Basic general online help, install the product,
then from any product window, select the Help pull-down, or press F1.
To view the online books, or the online help for the stored procedure OLE
custom control (SP OCX), install the product, then:
-- On OS/2, open the VisualAge for Basic folder, then open the
VisualAge Information folder, then double click on the Programming
Guide, Data Access Guide, and InterSolv ODBC Reference.
-- On Windows NT/95**, open the VisualAge for Basic folder, then click on
the Programming Guide, Data Access Guide, or SP OCX icon.
------------------------------------------------------------------------
4.C. Suggestions for Using the VisualAge for Basic Documentation:
1. For install instructions:
-- If you've already downloaded VisualAge for Basic from the World
Wide Web, see the file INSTALL.TXT.
-- If you've haven't downloaded VisualAge for Basic yet, return to the
Home Page (http://www.software.ibm.com/ad/vabasic) and link to the
installation information.
2. For an overview and "quick tour" of VisualAge for Basic, see the
VisualAge for Basic Programming Guide, Chapter 1.
3. For detailed information on how to use the VisualAge for Basic visual
development environment to develop GUI applications, stored procedures,
and user-defined functions, see the VisualAge for Basic online help,
or the Visual Age for Basic Programming Guide, Chapters 2-7.
4. For detailed information on VisualAge for Basic language elements, see
the VisualAge for Basic online help.
5. For detailed information on VisualAge for Basic programming techniques,
see the VisualAge for Basic Programming Guide, Chapters 8-13.
6. For detailed information on integrating VisualAge for Basic
applications with external object systems such as OpenDoc, SOM, and
OLE, see the VisualAge for Basic Programming Guide, Chapters 14-21.
7. For detailed information on accessing databases, and on creating,
building, testing, registering, calling, and managing stored procedures
and user-defined functions, see the VisualAge for Basic online help,
or the Visual Age for Data Access Guide.
8. For sample programs:
-- On OS/2, see the \vabasic\samples directory.
-- On Windows NT/95, see the \vabasic\samples directory.
README files in the two samples directories and their subdirectories
explain how to use the sample programs.
========================================================================
5. DESCRIPTION OF FUNCTIONS SUPPORTED IN THE BETA CODE
------------------------------------------------------------------------
General Scenarios Supported:
-- Create client GUI applications that run on OS/2 and/or Windows
NT/95.
-- Integrate third-party visual and non-visual objects and controls
developed in C++, SOM, OLE, and OpenDoc into client applications.
-- Define, create, and manipulate objects in Basic using Object
Oriented extensions to the Basic language.
-- Migrate applications written in Microsoft Visual Basic 3.0 into
VisualAge for Basic.
-- Edit server procedures locally, and build and debug server
procedures locally and remotely.
-- Browse stored procedures in the DB2CLI.PROCEDURES catalog, and
browse user-defined functions in the DB2 catalog.
-- Invoke server procedures from a VisualAge for Basic client and
from other clients.
Definition: "server procedures" is used as a general term that includes
stored procedures and user-defined functions.
------------------------------------------------------------------------
Platforms Supported:
Client platforms: OS/2, Windows NT/95
Server platforms: AIX, OS/2, Windows NT
------------------------------------------------------------------------
Language Supported:
The complete VisualAge for Basic language is described in the VisualAge
for Basic online help. See section 6 in this README file for a list of
known bugs in the beta code.
------------------------------------------------------------------------
Functions Supported:
Project:
-- Creating a new project
-- Opening an existing project
-- Saving the project and changing the project name via Save as
-- Running the Project
-- Viewing the project: Forms, Modules, Build files, Components, etc.
-- Showing a file in full path or just the name
-- Loading projects written in Microsoft Visual Basic 3.0, modifying
them, and saving them in Visual Age for Basic format
-- Building server procedures (creation/deletion)
Forms:
-- Selection and appropriate menu and icon state
-- Opening the Code Editor and Menu Editor on it via menu item,
mouse, keyboard
-- Showing or hiding design version of selected form
-- Saving in a file (.i), and changing name of file via Save As
Modules:
-- Selection and appropriate menu and icon state
-- Opening Code Editor on it via menu item, mouse, keyboard
-- Saving in a file (.bas), and changing name of file via Save As
-- Creating/removing a Module
Window Pulldown:
-- Property Editor
-- Toolbox
-- Menu Editor
-- Code Editor
-- Color selector
-- Component catalog
-- Stored procedure catalog
-- User-defined function catalog
Options Pulldown:
-- Interpreter
-- Project
-- Environment
-- Database
------------------------------------------------------------------------
Components shipped in the beta code:
Checkbox
Combo Box
Command Button
Common Dialog
Data (Windows NT/95 only)
Directory List Box
Drive List Box
File List Box
Frame
Grid
Horizontal Scrollbar
Image
Label
Line
Listbox
OLE Container (Windows NT/95 only)
OpenDoc Container (OS/2 only)
Option Button
Picture Box
Shape
Textbox
Timer
Vertical Scrollbar
========================================================================
6. DESCRIPTION OF KNOWN BUGS AND RESTRICTIONS IN THE BETA CODE
The known bugs are grouped in the following categories:
A. Building server procedures
B. Calling server procedures
C. Database access
D. Language elements
E. Miscellaneous
F. Run-time problems
G. User Interface
------------------------------------------------------------------------
A. Building Server Procedures
------------------------------------------------------------------------
------------------------------------------------------------------------
A.1. Building Server Procedures: Replacing a server procedure on a DB2
server
During server procedure development, set the database manager
configuration using KEEPDARI=NO, so that DB2 will unload server
procedures after each call. (DB2 loads a server procedure into memory
when it runs, and may not unload it from memory to let you replace it.)
For execution, set KEEPDARI=YES to give better performance, so that the
server procedures do not need to be reloaded each time they are run.
With KEEPDARI=YES, the following message may appear: "Stored Procedure
DLL cannot be created because it is in use." This will happen if one
is trying to rebuild a server procedure which has already been run by
DB2. Stopping and restarting DB2 will free the server procedure from
memory, allowing one to rebuild it.
------------------------------------------------------------------------
A.2. Building Server Procedures: Running a server procedure on a DB2
server in UNFENCED mode
Do not run a server procedure built using VisualAge for Basic on DB2
in UNFENCED mode. For this beta, run server procedures in FENCED mode.
------------------------------------------------------------------------
A.3. Building Server Procedures: Building the UNITS UDF sample
Before building the UDF in vabasic\samples\udf\units\unitudf.prj,
edit the assignment statement of the global variable Path to use the
path (with a trailing "\" or "/") of the location of the UDF built on
the database server. For additional details about this and other
UDF samples, browse the README.UDF file in vabasic\samples\udf.
------------------------------------------------------------------------
B. Calling Server Procedures
------------------------------------------------------------------------
-------------------------------------------------------------------------
B.1. Calling Server Procedures: Calling more than 5 stored procedures
In DB2 for OS/2 2.1 and some beta releases of DB2 for OS/2 2.1.1, no more
than 5 different stored procedures can be invoked by one application.
The sixth and subsequent calls to different stored procedures receive SQL
error code 1131. This restriction is removed in the GA version of DB2
for OS/2 2.1.1.
In DB2 for OS/2 2.1 and 2.1.1, an application can call the same stored
procedure as many times as system resources permit.
------------------------------------------------------------------------
B.2. Calling Server Procedures: Matching levels of CLI
When calling a stored procedure using CLI, make sure the level of CLI
support on the client and server machines is the same, especially if the
client and server are on different operating systems.
------------------------------------------------------------------------
B.3. Calling Server Procedures: Calling from a generated executable
For OS/2, when a stored procedure is invoked from a generated executable,
Visual Age for Basic will display the following message when running
the executable:
"Priority cannot be set for the current thread".
This message can be suppressed by setting an environment variable
as follows:
set VWSPSETPRTY=NO
This environment setting should be made by each OS/2 client running the
generated executable.
------------------------------------------------------------------------
B.4. Calling Server Procedures: Debugging Stored procedures on NT when
client and server is the same machine
When a stored procedure is built and run with the Debug option on, after
the stored procedure is finished, the client's code window may disapper.
This problem can be avoided by putting a break point in statements
after the EXEC SQL CALL in the client code.
------------------------------------------------------------------------
B.5. Calling Server Procedures: Debugging UDF on NT when client and
server is the same machine
When a DB2 UDF is built and run with the Debug option on,
the remote debugger code window for a UDF is not working properly.
If the UDF needs to debugged, use the command line interpreter
(basI.exe) to invoke the UDF, instead of invoking it through a GUI based
application. Also, the UDF Next Row under Run in the Project window
for the server is greyed out incorrectly - the debugger will
only step through the first row and then exit.
------------------------------------------------------------------------
B.6. Calling Server Procedures: For UDFs with VARCHAR input or result
arguments
A UDF BASIC function should be declared as BASIC data type "string"
and not as a sqlvarchar structure. The result should be
NULL terminated ( & with chr$(0) before return). However, there has
been problems reported for VARCHARs result when client and server
are on different platforms.
------------------------------------------------------------------------
B.7. Calling Server Procedures: Path in STATSDAR.PRJ
The sample \vabasic\samples\sproc\callsp\calldari\statsdar.prj
inadvertently displays a path ahead of the stored procedure name in its
form. This sample will work if this path is removed.
------------------------------------------------------------------------
B.8. Calling Server Procedures: Duplicate Type Definition
The sample file \vabasic\samples\sproc\arrays\spstaffm.bas contains a
type definition, Str254Type, which is already defined in another module.
Comment or remove this duplicate type definition prior to building this
stored procedure.
------------------------------------------------------------------------
B.9. Calling Server Procedures: File missing from project
The sample project \vabasic\samples\udf\credit\credit.prj does not
load in file \vabasic\utility\qtest\qtutil.bas. Do a File => Add File
of qtutil.bas after loading this project.
------------------------------------------------------------------------
C. Database Access
------------------------------------------------------------------------
------------------------------------------------------------------------
C.1. Database Access: CLI SQLProcedures function
The CLI SQLProcedures function cannot be used to access information from
the DB2CLI.PROCEDURES table that VisualAge for Basic has inserted.
Attempting this results in a CLI0166E PARMLIST syntax error, because
the VisualAge for Basic parameter descriptions currently use Basic
datatypes, which are not supported by CLI. You can use the CLI procs
sample to access only information that respects the restrictions
documented in the DB2 for OS/2 CLI Guide and Reference, Appendix G.
See the vabasic\samples\cli\procx.prj sample for how to bypass this
restriction.
------------------------------------------------------------------------
C.2. Database Access: DB2 not started or CONNECT RESET missing
If a message appears in the Code Window saying "DB2 is not started or a
CONNECT RESET statement is missing," and you have verified that DB2 is
started and you have appropriate CONNECT RESET statements in place, exit
VisualAge for Basic and then start it again.
------------------------------------------------------------------------
C.3. Database Access: Sample code not working
The descriptor form of the CALL embedded SQL statement does not work.
This call has been commented out of the sample
vabasic\samples\embed\outcli.prj.
On a Windows NT Server, the sample vabasic\samples\cli\outcli.prj does
not return the correct result from the stored procedure.
------------------------------------------------------------------------
C.4. Database Access: Forms requiring manual resize
A number of sample programs contain forms that display right only after
the user has resized the form manually. Examples of such samples are
found in \vabasic\samples\cli, \vabasic\samples\embed, \vabasic\samples\
sproc, and \vabasic\samples\udf subdirectories.
------------------------------------------------------------------------
D. Language Elements
------------------------------------------------------------------------
------------------------------------------------------------------------
D.1. Language Elements: Lock and Unlock statements
The Lock and Unlock statements are not supported.
------------------------------------------------------------------------
D.2. Language Elements: Title Property - not working in a generated
executable.
The Title property does not work properly when set in a generated
executable.
------------------------------------------------------------------------
E. Miscellaneous
------------------------------------------------------------------------
------------------------------------------------------------------------
E.1. Miscellaneous: Creating a SOM object on a form
When you create a SOM object on a form, VisualAge for Basic may crash.
Details: when you select a SOM class from the Component Catalog, and use the
Toolbox to create a SOM object on a form, VisualAge for Basic may crash.
SOM objects that may cause this error include: AttributeDef, ConstantDef,
Contained, ExceptionDef, InterfaceDef, ModuleDef, OperationDef,
ParameterDef, SOMDClientProxy, SOMMSingleInstance, and TypeDef.
Actions that may cause this error include:
-- Selecting the object on the form and clicking on the Delete key.
-- Going to the File menu and selecting New Project
-- Going to Project Window Run Menu and clicking on Run, then on End
------------------------------------------------------------------------
E.2. Miscellaneous: Renaming DLLs for Microsoft Visual Basic
If you plan to use Microsoft Visual Basic 4.0 with IBM VisualAge for
Basic client on Windows NT, you will need to rename the following DLLs
located in the vabasic\bin directory to a backup name (for example, by
replacing the DLL extension with BLL):
CTL3D32.DLL MSVCR40.DLL
MFC40.DLL MSVCRT40.DLL
MFCO40.DLL OLEPRO32.DLL
------------------------------------------------------------------------
E.3. Miscellaneous: The Two-Dimensional Graphics Part
The Two-Dimensional Graphics Part (shipped with the OpenDoc
runtime), will crash VisualAge for Basic if the "link" pages
are selected from the OpenDoc Properties notebook. The link
pages are not active, so this is not a functional problem.
------------------------------------------------------------------------
E.4. Miscellaneous: The OpenDoc Cookbook part
The OpenDoc Cookbook part is not recommended for use in
VisualAge for Basic at this time.
------------------------------------------------------------------------
E.5. Miscellaneous: The OpenDoc MultiMedia parts
The OpenDoc MultiMedia parts (shipped with the Developer's
Connection) work best if they are first contained within
other container parts. For example, instead of using the
Video Part as the root part of an OpenDoc document, use a
container part as the root and embed the Video Part in it
(example container parts include the Page Layout and Text
Parts shipped with the OpenDoc runtime or the Container Part
shipped with the Warp Toolkit). This is also a useful tip for
other OpenDoc parts that do not behave as expected.
------------------------------------------------------------------------
E.6. Miscellaneous: Generating executables from projects building
Stored Procedures and/or User-Defined Functions
If a project thats calls a stored procedure or user-defined function is
also the project that builds them, then there will be error messages
when building and/or executing the project as a generated executable.
The following workaround can be used to build an executable client
application:
1) Start VisualAge for Basic and load the project.
2) Run the application.
3) Stop the application.
4) In the project window, remove any files in the Stored Procedure
or User-Defined Function categories (do NOT save the project).
5) Build an executable file.
6) Exit VisualAge for Basic (do NOT save the project), and run the
generated executable.
------------------------------------------------------------------------
E.7. Miscellaneous: Font Migration
If a font name specified in a VisualAge for Basic application is not
installed on the machine loading or running the application, then the
font will be changed to the default font of the operating system (for
example, System font for Windows NT, System Proportional font for OS/2).
One side effect of this behavior is that invalid font names are not
flagged as errors in the Property Editor or the Code Editor.
------------------------------------------------------------------------
E.8. Miscellaneous: VBX/OCX Migration
Users of Microsoft Visual Basic 3.0 and VBX controls may be able to
migrate their applications into VisualAge for Basic and use the
equivalent OCX. Follow these steps:
1. Save any .FRM files as text files (not binary files) in Microsoft
Visual Basic 3.0.
2. Start VisualAge for Basic for Windows NT
3. In the Project window, select Window ==> Component Catalog.
4. Select the OLE components to be used in the application. As a
component is selected, any needed icons will be placed in the
ToolBox window.
5. Create an instance of each added OCX in Form1.
6. Open the Property Editor. Select each OCX instance on Form1 and
note the class name which is enclosed in () after the name of the
component in the selection window of the Property Editor.
7. Using a text editor (NotePad, for example), inspect the .FRM files
for the class names of the VBXs used in the application. Some VBX
vendors rename the class name in their OCX versions of their
controls. If the class names are different, edit the .FRM file to
use the OCX class names instead of the VBX class names. Instance
names (the Component.Name property) do not need to be modified.
8. Save any modified files.
9. Remove the Form1 modified in VisualAge for Basic from the untitled
project choosing Selected ==> Remove in the Project Window.
10. In the Project Window, select File ==> Add File to individually load
each file of the application.
11. Choose Selected ==> Show Form to view each form in Design Mode. Make
sure that each component, including the migrated OCX component
instances, is displayed in each form as it appeared in Visual Basic
3.0.
12. Choose File ==> Save Project As to create a .PRJ file that can be
used to load the converted project into VisualAge for Basic.
------------------------------------------------------------------------
E.9. Miscellaneous: OCXs with variable number of arguments
This beta does not support OCX controls which accept a variable number
of arguments in a method call.
------------------------------------------------------------------------
E.10. Miscellaneous: DBCS Font Name
Statements in the Sub main in samples\db2api\util.bas and in
samples\cli\samputil.bas set the font name for the iOutput form
to "Courier" so that output can be displayed in aligned columns.
In a DBCS environment, the Courier font cannot display double-byte
characters; therefore, DBCS users should change the font name
MINCHO or some other DBCS font.
------------------------------------------------------------------------
E.11. Miscellaneous: DBCS Data in CLI calls
When passing arguments that contain DBCS characters in CLI calls, be
sure to use byte counting, not character counting, functions like LenB,
InStrB, MidB.
------------------------------------------------------------------------
E.12. Miscellaneous: Options Interface
For this beta, one should perform end user customization features
available for the VisualAge for Basic development environment by making
settings directly in the vabasic\config\instpref.ini file. The Options
menu of the Project Window is not working for Interpreter, Project,
and Environment settings. See Appendix A., "Customizing VisualAge for
Basic Interfaces", in the VisualAge for Basic Programming Guide for
more details.
------------------------------------------------------------------------
E.13. Miscellaneous: Tutorial Problems
In tutorial 3 pg 48, the user needs to File => Add File employee.bas
after loading the tutor3.prj.
In Tutorial 4, the call to sub Clear_All_TextFields should be to sub
Clear_All_Text_Fields.
In Tutorial 5, the Add New and Update buttons in the ODBC3.PRJ project
are not working correctly.
In tutorial 6 pg 2, The directory where the tutorial is located
is incorrect (Should be VisualAge_dir\samples\tutorial\tutor6).
Another directory, bitmaps, contains all of the bitmaps
the program is looking for them in that directory under tutor6
(... \tutorial\tutor6\bitmaps).
------------------------------------------------------------------------
E.14. Miscellaneous: Installing over previous Beta
The Install program for VisualAge for Basic includes a Delete option.
This delete option is not working completely in this Beta. Users may
need to delete files and directories using a file manager program if
reinstalling over the earlier beta release or when reinstalling this
beta release.
------------------------------------------------------------------------
E.15. Miscellaneous: Required disk space during Installation
When installing VisualAge for Basic for OS/2, the disk space requirements
displayed during in install program depict the requirements once the
installation is completed. During the installation, however, temporary
directories and files are created to "unpack" product files. Please
allow about 1.5 times the suggested disk space to be available during
the installation.
------------------------------------------------------------------------
E.16. Miscellaneous: Unexpected End of File Syntax Errors
When running VisualAge for Basic on Windows NT/95, you may get an
error message "unexpected 'end of file'". This will occur in some
files which were saved using a text editor that uses Ctrl-Z as an
End of File character. Deleting the line flagged with the error
will correct the problem.
------------------------------------------------------------------------
F. Run-Time Problems
------------------------------------------------------------------------
------------------------------------------------------------------------
F.1. Run-Time Problems: Restriction on dynamic array passing
Because DB2 cannot determine the size of a ReDim-ed array during run
time, it can only handle the default value of MAXARRAYSIZE.
On OS/2 and Windows NT clients, if the array being ReDim-ed is larger
than the default value of MAXARRAYSIZE, it will cause a SQL0822N error
("The SQLDA contains a data address or indicator variable address which
is not valid.").
Solution: VisualAge for Basic provides an environment variable called
MAXARRAYSIZE. Its default values are 64KB on AIX, 10KB on OS/2, and
SQLMAXBLOB on Windows. Set this environment variable to be the same or
larger than the array's ReDim-ed size. For example:
/* OS/2 clients: foo.bas module */
subroutine foo()
Dim array1() as integer
Redim array1(10, 2000);
/* End of subroutine foo() */
In this example, the array's ReDim-ed size (10 x 2000 or 20,000) is
larger than the default value of MAXARRAYSIZE on OS/2 (10KB), so you need
to set the MAXARRAYSIZE environment variable to 20,000 or greater.
To improve performance, you can set MAXARRAYSIZE less than the default
value, as long as it is as large or larger than any ReDim-ed arrays in
your program. Here are the maximum sizes for any ReDim-ed arrays in your
program: OS/2 = 27 KB (27,648 bytes), Windows NT = 32KB
(32,768 bytes).
------------------------------------------------------------------------
F.2. Run-Time Problems: ScaleWidth/ScaleHeight properties
If a program performs a resize in its code (in other words, changes the
value of the Width and/or Height property), VisualAge for Basic does not
update the ScaleWidth and ScaleHeight properties.
If a user manually resizes a form, VisualAge for Basic updates the
ScaleWidth and ScaleHeight properties correctly.
If the ScaleMode is set to a value different than 1 (Twips), then the
ScaleHeight and ScaleWidth values may be incorrect at runtime.
------------------------------------------------------------------------
F.3. Run-Time Problems: .FRM file extension
Form filenames must have the extension .FRM if saved in the Microsoft
Visual Basic 3.0 format (Visual Basic 4.0 forms cannot be loaded into
VisualAge for Basic). Form filenames must have the extension .I if saved
in the IBM VisualAge for Basic format. The .FRM format files must be
saved as text prior to loading in VisualAge for Basic (Save As Text is an
option in the Save File As dialog of Visual Basic 3.0).
------------------------------------------------------------------------
F.4. Run-Time Problems: Running executables while VisualAge for Basic
is running.
On OS/2, one cannot run a generated executable while VisualAge for Basic
is running.
------------------------------------------------------------------------
F.5. Run-Time Problems: Generating working executables
If the application contains an embedded image (example,
the Picture property has been set in the Property editor), then
VisualAge for Basic will not generate a working executable unless the
project has been run in the development environment prior to generating
the executable. The project also must be saved prior to generating an
executable.
So the proper sequence is:
1) Load a project
2) Make any desired modifications
3) Save the project
4) Generate an executable
5) If on OS/2, exit VisualAge for Basic
6) In a command window, run the generated executable.
------------------------------------------------------------------------
F.6. Run-Time Problems: Calling external functions
On OS/2, all function calls made to external functions must be made to
DLLs which use the _system linkage convention. DLLs which use the
_optlink system linkage convention are not supported in this beta.
------------------------------------------------------------------------
G. User Interface
------------------------------------------------------------------------
------------------------------------------------------------------------
G.1. User Interface: Mnemonic characters not working on OS/2
On OS/2, if Fixpack 17 has not been applied, the mnemonic character in
the caption of labels and buttons (check box, option, and command
buttons) may not appear underlined for some fonts and fontsizes.
------------------------------------------------------------------------
G.2. User Interface: Unload Statement
You are unable to reload a form that was previously unloaded by a
subroutine within the unloaded form. Unloading a form from a
subroutine in another form or module will allow it to be reloaded.
------------------------------------------------------------------------
G.3. User Interface: Screen Resolution Migration
If a form in an application written on a machine with one screen
resolution is migrated to a machine with less screen resolution, and
the form's width and/or height now exceeds the screen size, then an error
occurs when displaying the form in design and run modes.
------------------------------------------------------------------------
G.4. User Interface: Font changes
The default font in VisualAge for Basic for OS/2 has been changed. A
number of the samples have not been updated to better support this
larger font, so some captions no longer fit in some components.
========================================================================
7. COPYRIGHT NOTICE AND TRADEMARKS FOR THIS README FILE
(C) Copyright International Business Machines Corporation 1996.
All Rights Reserved.
AIX, DB2, DB2/2, DB2/6000, IBM, and OS/2 are trademarks of International
Business Machines Corporation.
Microsoft, Windows, and the Windows 95 logo are trademarks or registered
trademarks of Microsoft Corporation.
Other company, product, and service names, which may be denoted by a
double asterisk (**), may be trademarks or service marks of others.
========================================================================