|
>I get this after the 3rd API is called (there >are no errors returned from the API themselves). >The line of code is: > >C Eval BufferDta = BufferDtaFld > >Fields defined: > > D BufferPtr S * > D BufferDtaFld S 32767 Based( BufferPtr ) > D BufferDta S 32767 Hi Alison! Based fields can be interesting. What loads BufferDtaFld? I ask because if that process were to insert more than 32k of data, then the data would "overflow" BufferDtAFld into other storage, causing an "out of bounds" message. Any time I deal with this sort of scenario, I always check the field lengths. Instead of: eval BufferDtaFld = someInputData I would use: eval %subst(BufferDtaFld: 1: %len(someInputData) = someInputData or test to see that someInputData isn't too large to load: if %len(someInputData) <= %size(BufferDtaFld). The idea being that BufferDtaFld can be "moved" or "windowed" about by changing the pointer. --buck
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.