We have two sites that we support, the system is written in ca plex backend is RPG and the front end is WINC.
1st Site : We upgraded to AS400 V7R1 Our development also will be on V7R1.
2nd Site : Is still running on AS400 V6R1. Will upgrade in future but we still need to make changes.
What we have noticed in testing is that when compiling on V7R1 and trying to restore the objects from V7R1 to V6R1 AS400 (RPG objects) it fails.
We contacted IBM and they said that nothing changed in the RPG compilers and it should work.
Is there a setting in Plex gen and build or somewhere to specify the operating software target system to make the plex generated code backwards compatible?
If there's no setting for this we will have to compile on V7R1 promote to live system and also compile on V6R1 and then promote to our second site live system.
We are currently on Plex 7.2.
Try rebuilding the RPG function by adding the TGTRLS(V6R1M0) option value to the CRTRPGPGM command of YKT0001 message in the YKTRCMSG message file in the IBM i V7R1 machine's Plex product library(PLEX720).
The TGTRLS compiler option is not specified at shipment of Plex.
Thanks, I will try that and will let you know if it works, It sounds Exactly what I wanted.
We have changed the CRTRPGPGM and CRTRPGMOD default target release to V6R1M0. The message YKT0001 to CRTRPGPGM PGM(&1/&2) SRCFILE(&4/&5) SRCMBR(&3) GENLVL(30) CVTOPT(*DATETIME) TGTRLS(V6R1M0) but the problem still occurs. Any ideas or did I do it wrong?
Tested it by closing my plex connection recompiling and trying to move the functions to V6R1. The error on the green screen is :
Message ID . . . . . . : CPD6427 Severity . . . . . . . : 40 Message type . . . . . : Diagnostic Date sent . . . . . . : 31/05/17 Time sent . . . . . . : 10:56:06 Message . . . . : Object P62LC7F type *PGM cannot be saved for the specified target release. Cause . . . . . : Object P62LC7F type *PGM is not compatible with the specified target release. The earliest release for which this object can be saved is V7R1M0. Recovery . . . : Create the object again, specifying a target release compatible with the operating system release for the system where the object is to be restored.
Should we restart a dispatcher or is it referencing the wrong message file ?
Thanks for your help it pointed me in the correct direction. I modified CRTBNDRPG our build command uses it not sure why its different than what you said. And instead of modifying YKT0001 we modified YKT0020. And it worked.
I am glad that your problem has been resolved.
You needed to add the TGTRLS compiler option to YKT0020, because the language of the RPG function you are using is "RPGIV".
If the language of the RPG function is "RPG400", it is necessary to add the TGTRLS compiler option to YKT0001.