It's all about the answers!

Ask a question

Why does the IBMi enterprise build convert # to #035

James Cole (9532630) | asked Nov 03 '16, 6:35 a.m.
Hi All, 

I have a created an iproject and imported my source members, of which some of these members contain a '#'. 

When running a dependency  build these objects are not compiling correct with either one of the following reasons:

1 - Member is created with #035. For example source member name CL001#, is being created as CL001#035.

2 - Build fails as it exceeds 10 characters (limit for source member). For example CL10010# is trying to add member CL10010#035.

I have tried this in 6.0.1 and 6.0.2 and the same problems are experienced.

Has anyone experienced a similar issue with special characters?

Many Thanks in advance

One answer

permanent link
Sean Babineau (38825) | answered Nov 03 '16, 10:58 a.m.
Hi James!

Rational Developer for i treats several characters specially, including the #. When you add these to an iproject from an IBM i library, they get "escaped" with a sequence like "#nnn". I believe this is done to make round-tripping possible where there are variant characters which might be represented differently if you upload the source/object to an IBM i running under a different CCSID.

Anyway, these objects/members look like "CL10010#" in the i projects navigator, but if you look on the file system in your Eclipse workspace, they're actually expanded to, e.g. "CL10010#035". I believe we fixed this in RTC 6.0.3 under defect 296705, to "un-escape" these back to their intended value when loading to IBM i for build. In the meantime, you may need to rename the source members from CL10010#035 to CL10010#.


Your answer

Register or to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.