|
Of course one solution to your problem is that you could define the data structure as externally defined (and renaming the associated fields in the program to match) If your are using ILE RPG you could attach a prefix to the variables to insure uniqueness... I know you have most likely thought of this solution but I just could not resist pipeing in :-) Eric ______________________________________________ Eric N. Wilson President Doulos Software & Computer Services 2913 N Alder St Tacoma WA 98407 ----- Original Message ----- From: John C. Bradley <jcbradley@voyager.net> To: <RPG400-L@midrange.com> Sent: Thursday, September 23, 1999 3:57 PM Subject: Re: How to use DataQues with RPG ? > You asked: > >How do I use DTAQ's between two RPG programs to exchange data ? > > I see that you've got six replies already, so I won't go into the use stuff > from the programming details side, but rather from the "please think about > the poor soul who will maintain your code five years from now" point of view. > > I had to fix a non-Y2K-compliant OPM RPG program recently that used a keyed > data queue. It was a "convenient" program for maintaining and replicating > purchase order blanket releases in a purchased ERP package. It worked by > reading the existing releases for an order item from the db file, writing > them to the queue, then reading them back from the queue using due date as > the key and filling a subfile for operator entry/maintenance. > > Unfortunately, a data queue is not a nicely structure chunk of data like an > externally defined database file record so the fields from the db file were > moved to fields in a datastructure which then served as the input data to > the queue. The data structure fields were defined within the program using > from/to position entries. There were three of these structures and three > subroutines full of moves to populate them. There were about 140 fields in > the record and the structures were not defined in field sequence, just sor t > of random .... > > A couple of years ago the database file had some fields added through a new > release of the purchased package software. These fields were not just at the > end of the record but scattered within it. The program kept on truckin' > after a recompile and basically screwed up the extra fields in the database > (fortunately the user wasn't using the features provided by "most" of the > new fields). Apparently someone assumed that since it compiled, it was OK. > Heh. > > It was a pain in the you-know-what to fix those data structures. I probably > should have converted the program to ILE, but hey, all I was doing was going > in to fix a few cases where a 7 digit date in CYYMMDD format was multiplied > by 100.0000 to a 6 digit MMDDYY result (doesn't work for Y2K, ya know). > This thing just snowballed. > > I really like being able to define fields in the database. It would be neat > to have a mechanism on the AS/400 whereby the data in a dataqueue-like > object could be structured similarly. Then all sorts of data integrity > checks would be automatic. > > Just my 2 cents (plus a quarter). > > > +--- > | This is the RPG/400 Mailing List! > | To submit a new message, send your mail to RPG400-L@midrange.com. > | To subscribe to this list send email to RPG400-L-SUB@midrange.com. > | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. > | Questions should be directed to the list owner/operator: david@midrange.com > +--- +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.