Page 1 of 1

Why use MESSAGE in Classes

PostPosted: Wed Oct 25, 2006 10:00 pm
by Gilbert
Hi All,


Why does certain classes, like TDATABASE, use the syntax:

MESSAGE Delete METHOD _Delete()

why not simply use:

METHOD Delete()

Regards
Gilbert Vaillancourt :o

PostPosted: Wed Oct 25, 2006 10:37 pm
by Antonio Linares
Gilbert,

Because Delete() is a reserved function name so it can not be used.

PostPosted: Thu Oct 26, 2006 2:33 am
by Gilbert
Hi Antonio,


Thanks for your answer. It make sense.

I have another one. I am trying to figure out how does TDATABASE class create the object for each field of a database record. I was looking at the class and could not figure out how it does that. Can you tell me wich portion of code generates the field objects.

Regards :?

PostPosted: Thu Oct 26, 2006 6:57 am
by Enrico Maria Giordano
Have a look at OnError() method. By the way, the fields objects are not generated at all.

EMG

PostPosted: Wed Nov 01, 2006 11:17 pm
by Gilbert
Hi Enrico,


You`re right, tho OnError METHOD handles the fields content to return when an error occurs in the class by doing cString := oDbf:fieldname or
oDbf:fieldname := cString

Doing some test I also figured out than an `_` is passed in front of the fieldname when doing oDbf:filedname := cString, limiting the lenght of the fieldname to 9 positions. Does that mean that the field name of the database must not have more than 9 positions ?

This limitation seems to be only for FiveWin + Clipper. Am I right ?

Regards

PostPosted: Thu Nov 02, 2006 7:54 am
by Antonio Linares
Gilbert,

Yes, it is a Clipper limitation. With Harbour there is no such limitation.

PostPosted: Tue Nov 07, 2006 8:56 pm
by Gilbert
Hi Antonio,


Thanks

I would like to know what possibility I have to implement an idea of mine.

The OnError METHOD receives an cFieldName an nError parameters. Is nError always the same or could it be different ? Where is nError comes from ?


Regards