|
All: I have a co-worker with an interesting situation. He has two data structures, both defined as LIKEDS of the same template DS. In fact there are several procedures with this type of logic. When both DS are populated with the exact same data and the statement "when DS_A = DS_B;" is executed, sometimes the result is true, sometimes it is false. We have stepped through the code with STRDBG and the WDSc debugger to confirm that all like fields contain the same values. We've even looked at the compile listing to confirm that the data structures are the same length (they are). The only thing we can see is that when the based-on DS has an embedded DS in it, the result is false, otherwise it is true. Here is a sample of the offending code. If anyone sees what we are doing wrong or has a link to a manual with a reference to this condition, I'd sure appreciate it. Thanks in advance, --Bruce Guetzkow *=============================================================== p UpdRPName... p b export *=============================================================== d UpdRPName... d pi 3i 0 d curdta likeds(rpname) d orgdta likeds(rpname) const d newdta likeds(rpname) const *=============================================================== d rpname ds based(@) d qualified d rjkey likeds(rpnamekey) d rjprim 1a d rjsnam 15a d rjfnam 30a *=============================================================== d rpnamekey ds based(@) d qualified d rjcomp 3a d rjresp 7s 0 d rjprof 2s 0 *=============================================================== // Several things happen here... select; when curdta = orgdta; // This code never runs...
As an Amazon Associate we earn from qualifying purchases.
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.