× 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.


  • Subject: RE: decimal data error (packed field?)
  • From: Buck Calabro <mcalabro@xxxxxxxxxxxx>
  • Date: Wed, 28 Oct 1998 08:57:00 -0500
  • Organization: commsoft

On Tuesday, October 27, 1998 6:48 PM, Tim Truax [SMTP:truax@usaor.net] 
wrote:
> What is the best way to test a field that is coming from a data
> structure (field is described as  P 0001 0003 0 XAMT on the data
> structure)?  When I access this field by doing a   Z-ADD XAMT     CAMT
> 7/0,  I am getting the DDE on this statement.
> What is the method to use to be sure that my field has numeric integrity
> BEFORE I do the Z-ADD to CAMT.
> I thought about using TEST,  but this is a packed field.

Let me answer a different question first.  Data structures are initialised 
to blanks (hex '40').  If the data structure is a re-map of fields from a 
database file and there are no records read/chained to, then the data 
structure will still contain blanks.  One way to avoid this is to specify 
"I" on the DS line in column 18 (Option) to initialise the DS subfields 
according to type (i.e. packed gets init'd to zero.)

To return to your first question, you can check for blanks by adding a 
character definition: 0001 0003  XAMTC and doing a TESTN on that character 
field.  If you have other invalid data it becomes more difficult to check 
- you need to define the field as character and unpack each nibble 
yourself and test each one.  Clearly, this will be (run)time consuming. 
 If this is a downstream process, you'd be much better off cleaning up the 
data where it enters the system.

A final word: DO NOT use IGNDECERR(*YES) to "avoid" the error.  If your 
code does comething like XAMT IFGT 0, the statement will always evaluate 
to TRUE!  In fact, ANY "IF" comparison will evaluate to true.  IBM 
documents this with the terse statement that "unpredictable results may 
occur."

Buck Calabro
Commsoft, Albany, NY
mailto:mcalabro@commsoft.net

+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-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 thread ...


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.