Re: CCSID - RPG issues

Gad Miron <[email protected]> Wed, 25 Feb 2026 12:41:00 +0200
Newsgroups gmane.comp.lang.as400.rpg
Message-ID <CAFj_=c2qpjcLsmZS=VN76FruDNQhocXpffFDy74bM51ER=EyGg@mail.gmail.com>
Hello Barbara

The (source) ds_NMMLIMP2.ITEMNAME looks OK - I'll check again though

Does %sbst function "knows" how to deal with a VARLEN data?

I'll check the CHARCOUNT thing.

THANKS
Gad








>


> date: Tue, 24 Feb 2026 09:29:25 -0500
> from: Barbara Morris <[email protected]>
> subject: Re: CCSID - RPG issues
>
> On 2026-02-24 8:56 a.m., Gad Miron wrote:
> > ...
> >     // take first 128 chars of Item Description
> >          ds_NMWRKR.ITEMNAME8 = %subst(ds_NMMLIMP2.ITEMNAME :1 : 128) ;
> >
> >      // Update map file - target
> >           update NMWRKR ds_NMWRKR  ;
> >
> > C                   eval      *INLR = *ON
> >
> > The update works but the value placed in ITEMNAME8 is erroneous
> > ...
> In debug, does ds_NMMLIMP2.ITEMNAME look correct before the %subst? Does
> it have UTF8 data? (look at the hex value of the field in the debugger)
>
> Does ds_NMWRKR.ITEMNAME8 look correct after the %subst?
>
> Is it always incorrect? Or does the problem only happen with some values?
>
> Using %subst with UTF8 data has the potential to only pick up the first
> byte of a 2-byte character unless you are using the new CHARCOUNT
> NATURAL support.
>
> https://www.ibm.com/docs/en/i/7.5.0?topic=functions-subst-get-substring
>
>
> https://www.ibm.com/docs/en/i/7.5.0?topic=cdt-processing-string-data-by-natural-size-each-character
>
> (I should update that pdf document to talk about the CHARCOUNT support
> that was added in 7.4 and 7.5 with PTFs.)
>
> --
> Barbara
>
>
>
>
>
-- 
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: [email protected]
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request-+hD5IHI5Xscn3HwCXmMcX9BPR1lH4CV8@public.gmane.org
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support-FMtJrHiV//lnDLsaKlm4mFaTQe2KTcn/@public.gmane.org for any subscription related questions.