× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



As I have noted at least once before, I have gone through and converted almost all our DDS defined PF to be DDL defined. Plus all the associated LF to Indexes/Views. I am now down to the last 2 PF, the order header and order detail (ORHDR and ORDTL, respectively). I saved these for last because they would be the hardest.

They are both multimember and have associated LF, also multimember. There are 2 permanent members, 1 for current days orders and 1 for advance orders. There are also hundreds of transient members added/removed daily, normally removed within seconds of being added. What happens is the sales people (called a DSR in the business) transmits an order from his/her laptop, a unique member is added to the files, the order gets placed into that member, gets processed, the results transmitted back to the DSR immediately, then the order gets put into the correct permanent member, and the unique member is removed. This happens in 2-3 seconds. By putting each of these orders into it's own member, it is kept logically separate. There are no performance issues whatsoever with this approach. But, as we all know, multimember is a no-no with SQL.

(The inventory transaction file that I converted a while back was also multimember, but there were only 3 RPG programs touching it. So a heavy redesign didn't take that long. Read on.)

There are 66 (!) RPG programs that touch one or both of these order files. A CL wrapper with OVRDBF is what points RPG to the correct member. Many of these CLs also have OPNQRYF in them. I am hitting my head against the wall trying to come up with an elegant way to handle all this. I'm sure I have to add a MEMBER field to the files to maintain the logical separation. SQL comes to mind instead of OPNQRYF, but that means it needs to be embedded into the RPG as opposed to being in the CL. That means a cursor with the embedded SQL. 66 programs means a lot of work in that instance. OTOH I don't want a kludge. I really want to get to a single member.

Suggestions?

Thanks.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 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.