I’m quasi-killing time migrating from 9.1 to 11.1. I’ve made my handful of template/inc modifications and mostly comparing generated code to see if I’ve missed something.
In the process, I’ve seen some changes in the base templates. Most seem to be changing the order of the generated code a bit. A few corrections. Regression with the description comment for a dropdown queue is now missing. Nothing concerning so far.
But then I see a change that makes no sense and wonder why. Here’s the generated validate record code for an ABC process template:
ThisProcess.ValidateRecord PROCEDURE
ReturnValue BYTE,AUTO
lRecordStatus BYTE,AUTO
CODE
ReturnValue = PARENT.ValidateRecord()
CASE CLIP(vw_13:SSN)
OF '' OROF '0' OROF '111111111' OROF '555555555'
RETURN Record:Filtered
END
lRecordStatus = ReturnValue
RETURN ReturnValue
Here’s a plain one with the embeditor junk:
ThisProcess.ValidateRecord PROCEDURE
ReturnValue BYTE,AUTO
! Start of "Process Method Data Section"
! [Priority 3500]
lRecordStatus BYTE,AUTO
! [Priority 8500]
! End of "Process Method Data Section"
CODE
! Start of “Process Method Executable Code Section”
! [Priority 2500]
! Parent Call
ReturnValue = PARENT.ValidateRecord()
! [Priority 5050]
lRecordStatus = ReturnValue
IF lRecordStatus NOT=Record:OK THEN RETURN lRecordStatus.
! [Priority 6600]
ReturnValue = lRecordStatus
! [Priority 9000]
! End of “Process Method Executable Code Section”
RETURN ReturnValue
The lRecordStatus local variable was added after 9.1 and serves no useful purpose from what I can tell.
I don’t see any comments in the templates. I’d like to go back to the cleaner code but would prefer to not break some weird edge case that needs two local vars.
Any ideas on what is going on here?