|
|
 |
Home |
|
|
|
|
|
Ok so you're the proud new downloader of the Clarion 5.5h
(also known as Clarion 5.5.08) release, and now you're getting lots of
compiler errors. You suspect your 3rd Party Products. Especially the CapeSoft
ones. Well here are the most common upgrade problems reported and their
solutions...
|
Effects : C5.5f Legacy / C5.5g Legacy / C5.5h Legacy
In the \C55\Template\Cw.Tpl file the following line:
C5.5F :
#SET(%CWTemplateVersion,'v2.003')
C5.5G / C5.5H :
#EQUATE(%CWTemplateVersion,'v2.003')
Has been changed to:
C5.5F :
#SET(%CWTemplateVersion,'v5.5')
C5.5G / C5.5H :
#EQUATE(%CWTemplateVersion,'v5.5')
This is incorrect, and is a regression.
Fix : Edit the file and restore the original setting as described
above.
Status : This regression seems to be considered an improvement
by SV and won't be fixed. Unfortunately compatibility with C5.5e
and earlier makes changing existing templates messy.
|
|
|
|
|
|
|
Affects :
C5.5H (c5.508)
If you have a text control as the first control
on a tab and prop:skip for control = 1.
Then as the window opens the application freezes - ThisWindow:TakeEvent
fires repeatedly on event 257 for that control.
Solution :
Turn off the SKIP attribute, or make sure another control is first on the tab. |
|
|
|
|
|
|
Affects : C5.5H (c5.508)
In 5.5G and earlier : On a window where a button is
set as the Default Button, and a user presses "Enter",
while on an Entry field, then the Event:Accepted for the entry field
is generated, followed by an Event:Accepted for the default button.
In 5.5H if the Default button is set as
Transparent,
or Flat (and possibly other things - I don't know) then in
the above situation the event order is reversed. ie the Event:Accepted
for the button is triggered before the Event:Accepted for the entry
control.
Severity : Fairly Serious. Code will execute out of
the order anticipated. This can lead to strange bugs in your program,
and fairly subtle, hard-to-detect errors. The main problem
with this bug is that it may affect every window with a Default
button, so it's a lot to work to check.
However the most common use for a Default button is
the Ok button on a Form. In ABC this simply generates an Event:Completed.
So the code on your entry field will still execute before the record
is saved.
Solution : George
Lehmann has developed a freeware global template that works around
this issue. Contact him for details.
(george@hbcinc.com) |
|
|
|
|
|
|
Affects :
C5.5H(c5.508)
(Reported by Ben Kim) : It appears if you have the
"Default" attribute on the OK button checked and the cursor
is in a REQUIRED field you have to hit ENTER twice for it to save
the record. If you are NOT on a REQUIRED field, you can hit
ENTER and have it save the NORMAL way.
|
|
|
|
|
|
|
Affects : C5.5a through C5.5h
The most serious complication seems to be the change
in the name of the Redirection file. The redirection file lives
in your \c55\bin directory. It tells Clarion where to find all the
file types that it needs. This is used a lot by 3rd party installs
so that the 3rd party stuff, and Clarion's stuff can be kept separate.
In Clarion 5.5 the Redirection file was called Clarion5.Red - in
5.5a it's called C55EE.Red in Enterprise Edition installs and (presumably
although unconfirmed) C55PE.Red in Professional Edition installs.
Fix number 1 (Short Term): Go to your Setup
menu, Edit Redirection File. Note the name (and location) on the
Caption bar. Typically it will be \C55\Bin\C55EE.Red . Go
to the location (ie \C55\Bin), make a backup of
C55EE.Red
and then copy Clarion5.Red over C55EE.Red. ie
Copy Clarion5.Red C55EE.Red
Fix number 2 (Long Term): Download, and Install, an update
of the Clarion 5.5 3rd party products that you own. These installs
will need to be updated (and most 3rd party suppliers are likely
to do this in a very short period of time after the 5.5a release.)
Status : This is not a bug, just a change, so will not alter
in future releases of Clarion 5.5.
Other CapeSoft Downloads available : Makeover;
TickerTape ;
Tearoff;
Multi-Proj ;
Winevent ;
File Explorer;
Special Agent ;
Ezhelp ;
File Manager 2 ;
NetTalk ;
Secwin ;
Insight Graphing
|
|
|
|
|
|
|
Affects : C5.5a through C5.5h
In 5.5a the prototyping for the methods has to be "Strong".
In Clarion 5.5 the following prototype is acceptable;
MyClass.MyMethod (Long)
In 5.5a this is not acceptable, and must be replaced with
MyClass.MyMethod (Long p)
Fix : The fix must be implemented by the person who made the
class. So the only solution is to contact your 3rd party supplier
to see if an update is available.
Status : This is not a bug, just a change, so will not alter
in future releases of Clarion 5.5.
Other CapeSoft Downloads available : Makeover
|
|
|
|
|
|
|
Thanks to GusCreces
for detailing this one
Affects : C5.5a through C5.5h
This doesn't just affect 3rd parties but will affect your Embed code
as well. It's not a bug, but rather the result of the compiler being
improved and (rightly) overcoming ambiguities.
In Clarion 5.5 the following was legal;
BRW1.Q.MyField
However in Clarion 5.5a this needs to be changed to
BRW1.Q.PRE:MyField
If you are using the WHO command to build a Prop:Sql then you probably
need to check your code. In this case you probably won't get a compile
error.
Fix : You should get an error at compile time with this, so
it's no big deal, simply change the code to add the extra prefix.
Status : This is not a bug, just a change, so will not alter
in future releases of Clarion 5.5. |
|
|
|
|
|
|
These are issues in Clarion 5.5a which have been corrected
in 5.5b. They are included here for completeness sake.
Sheet Wizard Colors
This is a problem in your own application, as well as on
3rd party windows, and may be a big enough show-stopper to prevent
upgrading to 5.5a at all.
If you have a Sheet control on a Window, that has the WIZARD attribute
set (in other words it doesn't display the Tab headings), and a color
for the Sheet (OR A color on a Tab, OR a Color for the Window itself)
has been set, then most of the controls on the Wizard will be invisible.
In other words, this makes the Wizard procedure completely useless.
Maybe you think you have no Wizard procedures, but it's pretty common
for Forms to have Sheet controls with the Wizard attribute on.
The really good news though is that this problem is in the Clarion
Runtime Library. In other words even without using 5.5a you may encounter
this issue at a client's site. If they happen to have another program
there using the Clarion 5.5a runtime DLL's then your perfectly working
program may have a problem.
This problem particularly affects Makeover since Makeover is in the
habit of coloring Windows, Sheets and Tabs.
Generic Fix : None known at this time. Roll back to Clarion
5 Gold , or upgrade to 5.5b recommended.
Specific Fix : If you only have a very small number of windows
affected then the best solution seems to be to either click off the
Wizard attribute, or replace the Sheet control with a GROUP control,
and replace the TAB controls with PANEL controls. You will however
need to manually hide & unhide the Panels rather than SELECTing
a Tab Control.
Status : This bug is fixed in the 5.5b update. An update to
5.5b is recommended.
New CapeSoft Downloads available : Ezhelp
ABC Compliant Class change
In Clarion 5.5 the following property declaration is acceptable
inside an ABC compliant class;
Packet Group(Net:PacketType).
In 5.5a this is no longer acceptable. It needs to be changed by the
3rd party supplier to;
Packet Group(Net:PacketType)
End
Update : The above makes it incompatible
with Clarion 5 and Clarion 5.5 Gold.
Failure to do this means that some of the classes defined in the header
file will be missing from the internal ABC classlist. ie Classes will
not be included in drop-downs or EXP files. (And probably missing
from other places as well.)
Fix : The fix must be implemented by the person who made the
class. So the only solution is to contact your 3rd party supplier
to see if an update is available.
Status : This bug is fixed in the 5.5b update. An update to
5.5b is recommended.
Other CapeSoft Downloads available : NetTalk |
|
|
|
|
|
© 2012 CapeSoft Software CC
|