cancel
Showing results for 
Search instead for 
Did you mean: 

Invalid Characters - Control Characters

neilpadilla
Participant
0 Kudos

Hi Guys,

I have encountered a mapping error in PI.

As per checking using Notepad++, there are invisible characters in the content.

    

Scenario:

ECC -> PI Integration Engine

From ECC, the IDoc field contains number signs '#'.

    

However upon receiving in PI, the other number signs are no longer visible. And the mapping error is encountered. When the payload is viewed with a Notepad++, the number signs are now replaced into control characters.

    

How could this be possible that the values (number signs) were replaced when received in PI?


Regards,

Neil

Accepted Solutions (0)

Answers (4)

Answers (4)

RaghuVamseedhar
Active Contributor
0 Kudos

Neil,

It seems data entry issue (typo by user). Request functional team to correct data in SAP ABAP tables.

If there are multiple Purchase Oreders with these characters, you have to find root cause (user is repeating typo OR it is due to some ABAP program storing extra characters).

FYI. Message is failing in Message Mapping as & is not escaped.

# Esc # GS RS US GS GS  ---   #  #     

http://unicode-table.com/en/#001D

Fix the issue in source system. If it is not possible, before Message Mapping use Java Mapping to replace & with &

former_member182412
Active Contributor
0 Kudos

Hi Neil,

Check this sap note 1420744 - IDoc adapter: Rare special characters in IDoc XML


Regards,

Praveen.

engswee
Active Contributor
0 Kudos

Hi Neil

The field BSTNK looks like it's related to a sales order in the ECC system. Can you check the sales order using VA03 and see what is the value under Purchase Order number? Does it have any of these special characters and how does it look like?

Additionally, can you check the RFC destination that is used for the IDoc communication between ECC and PI. Not sure if you are using IDoc or IDoc_AAE adapter, but you should be able to find the RFC destination by clicking on the IDoc port used in the partner profile.

Regards

Eng Swee

neilpadilla
Participant
0 Kudos

Hi Eng,

In VA03, the values are set as # symbols.

    

In the RFC Destination, it is set as Unicode.

    

I have tried to replicate it in the QA environment but cannot recreate the error as it was successful in QA.

Regards,

Neil

engswee
Active Contributor
0 Kudos

Hi Neil

By any chance, is the sales order created by interface as well? If yes, are you able to track the original payload that created this sales order?

In the short term, you might want to explore the note that Praveen mentioned. You can check the hexadecimal representation of the special characters in your payload by using a Hex Editor (Notepad++ has such a plugin for it). If they match the characters that will be filtered by the Note, then you can possibly use it.

However, for long term, you will need to resolve this on the sender side, which is also recommended by the note. As such, you need to trace back where is the origin of such characters.

Regards

Eng Swee

Harish
Active Contributor
0 Kudos

Hi Neil,

The special character is not visible in PI monitoring because of encoding issue. You need to use right encoding conversion in sending adapter to read those character.

you can refer the below blogs to handle the encoding

http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/502991a2-45d9-2910-d99f-8aba5d79f...

regards,

Harish