|
This could also be done this way with not IF statements.
D PosUsed S 4 0
D Filler S 100 Varying
/Free
Size = %Len(String);
PosUsed = %Len(%Trim(String));
%Len(Filler) = (Size - PosUsed);
Filler = *ALL'0';
Return Filler + %Trim(String);
/End-Free
I use something similar for center text in a field.
D Center PI 250
D String 250 CONST
D Size 4 0 CONST
D A S 4 0
D B S 4 0
D Blanks S 100 Varying
/Free
A = %Len(%Trim(String));
Eval(H) B = (Size - A) / 2;
%Len(Blanks) = B;
Return Blanks + %Trim(String);
/End-Free
Michael Schutte
"Brian
Piotrowski"
<bpiotrowski@simc To
oeparts.com> "RPG programming on the AS400 /
Sent by: iSeries" <rpg400-l@xxxxxxxxxxxx>
rpg400-l-bounces@ cc
midrange.com
Subject
RE: Concatenate two strings spacing
06/01/2006 03:06 issue
PM
Please respond to
RPG programming
on the AS400 /
iSeries
<rpg400-l@midrang
e.com>
Just do a %len on the concatenated field to determine it's length. I
had a similar issue when I had to pad a number with zeros for a query.
Doing something like this might help:
if %len(%trim(arrPSUB(arrINDEX))) = 2;
SSW94STMT = SSW94STMT + '0';
SSW94STMT = SSW94STMT + %trim(arrPSUB(arrINDEX)) + apos;
ENDIF;
if %len(%trim(arrPSUB(arrINDEX))) = 3;
SSW94STMT = SSW94STMT + %trim(arrPSUB(arrINDEX)) + apos;
ENDIF;
Or you could either stick it in a few IF statements or SELECT. Dealer's
choice:
Select;
When %len(%trim(arrPSUB(arrINDEX))) = 2;
SSW94STMT = SSW94STMT + '0';
SSW94STMT = SSW94STMT + %trim(arrPSUB(arrINDEX)) + apos;
When %len(%trim(arrPSUB(arrINDEX))) = 3;
SSW94STMT = SSW94STMT + %trim(arrPSUB(arrINDEX)) + apos;
ENDSL;
Brian.
-----Original Message-----
From: steema@xxxxxxxxxxxxx [mailto:steema@xxxxxxxxxxxxx]
Sent: Thursday, June 01, 2006 2:46 PM
To: RPG programming on the AS400 / iSeries
Subject: Re: Concatenate two strings spacing issue
I have a similar issue.
We have a model number that can be up to 7 positions. The format is
Character(s), number(s). Then there could be an appendage to it, that
would denote a color, that would always be a char.
So a radio for example, would be say, RA12
in a color of white it would be RA12W.
I am displaying info in a subfile for models, but now they want to see,
all the related records, i.e. the RA12W's.
OF course, I can move the field and find my pattern of Char, num, char.
But then I have to do this routine for RA12, RAB12, RABC12.
Instead I would like to know first, how many positions of the model
fiels
are inhabited, and use a simple logic to pursue locating the related
records.
Steve.
You want to do something Like this Eval CATFIELD = %TRIM(FIELD1) + %TRIM(FIELD2) Michael Ala EDI Service Line Leader BP Lubricants USA Inc. **************************************** -- This is the RPG programming on the AS400 / iSeries (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 is the RPG programming on the AS400 / iSeries (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 is the RPG programming on the AS400 / iSeries (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-2025 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.