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