Bugfixes
A large number of problems in the area of forms have been
addressed in this release. Most problems with forms and graphic
reports are due to the opening of invalid forms or reports
(mostly programmatically generated ones). Here is a list of
some of the fixes in this area:
In the situation where a gap was found in the data-entry order
and the form object prior to the gap was set to read-only,
Superbase could hang when attempting to tab backwards through
the object.
A right click on detailblock scrollbars gave an "Invalid
object type" in Process(). This now causes a Form right
click event.
Under certain circumstances, a detail block containing linked
files was messing up the Form Designer and causing a GPF.
General fixes in the area of trapping for and dealing with
invalid forms.
GPF occurred when opening a QBE query via the File.Open.Query
menu item in the Report Designer.
GPF when running a report that was the result of a converted
QuickReport query that included grouping and totals.
A display artifact that occurred when a click on a Listbox
was made on a form in data-entry that caused a textbox to
blank out.
The AbsolutePosition property was made persistent (stored)
in 3.5, but was not being generated when the form was saved
as a program.
The VerticalPosition and HorizontalPosition properties of
a DisplayTextbox were not being output when the form was saved
as a program.
Various Long File Name (LFN) errors from 3.5 were resolved
This included:
QuickReport and Crosstab to text file resulted in a file
name of ~sfn~~11.txt.
Saving a program file to a device that does not support long
file names from an operating system that does support long
file names saved the file as ~sfn~~11.sbp.
Saving a QBE query to an SBQ resulted in ~sfn~~11.sbq.
In the Dialog Editor if parentheses () were in the text,
incorrect code was generated.
DiskFile object had an OemToAnsi error in the LongFileName
property.
In the Import dialog the Open File dialog had a New Window
checkbox that was ignored.
The checkbox was inappropriate and was removed.
Menu accelerators in subtrees of disabled upper-level menus
were still functional.
Menu accelerators now only work if the whole tree above is
enabled.
Menu and IconBar code generation reesulted in a program that
wouldn't run twice, because it made an invalid Delete() call.
The code has been modified to work properly.
If the thousands separator was set to a space character,
it was not being preserved in the INI file.
Now any string which contains a space or embedded double
quote will be stored in the INI file surrounded by double
quotes.
SENDKEYS was reported as not working with Win32 programs.
After careful analysis it was determined that SENDKEYS will
only work when sending control sequences (such as Ctrl+C)
to the main window of a Win32 application, but sending keystrokes
to a subwindow of the Win32 application will fail, since it
is not supported by Win32.
ERROR 127.
Occasionally the error number 127 (file is busy) would be
returned when a different problem had occurred.
ERROR 174.
SBLOCK now manages system resources better, so that some
systems that might have been experiencing error 174 (Can't
lock database file) won't be having this problem.
Accessing UnreadMessageCount or calling GetMessage() in MS
Exchange hangs.
MS Exchange problems when reading the unread message count
or getting a message have been resolved. It turns out that
MS Exchange is returning an undocumented return value and
Superbase was waiting for the valid return value to be returned.
Visible property of the DialogIcon object did not work and
the icon did not redraw if moved.
SDI mode appeared to not work with ComboBox objects on a
form.
It appeared that the combobox could not accept focus when
running in SDI mode unless focus had been placed on a textbox
first.
PRINT CURRENT USING no longer shows dialog when all numeric
parameters are 0
PRINT CURRENT USING now has optional last parameter known
as ASK and if you specify the other parameters they will be
used as defaults on the dialog. Similar to the ASK on a SELECT.
|