|
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 sort 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 +---
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.