Maintain them as you have, as RPG constants. And use this as the "Source of Truth".
Now write a tool to parse the copybook above and translate it into another copybook containing the CL DCL's. Now include the new copybook in your CL programs and refresh it every time you update the RPG version.
Compile impacted programs as you currently do.
Best I can do on Friday afternoon.
Now if you'd go look at my currently open issue... :-)
Steve Needles
-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Jeff Crosby
Sent: Friday, June 09, 2017 2:30 PM
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx>
Subject: Get a definition for a constant in a source member into a CL program
Off the wall question for a Friday.
I've got a source member full of constant definitions that I copy into hundreds of RPG programs. Here's a small sample:
* Active/deleted/suspended
D @Active C 'A'
D @Deleted C 'D'
D @Reinstate C 'R'
D @Suspended C 'S'
D @Update C 'U'
Makes code a lot more readable. I literally have hundreds of these constants. If I want a change, all I have to do is change it here, recompile any RPG programs that use the particular one I changed, and I'm done.
I have a situation now where I'd like to use one in a CL program. I know I could make an equivalent member for CL and copy _that_ into CL programs, but that defeats the purpose of having a constant defined in one and _only_ one place.
I'm not coming up with any slick way. Maybe there isn't any. Or else it's above my pay grade. Any ideas jump out?
Thanks.
--
Jeff Crosby
VP Information Systems
UniPro FoodService/Dilgard
P.O. Box 13369
Ft. Wayne, IN 46868-3369
260-422-7531
www.dilgardfoods.com
The opinions expressed are my own and not necessarily the opinion of my company. Unless I say so.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at
http://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxx for any subscription related questions.
Help support midrange.com by shopping at amazon.com with our affiliate link:
http://amzn.to/2dEadiD
CONFIDENTIAL: The information contained in this email communication is confidential information intended only for the use of the addressee. Unauthorized use, disclosure or copying of this communication is strictly prohibited and may be unlawful. If you have received this communication in error, please notify us immediately by return email and destroy all copies of this communication, including all attachments.
As an Amazon Associate we earn from qualifying purchases.