Running programs compiled with preprocessor on i 7.1

Use this board to ask questions or have discussions with other Rich Displays users.
Post Reply
kevinh
Profound User
Posts: 43
Joined: Tue May 19, 2009 4:31 pm
First Name: Kevin
Last Name: Hunter
Company Name: Integrated Corporate Solutions
Phone: 2567608239
Address 1: 501 S Wood Ave
City: Florence
State / Province: Alabama
Zip / Postal Code: 35630
Country: United States
Location: Florence Alabama
Contact:

Running programs compiled with preprocessor on i 7.1

Post by kevinh »

Will the same RPG program object I compile using the preprocessor on V5R4 run on another box running i 7.1 with Open Access installed?

Scenario:
Our box is at V5R4 requiring the preprocessor for compiling UI programs. As stated in other posts: "Using it involves running alternate compile commands (i.e. PUIBNDRPG instead of CRTBNDRPG) when you compile your programs. A special /DEFINE directive is also needed in the source code. "
So we'll end up with lots of programs compiled this way.

If we were to move to i 7.1 with Open Access, no longer requiring the preprocessor, would we be able to run the same programs without recompiling them or would they need recompiled without using the PUIBNDRPG? Does the /DEFINE have to come out of all the source before compiling on i 7.1?
User avatar
David
Profound Logic Staff Member
Posts: 690
Joined: Fri Jan 04, 2008 12:11 pm
First Name: David
Last Name: Russo
Company Name: Profound Logic Software
Contact:

Re: Running programs compiled with preprocessor on i 7.1

Post by David »

There is not a technical reason why you would need to recompile the programs on 7.1, but there may be an issue with product licensing. The preprocessor performs a license key check on the objects at runtime, so the programs would not function unless the preprocessor was licensed on the 7.1 machine, which would probably not be the case.

So, you should plan to recompile them when upgrading. The /DEFINE does not have to come out before that recompile. However, you'll want to ensure that the HANDLER keyword is used on all display file F-specs in the programs. You may be omitting this currently because it's not required by the preprocessor. However, it is required by IBM Open Access.
kevinh
Profound User
Posts: 43
Joined: Tue May 19, 2009 4:31 pm
First Name: Kevin
Last Name: Hunter
Company Name: Integrated Corporate Solutions
Phone: 2567608239
Address 1: 501 S Wood Ave
City: Florence
State / Province: Alabama
Zip / Postal Code: 35630
Country: United States
Location: Florence Alabama
Contact:

Re: Running programs compiled with preprocessor on i 7.1

Post by kevinh »

This may get complicated.
We are a developer currently at V5R4. We have clients ranging from V5R3 to 7.1 (in near future). We know that our clients will have to have a runtime license of PUI and will either have to have the preprocessor or O/A depending on their O/S version.
We are compiling our UI DDS through the designer on our system (full developer license) and RPG programs with the preprocessor (PUI compile commands) to V5R3 so they can be run on clients at V5R3 or higher.
The client that will be at 7.1 will need a runtime PUI license, but we thought would have no need for a preprocessor if they have O/A.

1) Recompiling thousands of programs for the one client is not very feasible, but would we even be able to recompile them with only a runtime PUI license on the client's system? I'm thinking we can if the normal IBM compile commands with O/A installed replace the PUI compile commands utilizing the handler as required on the F-spec.

2) Would having a runtime PUI and preprocessor licensed on the 7.1 system keep us from having to recompile everything? Is it only checking that a preprocessor is licensed and not requiring it licensed specific to the system it was compiled on?
Would this option mean we don't need O/A on the 7.1 system if still using the preprocessor?
Are we losing any functionality if using the preprocessor on 7.1 instead of using O/A?

We assume what we compile with PUI commands on our system will restore and run on our other clients at V5R3 and V5R4 that will have a runtime license of PUI and the preprocessor. As they upgrade to 6.1 or 7.1 they would then face the same issue as our client going to 7.1, a runtime preprocessor would be needed on the new system to avoid recompiling all programs on their system to use O/A instead of the preprocessor.
User avatar
David
Profound Logic Staff Member
Posts: 690
Joined: Fri Jan 04, 2008 12:11 pm
First Name: David
Last Name: Russo
Company Name: Profound Logic Software
Contact:

Re: Running programs compiled with preprocessor on i 7.1

Post by David »

1. If you had OA installed on the 7.1 system you could recompile the RPG programs using normal compile commands, assuming the programs are using the Handler keyword on the F-specs. You would need the Profound UI runtime license only in this scenario and the preprocessor would not be necessary on the 7.1 machine.

The display files compile using a normal CRTDSPF command in any case. This is all the designer does -- it runs CRTDSPF on the DDS member.

2. Yes, having the preprocessor licensed on the 7.1 machine would allow you to avoid recompiling the programs, although this is not recommended (more on this below). The preprocessor runtime license check will verify the license key against the system the programs are currently running on. With this option, OA would be unnecessary.

No major functionality is lost by using the preprocessor vs. O/A. There are some "under the hood" differences in behavior (for example preprocessor does not support READ operation on filename or usage of display file other than Full Procedural), but all major features work the same way using both methods.

We would strongly reccomend scenario 1. In going from V5 to V7, a program format conversion must be done. While IBM intends for this to be seamless in that programs will behave indentically when converted to the new format, we've found that this is not always the case and there are occaisional bugs with the object conversion. For this reason, we ourselves do not rely on the program conversion but rather package V5 and V6/V7 versions as separate installations. With 1000's of programs, you would also likely run into program conversion issues.

Also, there is the matter of cost to consider. The preprocessor is licensed by annual fee, where OA is a one-time purchase.
RussCraig
Profound User
Posts: 62
Joined: Wed May 05, 2010 10:13 am
First Name: Russell
Last Name: Craig
Company Name: Applied Business Services
Phone: 252-482-7666
Address 1: 617 Soundside Rd
City: Edenton
State / Province: North Carolina
Zip / Postal Code: 27932
Country: United States
Location: Edenton, NC
Contact:

Re: Running programs compiled with preprocessor on i 7.1

Post by RussCraig »

Just FYI, RPG-OA (5733-OAR) has an annual maintenance cost of $66.67 ($200/3-year). At least that's what it was for us when we purchased from IBM last month.

If I'm incorrect, please disregard.
There are 10 types of people in this world: Those who understand binary and those who don't.
User avatar
David
Profound Logic Staff Member
Posts: 690
Joined: Fri Jan 04, 2008 12:11 pm
First Name: David
Last Name: Russo
Company Name: Profound Logic Software
Contact:

Re: Running programs compiled with preprocessor on i 7.1

Post by David »

Yes there is an small annual maintenance for OA, however, the annual cost for the RPG Preprocessor is significantly more. It is comparable to the purchase price of OA.
Post Reply

Who is online

Users browsing this forum: No registered users and 5 guests