muchas gracias Alex si era ese detalle, es un archivo plano
ya compilo , fectivamente es un signo negativo muchas gracia a todos saludos ________________________________ De: [email protected] <[email protected]> en nombre de Alex Martínez <[email protected]> Enviado: miércoles, 17 de agosto de 2016 02:37 a. m. Para: forum.help400 Asunto: Re: REPLACE SQL Sobre el problema al compilar los programas creo que el archivo BCFDPF no tiene DDS ¿es un archivo plano, correcto? Si es así no puedes definir el archivo con un E sino con una F e indicar la longitud de registro de ¿450? Realmente ese signo } creo que corresponde a un dato en negativo !!! Yo creo que el problema está en el programa que genera el archivo en TXT FBCFDPF UP F 450 DISK IBCFDPF SS 01 I 1 450 REGIST C 01 '}':'0' XLATEREGIST REGIST OBCFDPF D 01 O REGIST El 16 de agosto de 2016, 21:46, Juan Gutierrez Ruiz <[email protected]<mailto:[email protected]>> escribió: hola Foro lo que necesito es sustituir un signo '}' que me genera un rpg en un archivo que después este lo convierten en TXT lo quiero cambiar mediante la instrucción XLATE que soporta esta versión la maquina de mi cliente es muy vieja es un as400 y tiene cargado un sistema de MAPICS la versión es R4 V4 he realizado 2 programitas en RPG uno con el ciclo del RPG y el otro controlado pero al compilarlos me manda errores del archivo me puede echar una mano (adjunto un archivito de texto) saludos H1|E|000727|859440|20150729| |00000000|PAGO EN UNA SOLA EXHIBICION|CONTADO |ORIGINAL|FACTURA H2|DULCES Y CHOCOLATES LUXUS, S.A. DE C.V.|DCL911021I36||PINO|NO. 427-A||SANTA MARIA INSURGENTES|||CUAUHTEMOC|DISTRITO FEDERAL|MEX H4|FUNDACION TELMEX A.C. |FTE951227NS5 ||PARQUE VIA |||CUAUHTEMOC | H5|FUNDACION TELMEX A.C. |FTE951227NS5 || | || D|31202967 ||C.SUAVE PROT.MIN.HIE.ZINC 12/1||00010|CAJAS|| 510.00|0||0|||||||||||||0000000051000}||||||||||||0000000051 S|00000000051000}||||||000000004080}||000000055080}||0001}|||||||||||||||||||||||||00000000051000}|||| H1|E|000728|859440|20150729| |00000000|PAGO EN UNA SOLA EXHIBICION|CONTADO |ORIGINAL|FACTURA *************** Principio de datos ************************* FBCFDPF IP E DISK IREGIST 01 C '}':'0' XLATEREGIST REGIST OREGIST D O BCFDPF L i s t a d o F u e n t e H ***** 200 FBCFDPF IP E DISK 16/08/16 * 2122 200 EL NOMBRE DE REGISTRO BCFDPF SE HA DEFINIDO PREVIAMENTE COMO NOMBRE DE ARCHIVO. FORMATO(S) REGISTRO: BIBLIOTECA PASOJGR ARCHIVO BCFDPF. BORRADO FORMATO EXTERNO BCFDPF DEBIDO A ERROR O SE IGNORA. 400 IREGIST 01 16/08/16 * 4005 4005-********. * 4008 4008-** 1000 C '}':'0' XLATEREGIST REGIST 16/08/16 1600 OREGIST D 16/08/16 * 6001 6001-******** 1700 O BCFDPF 16/08/16 * 6048 6048-****** * * * * * F I N D E F U E N T E * * * * * M e n s a j e s D i a g n ó s t i c o A d i c i o n a l e s * 7064 200 EL ARCHIVO BCFDPF NO ESTA REFERENCIADO PARA INPUT. 5769RG1 V4R4M0 990521 IBM RPG/400 PASOJGR/PRUEBA 16/08/16 14:12:02 5769RG1 V4R4M0 990521 IBM RPG/400 PASOJGR/PRUEBA 16/08/16 14:12:02 R e s u m e n d e M e n s a j e s * QRG2122 Gravedad: 40 Número: 1 Mensaje . . . . : Un nombre de formato de registro en archivo descrito externamente ya se ha definido como un nombre de archivo. * QRG4005 Gravedad: 40 Número: 1 Mensaje . . . . : La entrada Nombre de Archivo o Nombre de Registro no está definida o no es válida. Se ignora la especificación. * QRG4008 Gravedad: 10 Número: 1 Mensaje . . . . : La entrada Secuencia está en blanco o no es válida. Toma AA como valor por omisión. * QRG6001 Gravedad: 40 Número: 1 Mensaje . . . . : Nombre de archivo o de registro no definido, ignorado, en blanco o no válido. * QRG6048 Gravedad: 30 Número: 1 Mensaje . . . . : El nombre especificado con anterioridad se ha definido como nombre de archivo o de registro. Se ignora la especificación. * QRG7030 Gravedad: 30 Número: 1 Mensaje . . . . : El campo o el indicador no está definido. * QRG7031 Gravedad: 00 Número: 1 Mensaje . . . . : No se hace referencia al nombre o al indicador. * QRG7064 Gravedad: 40 Número: 1 Mensaje . . . . : No hay referencia al archivo del programa. Se ignora el archivo. * * * F I N D E R E S U M E N D E M E N S A J E S * * * * 5769RG1 V4R4M0 990521 IBM RPG/400 PASOJGR/PRUEBA R e s u m e n F i n a l Cuenta de Mensajes: (Por Número de Gravedad) TOTAL 00 10 20 30 40 50 8 1 1 0 2 4 0 Totales Programa Fuente: Registros . . . . . . . . . : 5 Especificaciones . . . . . : 5 Registros de Tablas . . . . : 0 Comentarios . . . . . . . . : 0 Compilación detenida. Se han encontrado errores de gravedad 40 en archivo. ===================================================================== *************** Principio de datos ********************************** FBCFDPF UF E DISK F BCFDPF KRENAMEREGIST C READ BCFDPF 90 C *IN90 DOWEQ'0' C '}':'0' XLATEREGIST REGIST C UPDATBCFDPF C READ BCFDPF 90 C ENDDO C MOVEL*ON *INLR L i s t a d o F u e n t e H ***** 200 FBCFDPF UF E DISK 16/08/16 300 F BCFDPF KRENAMEREGIST 16/08/16 FORMATO(S) REGISTRO: BIBLIOTECA PASOJGR ARCHIVO BCFDPF. FORMATO EXTERNO BCFDPF NOMBRE RPG REGIST A000000 INPUT CAMPOS PARA EL REGISTRO REGIST ARCHIVO BCFDPF FORMATO BCFDPF. A000001 1 450 BCFDPF * 4143 4143-****** * 4037 4037-**** 800 C READ BCFDPF 90 3 15/08/16 900 C *IN90 DOWEQ'0' B001 15/08/16 1000 C '}':'0' XLATEREGIST REGIST 001 16/08/16 * 5194 5194-**********. * 5194 5194-****** 1200 C UPDATBCFDPF 001 16/08/16 * 5063 5063-******** 1300 C READ BCFDPF 90 3 001 15/08/16 1400 C ENDDO E001 15/08/16 1500 C MOVEL*ON *INLR 15/08/16 5769RG1 V4R4M0 990521 IBM RPG/400 PASOJGR/PRUEBA R e s u m e n d e M e n s a j e s * QRG4037 Gravedad: 00 Número: 1 Mensaje . . . . : La longitud del campo de entrada alfanumérico excede de 256. El Nombre de Campo toma por omisión el nombre de estructura de datos. * QRG4143 Gravedad: 30 Número: 1 Mensaje . . . . : Nombre definido anteriormente como archivo, nombre de registro, o una constante con nombre. Se ignora la línea de especificación. * QRG5063 Gravedad: 30 Número: 1 Mensaje . . . . : El nombre de Archivo Descrito Externamente no es válido en el Factor 2 (posiciones 33-42) para la Operación especificada. * QRG5194 Gravedad: 30 Número: 2 Mensaje . . . . : El nombre especificado con anterioridad se define como archivo o nombre de Formato de Registro. * QRG7030 Gravedad: 30 Número: 1 Mensaje . . . . : El campo o el indicador no está definido. Totales Programa Fuente: Registros . . . . . . . . . : 9 Especificaciones . . . . . : 9 Registros de Tablas . . . . : 0 Comentarios . . . . . . . . : 0 Compilación detenida. Se han encontrado errores de gravedad 30 en archivo. * * * * * F I N D E C O M P I L A C I O N * * * * * ________________________________ De: [email protected]<mailto:[email protected]> <[email protected]<mailto:[email protected]>> en nombre de Alex Martínez <[email protected]<mailto:[email protected]>> Enviado: martes, 16 de agosto de 2016 03:18 a. m. Para: forum.help400 Asunto: Re: REPLACE SQL Hola Quizás con el TRANSLATE http://ibmsystemsmag.com/Blogs/DB2utor/Archive/using-the-translate-function-in-sql/ [http://www.ibmsystemsmag.com/getattachment/2a3cde63-f108-4d3c-b2ac-6b12cc0aac89/image.aspx]<http://ibmsystemsmag.com/Blogs/DB2utor/Archive/using-the-translate-function-in-sql/> IBM Systems Magazine - Using the Translate Function in SQL<http://ibmsystemsmag.com/Blogs/DB2utor/Archive/using-the-translate-function-in-sql/> ibmsystemsmag.com<http://ibmsystemsmag.com> Using the Translate Function in SQL. May 12, 2009 The translate function can be a very powerful tool in the SQL coder's tool belt. TRANSLATE converts a string ... El 16 de agosto de 2016, 10:09, CEL - Informatica <[email protected]<mailto:[email protected]>> escribió: Hola, Juan. Según este artículo http://www.itjungle.com/fhg/fhg072711-story01.html, no existe una función de reemplazar; pudiendo hacerlo con una combinación de SUBSTR y CONCAT. Se me antoja farragoso. Saludos. Víctor. ----- Original Message ----- From: Juan Gutierrez Ruiz<mailto:[email protected]> To: forum.help400<mailto:[email protected]> ; [email protected]<mailto:[email protected]> ; [email protected]<mailto:[email protected]> Sent: Saturday, August 13, 2016 4:57 AM Subject: REPLACE SQL Buenas Noches Foro estoy trabajando para un cliente que tiene un as400 R4 v4 y en SQL estoy usando el REPLACE REPLACE en *LIBL de tipo *N no encontrado. UPDATE PASOJGR/BCFDPF SET BCFDPF = REPLACE (BCFDPF , '}' , '0' ) WHERE BCFDPF LIKE '%}%' pero no me lo soporta cual seria el equivalente saludos ________________________________ ____________________________________________________ Ú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.
____________________________________________________ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.

