Project

General

Profile

Bug #2049

SET statement and NO-ERROR clause

Added by Constantin Asofiei about 11 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
Normal
Start date:
02/25/2013
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:

om_upd20130225d.zip - Testfile (600 Bytes) Ovidiu Maxiniuc, 02/25/2013 11:15 AM

om_upd20130225e.zip (31.8 KB) Ovidiu Maxiniuc, 02/25/2013 12:09 PM

History

#1 Updated by Constantin Asofiei about 11 years ago

Conversion fails in a case like

def var ch as char.
set ch no-error.

The NO-ERROR clause seems to be at fault, as without it, conversion goes through.

Please test with the other frame related UI statements, like DISPLAY/UPDATE.

#2 Updated by Ovidiu Maxiniuc about 11 years ago

  • Status changed from New to WIP

#3 Updated by Ovidiu Maxiniuc about 11 years ago

  • Status changed from WIP to Review
  • File om_upd20130225d.zip added
  • File om_upd20130225c.zip added

Looks like the N0-ERROR clause was treated as an widget in the list of parameters of the statements (SET, ASSIGN, =, DISPLAY, UPDATE, etc) that have in theirs syntax the N0-ERROR option.

#4 Updated by Greg Shah about 11 years ago

It is not clear to me whether we should have a section like this:

<rule>type == prog.kw_no_error
   <action>isWidget = false</action>
</rule>

instead of the current approach. BUT, for now let's go with your implementation.

Please note that you have an extra rules/ path segment in your zip. Please remove that and re-upload the update. Then we will go into conversion testing.

#5 Updated by Ovidiu Maxiniuc about 11 years ago

Added the new archive, I will remove the older, unneeded one.

I believe that isWidget is used as a flag when scanning the widgets of the statement. As long as NO-ERROR occurs after them, I believe that your proposed solution is better.

#6 Updated by Ovidiu Maxiniuc about 11 years ago

  • File deleted (om_upd20130225c.zip)

#7 Updated by Greg Shah about 11 years ago

But since I haven't tested that assumption (that no-error always will appear at the end), I think it is best to go with your approach. The parser allows us to match no-error in any location in many (all) of the statements. I don't know if the 4GL allows it in all (or any of) those cases.

I'll report on the conversion testing soon.

#8 Updated by Greg Shah about 11 years ago

Conversion testing has passed. I have checked it in as bzr revision 10102.

#9 Updated by Greg Shah about 11 years ago

  • Status changed from Review to Closed

#10 Updated by Eric Faulhaber about 11 years ago

  • % Done changed from 0 to 100

#11 Updated by Greg Shah over 7 years ago

  • Target version changed from Milestone 4 to Conversion Support for Server Features

Also available in: Atom PDF