Unicode Attribute - Necessary before Unicode Conversion?
We are about to upgrade to ECC 6.0 with a Unicode conversion.
I know that the "Unicode Checks Active" flag must be set in every
customer program in order for the code to run in an ECC 6.0 unicode environment.
My question is does this HAVE to be done before we do the unicode
conversion. What we would like to do is convert the system to ECC 6.0
with Unicode and then apply the transports which set the "Unicode
Checks Active" flag. Since some of these transports contain new
objects, we would prefer to upgrade to ECC 6.0, then convert to unicode
first and apply the transports afterwards, to reduce the risk of potentially needing to rerun
scans.
Ideally we would have cleared all this before the upgrade, but we only
found this issue in our test system after we had upgraded it.
Is this a bad plan?
Hi Chris,
it is not necessary to set the Unicode flag for programming objects in order to succeed with the technical Unicode conversion.
However please keep in mind that the programs without flag will not work in the Unicode environment (as you already stated).
Best regards,
Nils Buerckel
SAP AG
Similar Messages
-
Wht is the difference between unicode program and non unicode program ?
Hi guru,
wht is the difference between unicode program and non unicode program ?
Regards
SubashAbout brief idea about unicode
In the past, SAP developers used various codes to encode characters of different alphabets, for example, ASCII, EBCDI, or double-byte code pages.
ASCII (American Standard Code for Information Interchange) encodes each character using 1 byte = 8 bit. This makes it possible to represent a maximum of 28 = 256 characters to which the combinations 00000000, 11111111 are assigned. Common code pages are, for example, ISO88591 for West European or ISO88595 for Cyrillic fonts.
EBCDI (Extended Binary Coded Decimal Interchange) also uses 1 byte to encode each character, which again makes it possible to represent 256 characters. EBCDIC 0697/0500 is an old IBM format that is used on AS/400 machines for West European fonts, for example.
Double-byte code pages require 1 or 2 bytes for each character. This allows you to form 216 = 65536 combinations where usually only 10,000 - 15,000 characters are used. Double-byte code pages are, for example, SJIS for Japanese and BIG5 for traditional Chinese.
Using these character sets, you can account for each language relevant to the SAP System. However, problems occur if you want to merge texts from different incompatible character sets in a central system. Equally, exchanging data between systems with incompatible character sets can result in unprecedented situations.
One solution to this problem is to use a code comprising all characters used on earth. This code is called Unicode (ISO/IEC 10646) and consists of at least 16 bit = 2 bytes, alternatively of 32 bit = 4 bytes per character. Although the conversion effort for the R/3 kernel and applications is considerable, the migration to Unicode provides great benefits in the long run:
The Internet and consequently also mySAP.com are entirely based on Unicode, which thus is a basic requirement for international competitiveness.
Unicode allows all R/3 users to install a central R/3 System that covers all business processes worldwide.
Companies using different distributed systems frequently want to aggregate their worldwide corporate data. Without Unicode, they would be able to do this only to a limited degree.
With Unicode, you can use multiple languages simultaneously at a single frontend computer.
Unicode is required for cross-application data exchange without loss of data due to incompatible character sets. One way to present documents in the World Wide Web (www) is XML, for example.
ABAP programs must be modified wherever an explicit or implicit assumption is made with regard to the internal length of a character. As a result, a new level of abstraction is reached which makes it possible to run one and the same program both in conventional and in Unicode systems. In addition, if new characters are added to the Unicode character set, SAP can decide whether to represent these characters internally using 2 or 4 bytes.
A Unicode-enabled ABAP program (UP) is a program in which all Unicode checks are effective. Such a program returns the same results in a non-Unicode system (NUS) as in a Unicode system (US). In order to perform the relevant syntax checks, you must activate the Unicode flag in the screens of the program and class attributes.
In a US, you can only execute programs for which the Unicode flag is set. In future, the Unicode flag must be set for all SAP programs to enable them to run on a US. If the Unicode flag is set for a program, the syntax is checked and the program executed according to the rules described in this document, regardless of whether the system is a US or an NUS. From now on, the Unicode flag must be set for all new programs and classes that are created.
If the Unicode flag is not set, a program can only be executed in an NUS. The syntactical and semantic changes described below do not apply to such programs. However, you can use all language extensions that have been introduced in the process of the conversion to Unicode.
As a result of the modifications and restrictions associated with the Unicode flag, programs are executed in both Unicode and non-Unicode systems with the same semantics to a large degree. In rare cases, however, differences may occur. Programs that are designed to run on both systems therefore need to be tested on both platforms.
You can also check out these official SAP locations on the SAP Service Marketplace:
http://service.sap.com/unicode
http://service.sap.com/unicode@SAP
http://service.sap.com/i18n
Regards,
Santosh -
Create unicode file and read unicode file
Hi
How can create a unicode file and open unicode file in LV
Regards
Madhugmadhu wrote:
Hi
How can create a unicode file and open unicode file in LV
Regards
Madhu
In principle you can't. LabVIEW does not support Unicode (yet)! When it will officially support that is a question that I can't answer since I don't know it and as far as I know NI doesn't want to answer.
So the real question you have to ask first is where and why do you want to read and write Unicode file. And what type of Unicode? Unicode is definitly not just Unicode as Windows has a different notion of Unicode (16 Bit characters) than Unix has (32 Bit characters). The 16 Bit Unicode from Windows is able to cover most languages on this globe but definitly not all without code expansion techniques.
If you want to do this on Windows and have decided that there is no other way to do what you want you will probably have to access the WideCharToMultiByte() and MultibyteToWideChar() Windows APIs using the Call Library Node in order to convert between 8 bit multybyte strings as used in LabVIEW and the Unicode format necessary in your file.
Rolf Kalbermatter
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
Unicode(String) to actual Unicode !
Hi, i have an unicode data which is retrieved from database, the unicode is in String format(\u4eba\u53c2), how to make it to be actual unicode "\u4eba\u53c2". i have a problem where the unicode from database doesn't give me the actual character but the unicode string itself. Please comment on it . Thanks.
_calvHi Calv,
I'm pretty sure that the conversion from the ASCII string to Unicode is not available within the API. (If someone knows otherwise please jump in). However it should be fairly easy for you to program this conversion: for example, you could parse your string into the six character substrings that represent characters, strip off the \u, and then cast the sixteen bit integer into a Character.
In case it's helpful, I am pasting a couple of methods I wrote to go in the opposite direction:
returns a (ASCII) string that represents the specified character by a unicode escape sequence
static public String toUnicodeString( char character) {
short unicode = (short) character;
char hexDigit[] = {
'0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', 'a', 'b', 'c', 'd', 'e', 'f'
char[] array = {hexDigit[( unicode >> 12) & 0x0f],hexDigit[( unicode >> 8) & 0x0f],
hexDigit[( unicode >> 4) & 0x0f], hexDigit[ unicode & 0x0f] };
String result = new String ("\\u" + new String (array));
return result;
returns a (ASCII) string representing the java string argument:
e.g. -> "\u1234\u5678"
static public String toUnicodeString( String string) {
String result = "\"";
for (int index = 0; index < string.length (); index++) {
result = result + toUnicodeString (string.charAt (index));
result = result + "\"";
return result;
} Regards,
Joe -
File adapter modules : Access to file data before content conversion
I have a file sender channel for which content conversion in applied. The incoming file has data in comma separated values format.
e.g.
102366,Amol Joshi,DEPT1
107752,XYZ PQR,DEPT2
I want to access the the actual data in the file before content conversion takes place. Is it possible to access this data inside the adaper module? I tried creating an adapter module and put it before CallSAPAdapter,it still gets the XML after content conversion as the input data to the module.
Any pointers?Hi Amol,
I dont know if it is the right approach.
But if u r not able to meet ur requirement u can do one work around.
Use Message Transformation Bean to convert it once again in to CSV (flat file structure) and then proceed with ur module.
There should be a better way than this.
Hope we could find a better solution in the forum.
Regards,
Sudharshan -
good morning , I have installed Creative Suite 5.5 Design Premium and I want to uninstall the Adobe Indesign CS5.5. Deactivation of the license is necessary before then reinstall ?
Are you just uninstalling ID, and leaving the rest of the suite in place? You don't need to deactivate to do that.
A suite license does not permit you to install individual components on many different machines so that different users have access to them, if that is what you are contemplating. -
How to create a non-unicode transport on a unicode system?
Folks,
Occassionally, I have to create transports for some of the functions from our unicode-based SAP system. The created transports by default are unicode and thus cannot be installed on a non-unicode SAP client. Is there a way to create non-unicode transport from a unicode SAP system?
Note that the transport contains only the code (function modules). There is no data.
Thank you in advance for your help.
Regards,
PeterHi Peter,
Note 638357 - Transport between Unicode systems and non-Unicode systems
Regards
Ashok Dalai -
URGENT: building Unicode ASO application from Unicode BSO application?
Hello Experts,
Is there other options available for building Unicode ASO application from Unicode BSO application?
As per readme documentation of version 11.1.1.3.00,
http://download.oracle.com/docs/cd/E12825_01/epm.111/esb_1111300_readme.pdf
Block storage non-Unicode outlines can be converted to aggregate storage non-Unicode outlines; however, block storage Unicode outlines cannot be converted to aggregate storage Unicode outlines. [8208584]
Can anyone suggest how to extract the Unicode Block Storage Outline and build as Unicode Aggregate Storage Outline? Thanks in advance.
Regards,
SudhirHi,
You could use the [Outline Extractor|http://www.appliedolap.com/free-tools/outline-extractor] or ODI to extract the metadata from an outline and then use it to load into another database.
Or use the same methods you built the metadata in the original BSO database.
Cheers
John
http://john-goodwin.blogspot.com/ -
Unicode Conversion necessary before 2004s upgrade??
Hello,
Can anyone tell me if it is necessary to do an Unicode Conversion first before upgrading a BW system to BW 2004s?
The Portal we are going to use is unicode enabled.
So this raises the question: "Do we need an Unicode Conversion first?".
Regards,
JosHello,
It's not necessary to do a unicode conversion for NW 2004s BI. We still support non-unicode systems for NW 2004s BI. This link explains the pro's and con's of staying on non-unicode for SAP NetWeaver BI.
http://service.sap.com/~sapidb/011000358700006750052002E
Regards,
Bryan -
Open/Modifiable transports before unicode conversion
Hi,
We are planning to convert our ERP 6.0 system to Unicode starting with our DEV environment. Is it manadatory to release the open/modifiable change requests (transports) before we start the export/import on our DEV system? This is an upgrade of the ERP system so I am thinking we do not need to. But need some confirmation.
Thanks.Hi,
this is a second aspect.
Basically you ask whether it is possible to transport between a Unicode system (DEV) and a Non-Unicode system (QAS).
In most cases, this is possible. Please have a look at SAP note 1322715 > Point 9 for details.
Best regards,
Nils Buerckel -
Change of Unicode attribute in a custom made class
Hi,
In relation to a Unicode conversion, I have a program that calls a Class ZHRxxx.
After I have changed the attribute to Unicode check, I get a new error in the method Constructor:
Class ZHRCLPA001,Method CONSTRUCTOR
In the constructor method, you can only access instance attributes,instance methods, or "ME" after calling the constructor of the
superclass . . . . . .
The code is one line:
method CONSTRUCTOR.
Assign pernr to class attribute
a_pernr = i_pernr.
endmethod.
Any ideas ?
ThanksHello Peter
Alexander gave you already the answer. However, based on the naming of your z-class I assume that you are trying to read or access infotype tables. Are you aware of class <b>CL_PT_EMPLOYEE</b>? This class provides you with a simple acccess to any <b>infotypes</b> you need.
[code&----
*& Report ZUS_SDN_CL_PT_EMPLOYEE
REPORT zus_sdn_cl_pt_employee.
DATA:
go_employee TYPE REF TO cl_pt_employee.
PARAMETERS:
p_pernr TYPE pernr_d,
p_begda TYPE begda,
p_endda TYPE endda.
START-OF-SELECTION.
go_employee ?= cl_pt_employee=>get_employee( p_pernr ).
CALL METHOD go_employee->get_master_data
EXPORTING
im_begda = p_begda
im_endda = p_endda
IMPORTING
EX_I0000 = " infotype 0000
EX_I0001 = " infotype 0001
EX_I0002 = " infotype 0002
EX_I0007 =
EX_I0008 =
Using this method you can access any infotype(s)
CALL METHOD go_employee->if_pt_employee~get_infotypes
EXPORTING
i_itlist =
I_FROMDATE =
I_TODATE =
I_FILTER =
I_NOAUTHCHECK =
IMPORTING
E_RESULT =
E_RETCD =
END-OF-SELECTION.[/code]
The class is final. However, if you need a class hierarchy simply define your z-classes having CL_PT_EMPLOYEE as instance attribute.
Regards
Uwe -
Pdf conversion from a non unicode system to a unicode system
Hi,
I have a BSP application that runs on a unicode system which retrieves data to be output in pdf from a non unicode sap system.
We get the data from the non unicode system through a RFC call and store data in table otfdata type itcoo, then we perform the conversion through the following:
perform pdfcnv_convertotf in program saplstxw
tables otfdata
pdf
using
'T'
archive_index
1
'T'
pdf_bytecount
app_tot_xstring
and then perform the hex conversion, but the printout is full of # chars. The good characters are followed by the # char. It looks like the unicode conversion is not good.
Thank you in advance for your help.
Best regards,
DonatellaWelcome to SDN
check out this weblog where Thomas Jung explains unicode conversion for excel, the same thing could be applied in your case as well
/people/thomas.jung3/blog/2004/08/09/bsp-download-to-excel-in-unicode-format
Regards
Raja -
UCCHECK - do you need to complete all before the conversion?
Hello,
We are preparing for the Unicode conversion - so question is, do you need to do the UCCHECK before the Unicode conversion or can you do it after?
Or at least, can you do just part of it and complete the rest after the conversion? And what if you missed some?
What problem do you see here?
Thanks,
TerryHi Rainer,
Thanks for the prompt reply.
Our situation is this - we have just completed upgrading our 46C DEV to the non-Unicode but we don't have immediate ABAP resource to do the UCCHECK. Our upgrade path is the standard (export, delete non-Unicode, install Unicode/import), so we will not have the non-Unicode system to work later.
So we are thinking of doing the UCCHECK in the Unicode system - that is still ok? Any risk?
We are awre we can not test programs until its enabled.
Thanks again,
Terry -
Client Copy between unicode system and non-unicode system
Hello,
we have to build up a new system for japan. It is planned to install a new 4.7Ext200 unicode system and then make a client copy from a non-unicode 4.7Ext200 (language= german, english) system to the unicode system. I don't think that this is possible way, but I can't find information regarding client copies from non-unicode to unicode. I would advice the project to convert the existing non-unicode system to unicode, make a system copy for the new system and then install japan languages. Any information, which can help me.
Regards,
AlexanderHi,
without conversion client copy is not possible
look at following
Re: Client copy between unicode and Non-unicode
regards,
kaushal -
Unicode vs. Non-Unicode with MI
Hi all,
We are looking at doing an installation of MI. We are currently Non-Unicode on our ERP system, although a Unicode conversion project is not too far away.
According to the document: "How To Design a SAP NetWeaver Based System Landscape" (NW 7.0, ver 1, March 2008) on pg 15, it says:
"It is required that an MI system with AS ABAP has the same Unicode type as the MI back-end system: If your MI back-end system is a Unicode system, also install a Unicode MI system (that is, both AS ABAP and AS Java on Unicode); if your MI back-end system is non-Unicode, install an MI system with non-Unicode AS ABAP (that is, AS Java on Unicode and AS ABAP on non-Unicode).
Recommendation
For new installations, it is recommended to install a Unicode based system for all SAP applications and SAP NetWeaver deployments that require an AS ABAP usage type based system (AS JAVA is only available in Unicode). In future all new installations from SAP will be Unicode only."
This is clearly conflicting...We are an English-only shop, we have a Unicode conversion imminent, and SAP's direction is clearly Unicode.
Should we even consider a Non-Unicode install?
Thanks,
TroyHi,
install a unicode middleware system for the following reasons:
- Soon the BE will be unicode enabled.
- The MI client is anyway unicode enabled, this means the end users can enter unicode characters anyway. After Unicode conversion of the backend your MI server would be the only non unicode component.
- having the mw as unicode does not harm, even if the BE is non unicode (apart from the bigger DB size due to the code page)
Best Regards,THomas
Maybe you are looking for
-
Pdf files are locking up mac repeatedly, having to reboot - Please Help
I've been using a website (not mine) where the user enters info into a form, and it generates a single page report that pops up a download dialogue box on your computer that says: "bh_main-53.cfm" may be an application. It was downloaded from the Int
-
Hi, I've read olds topics in nokia discussions web site, but i still have the same problem. I bought N95 free SIM, i've installer pc suite and NSU. All work fine, PC Suite detect the N95 connected to pc with a usb cable. I can backup and restore my d
-
How do I stop QuickTime from running my photos too?
I downloaded QuickTime to play video, but it's running my Photos files too, and I can't find any Options Menu to stop it doing that! Please help. [email protected]
-
Guys, Anybody has ever done the MS CRM integration with OIM. MY requirement is as follows User initiates a self service request for the application and may populate some fields like country or primary service line (fields yet to be determined, but as
-
Hello, I´m using the transaction launcher for launching a guitransaction. I´ve done all steps needed for calling the transaction: copying bor objecttype tstc and generating it, defining logical system, starting the wizard and of course embedding it i