In the quest towards modern applications, decoupling your logic is key for achieving flexibility and maintainability.
This technique is much better than sending back an "error code" in a parameter and hopping that the calling program checks it after the call. I don't like to create components that need to be aware of who is going to use them or that deppend on external documentation, because I have found that it creates tight coupling.
This technique allows me to create ILERPG methods (aka.procedures) that would "throw" an exception messages so I can be sure that the calling program is aware of the exception and obligated to handle it accordingly.
I'm also signing @jacobus' wish list and hope to soon see this features as native functions of ILERPG.
Nice article!

This PowerUp blog entry was written by Isaac Ramírez, a software engineer at BAC Credomatic Network. Isaac is passionate about research and development in different technologies and languages on the IBM i platform. A few years ago, when I’d just started learning RPG, I felt the language was mis...