06-25-2009 1:28 PM
Hi Guys,
We have converted our 4.7 system to Unicode. One of the issues we are facing is in the interface which transfers data from SAP to an external system which is Non-Unicode.
Interface transfers the data to application server which is then FTPed to the external system.
Problem arises only when there are special characters.
When SAP was non-unicode, there was no issue with special chars (eq u0160KOLÍCÍ PŘÍPRAVEK, áìèø¹¾ýáíé, etc)
After unicode conversion, the external system is not able to recognize the special characters (obviously because of the code page issue).
When we changed the code to 'Open dataset encoding NON_UNICODE', all the special characters now gets converted to # in the application server itself. So, no point in sending that data.
I tried logging in with the different languages and executing the code; same result.
Is there a solution?
Appreciate your responses.
Thanks,
Bikash
06-25-2009 1:33 PM
> When we changed the code to 'Open dataset encoding NON_UNICODE', all the special characters now gets converted to # in the application server itself. So, no point in sending that data.
You could do
open dataset for output in legacy text mode code page 1100 (or 1160)
to simulate the old behaviour.
You could also add a call to "sapiconv" to convert the text file.
I would though make the target system receiving the FTP file Unicode aware.
Markus
06-25-2009 1:33 PM
> When we changed the code to 'Open dataset encoding NON_UNICODE', all the special characters now gets converted to # in the application server itself. So, no point in sending that data.
You could do
open dataset for output in legacy text mode code page 1100 (or 1160)
to simulate the old behaviour.
You could also add a call to "sapiconv" to convert the text file.
I would though make the target system receiving the FTP file Unicode aware.
Markus
06-25-2009 2:23 PM
Hi Bikash,
it looks like you want to download multi language data in one file.
This is only possible when using Unicode (UTF-8) in the file.
In case of a Non-Unicode file, you have to separate the data according to the existing Non-Unicode code pages and create multiple files.
Then you need to logon with the correct language (e.g. EN for Latin-1 data, CZ for Latin-2, RU for cyrillic, ...) in order to download special characters properly.
Alternatively you can also switch sy-langu via SET LOCALE LANGUAGE <lang> directly in the report.
Regards,
Nils Buerckel
Solution Management
Globalization Services
SAP AG
06-26-2009 7:46 AM
Thanks Guys for taking time to answer my question.
Markus, i had tried using the code page addition. But it results in runtime error saying 'cannot convert from code page 4102 to 1100'.
Nils, creating different files might not be acceptable for the client.
We have sent the code for testing and waiting for client's response. Based on the reply, we will have to decide what path to take. will also check if sapiconv is a viable option.
Regards,
Bikash
06-26-2009 10:43 AM
> Markus, i had tried using the code page addition. But it results in runtime error saying 'cannot convert from code page 4102 to 1100'.
we used that method before successfully to transfer data... don't know why it's not working for you...
Markus
06-26-2009 3:48 PM
>
> Nils, creating different files might not be acceptable for the client.
>
Hi Bikash,
then you have to select UTF-8 (Unicode). It is technically not possible to create an "MDMP like" Non-Unicode file containing multiple code pages in from a Unicode system.
Best regards,
Nils Buerckel
SAP AG