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



Actually I think your RPG test is not reliable.  I think that TESTN will let
certain non-numerics slip through, only to explode sometime later (probably
in the middle of the night)!

In RPG it is much safer to use '0123456789' CHECK  variable_name to ensure
numerics.

In COBOL, if you only want to test the first part of a field, try

If VNCOMPANY (1:4) is numeric
   move VNCOMPANY to ws-vnd-company
else
   move zeros     to ws-vnd-company
end-if. 


-----Original Message-----
From: Dan [mailto:dbcerpg@xxxxxxxxx]
Sent: Tuesday, June 10, 2003 9:30 AM
To: cobol400-l@xxxxxxxxxxxx
Subject: Testing for valid numeric in an alpha field


I know how to do this in RPG but not Cobol:

I've got a 15-character alpha that is supposed to contain a 4-digit number
left-justified.  In my
Cobol program, VNCOMPANY is a 15-character alpha field and WS-VND-COMPANY is
a 4-digit numeric. 
When I do this:
    MOVE VNCOMPANY TO WS-VND-COMPANY.
and VNCOMPANY contains '40             ', I get a decimal data error.

In RPG, I'd use a MOVEL and a TESTN.  Off the top of my head, the only way I
can see doing this in
Cobol is to check the first four bytes of the field individually to be in
the range of '0' through
'9'.  (Bytes 5-15 would have to be blank for our validation purposes.)

Any suggestions?

TIA, Dan

__________________________________
Do you Yahoo!?
Yahoo! Calendar - Free online calendar with sync to Outlook(TM).
http://calendar.yahoo.com
_______________________________________________
This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) mailing list
To post a message email: COBOL400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
or email: COBOL400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/cobol400-l.

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.