|
This is very rough and untested, but it looks like you need a
subprocedure like this:
p FindValue b
d pi 9 4
d InValue 10A
d InString 100A
d Posn s 5i 0
d ValueEq s 10A
/free
ValueEq = InValue + '=';
Posn = %Scan(InString: Value2);
If Posn = 0;
Return 0;
Else;
Return %Dec(InString: Posn + 1: %Check(InString:
Posn+1:'0123456789') - 1);
EndIf;
/end-free
Then you can do:
Number = FindValue(Code: String);
Trevor Briggs
Analyst/Programmer
Lincare, Inc.
(727) 431-1246
TBriggs2@xxxxxxxxxxx
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Jeff Crosby
Sent: Tuesday, September 11, 2012 12:56 PM
To: RPG programming on the IBM i / System i
Subject: Extract some numeric fields from a string
Given a 60 character string that looks like this (and there will be
trailing blanks):
L=19.3000A=19.43M=21.7700LS=19.93AS=19.93CB=19.1600
How would I extract the numeric data behind one of these character
interludes into a decimal field?
For example, one time I may want to know what's behind the "M=", another
time what's behind the "AS=", etc.
Wanting to know what's behind the "M=" means I want the value (in this
instance) of 21.7700 put into a decimal field.
Wanting to know what's behind the "AS=" means I want the value (in this
instance) of 19.93 put into a decimal field.
At one time or another I will want to know any one of the 6 "fields" in
that string. The fields are optional in the string, ie, the "CB=" may
not
be there, in which case I want that field to default to 0.
V7R1. I have the SQL Development Kit if there is some slick way with
SQL
to get one or all of these fields out of the string in one fell swoop.
--
Jeff Crosby
VP Information Systems
UniPro FoodService/Dilgard
P.O. Box 13369
Ft. Wayne, IN 46868-3369
260-422-7531
www.dilgardfoods.com
The opinions expressed are my own and not necessarily the opinion of my
company. Unless I say so.
--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
************************************************************************************************************************************************************************************************************
This message originates from Lincare Holdings Inc. It contains information which may be confidential or privileged and is intended only for the individual or entity named above.
It is prohibited for anyone else to disclose, copy, distribute or use the contents of this message.
All personal messages express views solely of the sender, which are not to be attributed to Lincare Holdings Inc., and may not be copied or distributed without this disclaimer.
If you received this message in error, please notify us immediately at MailAdmin@xxxxxxxxxxx or (800) 284-2006.
************************************************************************************************************************************************************************************************************
--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
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.