|
You're right. If you want just the 4 digits then you could hard code that. Rob Berendt -- "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." Benjamin Franklin "Charlie Massoglia" To: <rpg400-l@midrange.com> <cmassoglia@voyag cc: er.net> Fax to: Sent by: Subject: Re: Strange behavior w/%editc() rpg400-l-admin@mi drange.com 02/26/2002 01:35 PM Please respond to rpg400-l %len(fiscalYr) would work and is a more generic solution. I assumed he wanted a 4 byte year returned. Charles L.Massoglia, President Massoglia Technical Consulting, Inc. cmassoglia@voyager.net In MI 517-676-9700 or in NC 919-363-9395 ----- Original Message ----- From: <rob@dekko.com> To: <rpg400-l@midrange.com> Sent: Tuesday, 26 February, 2002 13:24 Subject: Re: Strange behavior w/%editc() > > Instead of using > - 4 > shouldn't you use > - %len(fiscalYr) > > > Rob Berendt > -- > "They that can give up essential liberty to obtain a little temporary > safety deserve neither liberty nor safety." > Benjamin Franklin > > > > "Charlie > Massoglia" To: <rpg400-l@midrange.com> > <cmassoglia@voyag cc: <MWalter@hanoverwire.com>, <Buck.Calabro@commsoft.net> > er.net> Fax to: > Sent by: Subject: Re: Strange behavior w/%editc() > rpg400-l-admin@mi > drange.com > > > 02/26/2002 11:45 > AM > Please respond to > rpg400-l > > > > > > > You can easily circumvent this problem by coding as follows: > > c eval headdesc = Center('Fixed Model FY ' + > c %subst(%editc(fiscalYr - > 1:'X'):%len(%editc(fiscalYr - 1:'X') - 4) :40) > > So if the expression %editc(fiscalYr - 1:'X") returns 02001, the %len will > be 5. Subtracting 4 from %len starts the substring in position 2. Thus > you > should get > Fixed Model FY 2001 > as I think you want. > > Charles L.Massoglia, President > Massoglia Technical Consulting, Inc. > cmassoglia@voyager.net > In MI 517-676-9700 or in NC 919-363-9395 > > > ----- Original Message ----- > From: "Buck Calabro" <Buck.Calabro@commsoft.net> > To: <rpg400-l@midrange.com> > Sent: Tuesday, 26 February, 2002 10:23 > Subject: RE: Strange behavior w/%editc() > > > > Mark W wrote > > > > >I have the following defined: > > > Dfclprd s 6 0 DTAARA(fclprd) > > > DdsFiscal ds 6 > > > D fiscalYr 4 0 overlay(dsfiscal:*next) > > > D fiscalMo 2 0 overlay(dsfiscal:*next) > > > > > >It is used in this way: > > > c eval headdesc = Center('Fixed > > >Model FY ' + > > > c %editc(fiscalYr - 1:'X'):40) > > > > > >The output looks like this: > > > Fixed Model FY 02001 > > > > This is part and parcel of the 'expression' rules for EVAL. > > Basically, 'fiscalYr - 1' is an expression. In order to hold all the > > possible digits of the resulting value, the compiler applies some rules > to > > create an 'intermediate' or 'work' variable. The %editc() is working > > against the work variable. > > > > I don't have the manual reference handy, but it's in the section on > numeric > > precision in the RPG Reference. > > > > --buck > > > > "Thousands of geniuses live and die undiscovered -- > > either by themselves or by others." -Mark Twain > > _______________________________________________ > > This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing > list > > To post a message email: RPG400-L@midrange.com > > To subscribe, unsubscribe, or change list options, > > visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l > > or email: RPG400-L-request@midrange.com > > 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@midrange.com > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l > or email: RPG400-L-request@midrange.com > 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@midrange.com > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l > or email: RPG400-L-request@midrange.com > 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@midrange.com To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l or email: RPG400-L-request@midrange.com 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.