This is the way I understand it:
ONE includes a “Natural for Eclipse” run-time. In Eclipse you “build” a project, then “run” it. In Natural terminology, this is a Catall then EXecute. Eclipse has no understanding of the concept of compile-and-go, that is, Natural’s Run command.
Dynamic code generation cannot be tested with ONE’s local run-time. You can create a driver (your DYNM-P01) and a dynamic module (your DYNM-P02), but won’t be able to build the project because of syntax errors in the second module. An without a successful build, you can’t run.
To demonstrate, change the & variables to + variables in DYNM-P02, and you’ll be able to build and run. Of course, you don’t get the results you want, but it shows that the RUN statement is acting as an EXECUTE, just as the Eclipse RUN command is really an EXECUTE. (This explains the situation you describe at the end of your latest posting: “the RUN Statement should not be using the object”.)
ONE does support dynamic code generation, but the code must be uploaded to a server. There you would STOW (or SAVE) DYNM-P01 and save DYNM-P02, as you expected. Since the server is mainframe/LUW, you could issue an EXECUTE or RUN of DYNM-P01 from within ONE.
Unfortunately, the big difference between the licensed version and the Community edition of ONE is that CE does not include the connection to NDV.