Bug #1711
message statement expression evaluation
0%
History
#1 Updated by Greg Shah over 13 years ago
- Start date deleted (
10/29/2012)
-------- Original Message --------
Subject: task#9 - message stmt expression evaluation
Date: Mon, 07 Dec 2009 15:47:51 +0200
From: Constantin Asofiei <ca@goldencode.com>
Reply-To: ca@goldencode.com
To: Greg Shah <ges@goldencode.com>, "Faulhaber, Eric" <ecf@goldencode.com>
Hello,
This one is about the fact that errors in message stmt expression
evaluation are displayed without throwing an exception. I don't have
much about this, as I didn't dig deeper in this issue. Mainly, this
issue is about cases like this:
def temp-table tt1 field f as int.
create tt1.
assign tt1.f = 1.
release tt1.
message "tt1.f:" tt1.f. /* stmt#1 - shows "** No tt1 record is available. (91)"
error message and then the "tt1.f:" message /
message "done". / stmt#2 - is executed, as stmt#1 doesn't generate an ERROR */
Normally, when a field for a buffer which doesn't reference any records
is accessed, it will generate an ERROR. In case of message statement, it
seems that, during expression evaluation, all expressions are evaluated
first and if one fails with an ERROR, the expression doesn't get
displayed. What needs to be done first is:
- determine if a complex expression which is supposed to generate more
then one error message generates only one error message (and if yes,
which one) or all the error messages for all expression parts. If only
one ERROR condition is generated for the sub-expression, determine if
the other sub-expressions are executed (i.e. function/procedure calls)
or not.
- determine other cases which generate an ERROR condition during
expression evaluation
Thanks,
Constantin
#2 Updated by Constantin Asofiei over 13 years ago
Greg,
This duplicates #1703
#3 Updated by Greg Shah over 13 years ago
- Status changed from New to Closed
I'm closing this because it is a duplicate of #1703.