Ever so rarely often, an RDML function will fail to check in from Visual LANSA to the iSeries for no apparent reason. Sometimes the root cause is the Double Green Error. I just found one of these this week.
You can diagnose this issue by making sure “Produce DDS/RPG Listing” is selected and checking in the object again. Review the spooled output and you will find the following code including the CPD7850 and CPD7882 error messages.
The RPG compiler doesn’t like the second Green. Not even a little. The Green attribute is usually attached to hard coded text on the screen and not a field. If you remove the hard coded text, the rogue Green will attach itself to another element on the same screen. If you get rid of the screen, it will attach itself to an element of another screen in the same function. It’s a nasty bugger!
To remove this annoyance, change the color attribute of the hard coded text string to blue and then save, compile and check in. Amazingly, the check in succeeds. Now change the text back to green and save, compile and check in.