Subject Re: report canrender
From Mervyn Bick <invalid@invalid.invald>
Date Thu, 6 Dec 2018 16:36:11 +0200
Newsgroups dbase.getting-started

On 2018-12-06 2:23 PM, Akshat Kapoor wrote:
> On 06/12/2018 09:23, charlie wrote:
>> Hi... I am having trouble with this:
>>
>> function TEXT9_canRender()
>>          this.text =
>> this.parent.text6.text()+this.parent.textadditamt1.text()
>>        return true
>>
>
> I might be wrong (Most probably I am wrong)

Join the club.  I can't begin to count then number of times I've said
"can't be done" and then have someone immediately prove me wrong.

>
> try
>
> this.text = val(this.parent.text6.value) +
> val(this.parent.textadditamt1.value)

Charlie is using oRef.text() for both text6 and extadditamt1.  The use
of the () CALL operator indicates that the two text properties contain
codeblocks which need to be executed so as to return a value.  Depending
on the codeblock the value could be numeric, a string or even perhaps a
date.

If both values are numeric Charlie's code would save the sum to text9's
text property.  If one text property (or both) returned a string
Charlie's code would concatenate the two values.

If the contents of a text property is not a codeblock using the () CALL
operator should generate an "Expression expected" error.

Charlie is not reporting an error or a concatenation.  He reports that
on occasion text9.text is blank.  The most likely cause for the blank
text is a NULL value tucked in there somewhere.  Adding NULL to anything
results in NULL.

The text6 object doesn't have a value property.  If it's text property
contains a codeblock val(this.parent.text6.TEXT) would return an
"Expecting character" error.

Mervyn.