Thanks to all. I know that's not the "right way" to "internationalize". My goal is to build a tool to help internationalization of "old" application. Those applications that wheren't designed whith globalization in mind... and they are a lot. In europe ther is a growing demand for translating tools as more and more countries become part of the EC (European Community). Some years ago we made a very efficient tool to gather strings from objects into a "repository" to help human translators doing their job. (this tool works in three steps : 1-strings extraction, 2-human translation, 3-building of identical but translated objects) We chose to work at object level because it is hll independant, we just have to deal with MI template (we use QSCMATPG/QSCCRTPG) : ODV, OES ... It works for CLP, RPG, COBOL, PLI, Basic, etc That's the reason why we would like to do the same for ILE pgm. I agree that's the "right" way should be to externalize strings into MSGF, file ..., but lots of ILE programs are OPM converted program (and sometimes from RPG II, not only RPG/400 !) and they are still with lots of "translation eligible" strings in CTarray, constants, MOVEs ... It's not always easy to change hundreds or thousands of programs when a company opens an office in a foreign country, with shorts time-limits. When I first saw "LITERAL POOL" into module objects I hoped ILE was designed to change easily strings (API ...). Now I'm looking for a way to change those strings during the module creation phase. I remember the way we use to "switch" the CLP compiler into MI compiler on S/38, and I'm sure it's possible. Unless there is an "official way". Hope I'm understandable, my english is still very poor :-( Penasse Jean-Michel EXPERIA Europe www.experia.com -----Message d'origine----- De : mi400-bounces@xxxxxxxxxxxx [mailto:mi400-bounces@xxxxxxxxxxxx]De la part de Jon Paris Envoye : samedi 10 avril 2004 20:54 A : mi400@xxxxxxxxxxxx Cc : Bruce Vining Objet : [MI400] RE: Changing *module "LITERAL POOL" > I tried to change (sst) the "Literal pool" of a module but > when I try to use ........ Even if you re-create the checksum I'm not convinced you will like the results. I'm digging up distant memories here and perhaps Bruce Vining would be good enough to provide a more definitive answer but ..... If memory serves, one of the differences between OPM and ILE programs is that literals are pooled to some extent by the compilers and optimizer even at the "no optimization" level, in ways that were not done with OPM. Seems to me that it could well be what appears to be a single constant may in fact provide the storage for multiple constants. If you want to internationalize, why not do it the "right" way - IBM thinks the subject warrants an entire manual - if you haven't already done so I suggest you take a look. Jon Paris Partner400 www.Partner400.com _______________________________________________ This is the MI Programming on the AS400 / iSeries (MI400) mailing list To post a message email: MI400@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/mi400 or email: MI400-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/mi400.