Avalados por :

Cómo solucionar el error de mapeo en SAP: Guía paso a paso

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 15 Vistas
0
Cargando...

Hi,

Tengo un escenario de File -> PI -> ECC.

De vez en cuando obtengo un error en el mapeo y el error es el siguiente:

< SAP:P2 > com.sap.aii.utilxi.misc.api.BaseRuntimeException: </ SAP:P2 >

< SAP:P3 > Se encontró un carácter XML no válido (Unicode: 0x1a) </ SAP:P3 >

< SAP:P4 > en el contenido del elemento del documento. </ SAP:P4 >

El error se produce porque el archivo que recibo contiene nombres con un carácter Unicode.

Solo puedo verlo en Notepad. La pequeña flecha en el nombre es lo que causa el error.

Si elimino la pequeña flecha del nombre, el procesamiento funciona correctamente.

Así que esa es mi descripción del error.

He estado buscando en scn y encontré algunas descripciones del problema, pero nunca una solución real.

Ahora sería lo

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Hola Robert,

¿Has intentado usar una UDF con un código java que asigna ese valor a una cadena utilizando la codificación UTF-8?

Saludos,

Edu

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola,

Primero intenté establecer la codificación del archivo en UTF-16

Pero eso no resolvió mi error.

Luego intenté el consejo sobre el módulo. Inserté el MessageTransformBean de la siguiente manera:

¿Está hecho correctamente? Si es correcto, entonces tampoco ayuda. Si no es correcto, por favor, aconseje cómo hacerlo correctamente.

Saludos

Robert

modules.JPG file-encoding.JPG
Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Este mensaje fue moderado.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

¡Hola Robert!

Podrías intentar usar el siguiente código Java para reemplazar ese carácter:

private String stripNonValidXMLCharacters ( String in ) {
if ( in == null || ( "" . equals ( in ))) return null ;
StringBuffer out = new StringBuffer ( in );
for ( int i = 0 ; i < out .

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?