Hola lo que te estaba pasado es que se puede indicar un CCSID para el archivo y luego el contenido estar codificado en otro CCSID distinto
en tu caso el archivo indica erróneamente 1252 peeero su contenido era 1208 y cómo tu dices puedes realizar un CHGATR o con el submandato TYPE C 1208 del FTP Salu2 El jue., 3 oct. 2019 a las 18:23, LLuis Segura (<lseg...@puntoblanco.com>) escribió: > Me respondo yo mismo.... > > > > Continuando con las pruebas acabo de descubrir que si antes del > CPYFROMIMPF le fuerzo al fichero en el IFS el CCSID con: > > > > CHGATR OBJ('/HOME/LLUISPS/ORDERS_CUSTOMER.CSV') + > > ATR(*CCSID) VALUE(1208) > > > > Funciona todo correctamente. > > > > Me quito un peso de encima, ya no sabía que más probar. > > > > Muchas gracias Alex por tu ayuda. > > > > Saludos cordiales > > > > Lluís. > > > > > > *De:* LLuis Segura [mailto:lseg...@puntoblanco.com] > *Enviado el:* dijous, 3 d’octubre de 2019 18:04 > *Para:* 'forum.help400' <forum.help400@listas.combios.es> > *Asunto:* RE: Problemas subiendo ficheros por CPYFRMIMPF > > > > Gracias por contestar Alex, > > > > Si he probado con 1208, 1205 y con varios CCSID más, 1208 es el indicado > para UTF-8 pero al mirar los atributos con QSH del fichero en el IFS he > visto que el CCSID que me daba era el 1252. > > > > Lo curioso del caso es que hago transferencias al revés de 1145 a 1208 con > CPYTOIMPF y me funciona perfecto, me deja un fichero delimitado como UTF-8 > con todos los acentos y caracteres especiales. > > > > He comprobado que si paso el CSV con un editor como notepad++ y lo > convierto a ANSI sube correctamente, pero es un paso que quiero ahorrar al > hacer todo el proceso vía este CL. > > > > PGM > > DCL VAR(&CODI) TYPE(*CHAR) LEN(1) VALUE('2') > > DCL VAR(&RMTSYSTEM) TYPE(*CHAR) + > > VALUE('xxx.xxx.xxx.xxx') > > > > CLRPFM FILE(MC785PSFTO) > > CPYF FROMFILE(SGACTL) TOFILE(*PRINT) OUTFMT(*HEX) > > OVRDBF FILE(INPUT) TOFILE(IVSAMOVEX/MC785PSFTI) > > OVRDBF FILE(OUTPUT) TOFILE(IVSAMOVEX/MC785PSFTO) > > FTP RMTSYS(&RMTSYSTEM) > > DLTOVR FILE(INPUT) > > DLTOVR FILE(OUTPUT) > > CALL PGM(MC825) PARM(&CODI) > > CPYFRMIMPF + > > FROMSTMF('/home/lluisps/orders_customer.csv+ > > ') TOFILE(IVSAMOVEX/CUSTOMERPS) + > > MBROPT(*REPLACE) FROMCCSID(1252) + > > RCDDLM(*LF) FLDDLM(';') RPLNULLVAL(*FLDDFT) > > > > I este un ejemplo de lo que me deja en el fichero > > > > PAIS FACTURA > > España > > España > > España > > > > Saludos. > > > > > > > > > > *De:* forum.help400-boun...@listas.combios.es [mailto: > forum.help400-boun...@listas.combios.es] *En nombre de *Alex Martínez > *Enviado el:* dijous, 3 d’octubre de 2019 17:27 > *Para:* forum.help400 <forum.help400@listas.combios.es> > *Asunto:* Re: Problemas subiendo ficheros por CPYFRMIMPF > > > > Hola > > > > Veamos, el ccsid para utf-8 es el 1208 y tu estás indicando que utilizas > el 1252 (que es ASCII Windows, muy parecido al 819) > > > > ¿has probado con 1208? > > > > > > > > El jue., 3 oct. 2019 a las 13:02, LLuis Segura (<lseg...@puntoblanco.com>) > escribió: > > Buenos días a todos/as. > > > > Estoy subiendo unos ficheros CSV desde una carpeta del IFS a ficheros > nativos de un IBM i que esta en versión 7.1. > > > > Los ficheros estan codificados con UNIX LF y UTF-8 y al ejecutar el > CPYFRMIMPF con el FROMCCSID a 1252 y el TOCCSID a *FILE para que use el de > sistema que es 1145 el problema es que se cambian los acentos, Ñ y > caracteres especiales por otros caracteres como “ó” y por la Ñ “ñ”. > > > > He probado diferentes tipos de codigos CCSID tanto en el FROMCCSID como en > el TOCCSID pero parece que el sistema pasa totalmente de mi. > > > > La unica manera que tengo de subir correctamente todos los datos es > cambiando los datos del CSV a ANSI entonces si suben correctamente todos > los caracteres especiales, pero tendria que hacer un proceso manual muy > tedioso dado que recupero estos ficheros en una CL via FTP. > > > > He comprovado que la tabla que usa el fichero CSV en el IFS es la 1252 > (comprobado con el QSH y mirando sus atributos). > > > > ¿ Puede ser que me falten las tablas de correspondencia 1252 a 1145 he > efectuado un WRKTBL y no veo, o no se ver, en ninguna biblioteca que esten > estas tablas ? > > ¿ Puede ser que me falten algunas PTF ? > > > > Saludos a todos. > > > > *Lluís Segura* > > > > ____________________________________________________ > Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) > Forum.Help400 © Publicaciones Help400, S.L. > > ____________________________________________________ > Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) > Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.