Re: CCSID - RPG issues
Barbara Morris <[email protected]> Tue, 24 Feb 2026 09:29:25 -0500
| Newsgroups | gmane.comp.lang.as400.rpg |
|---|---|
| Organization | IBM |
| Message-ID | <[email protected]> |
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.