Errors in unicode check
Plz tell me wht type of errors might occur while doing unicode check?
Plz tell me wht is unicode and unicode check
hi pavan,
<b>what is unicode?</b>
From Release 6.10, ABAP supports multi-byte coding for characters in Unicode. Prior to Release 6.10, ABAP used only character sets that were based on single-byte codes such as ASCII and EBCDIC or double-byte codes, such as SJIS and BIG5.
<b>what is unicode enabled program?</b>
A Unicode-enabled ABAP program is a program in which all Unicode checks are effective. Such a program returns the same results in a non-Unicode system as in a Unicode system .In order to perform the relevant syntax checks, you must activate the Unicode flag in the screens of the program and class attributes.
<b>Type of errors in unocode check.</b>
This switch to Unicode affects all statements where an explicit or implicit assumption is made about the internal length of a character. If you use these statements in a program that is designed to exploit the Unicode capabilities of the runtime environment, they must be checked and changed if necessary. Once a Unicode-enabled program has been changed accordingly, it behaves in the same way in both Unicode and non-Unicode systems. You can develop programs in a non-Unicode system (NUS) and then import them into a Unicode system (US).
<b>Hope this is helpful, Do reward points.</b>
Similar Messages
-
Getting errors while conversion of ABAP program into Unicode check
Hi,
I changed the one ABAP program for some requirement and try to save it, it is giving error that the program is not unicode compatible.I set the unicode checks active box under Attributes and again activate it .It is not allowing to concatenate the two variables which is declared as follows :
constants: c_tab type x value '09', "tab character
c_cr type x value '0D'. "carriage return character
I tried to use field symbols but still giving error (code after change)
constants: c_tab type x value '09', "tab character
c_cr type x value '0D'. "carriage return character
field-symbols : <f_c_tab> type any,
<f_c_cr> type any.
Assign c_tab to <f_c_tab> CASTING type c.
Assign c_cr to <f_c_cr> CASTING type c.
error :The length of "C_TAB" in bytes must be a multiple of the size of a Unicode character (regardless of the size of the Unicode character).
pls guide me so that I can cancatenate the c_tab and c_cr variablesHi,
Tab Character ----->Data: tab type c value cl_abap_char_utilities=>HORIZONTAL_TAB.
Carraige Return---->Data : cr(2) type c value cl_abap_char_utilities=>cr_lf..
You will not be able to use the concatenate statement for hexadecimal variables in unciode system.
Try using the above equivalent character variables. In unicode system avoid using hexadecimal variables wherever possible
Regards,
lakshman. -
How to do the Unicode Check for Business Objects ?
Hi all,
How to do the Unicode Check for Business Objects ?
Note: All business Objects are stored in BOR (Business Objects Repositary)
Thanks in advance
Sri..Hi..
i have used the UCCHECK transaction for some business Objects
For some business objects it is showing that No Unicode Errors found Ex: Z00MARA
and for Business Objects it showing the message like : There is no program corresponding to this selection.
Why system is showing like this ?
Thanks in advance
Sri.. -
Isn't unicode check defaulted in ECC 6.0 ?
I see a checkbox called unicode check box in the attributes when I create the ABAP program. This check is to make sure that during sytanx check the system will perform unicode check.
Now, I had an assumption that this check box is used only when you are executing programs on lower level of SAP like SAP 4.6C or 4.7 to ensure that programs are checked for unicode check.
But, I see that in ECC 6.0 also if you don't use this check box the system will bypass the unicode check. I thought that in ECC 6.0 , unicode check is done by default, but it does not sound like that .
Can someone throw some light on this ?
Regards,
Rajesh.Hello Rajesh
I do not think so. You could do the following test on your system (Unicode or non-Unicode?):
Write a simple ABAP report and try move data between a structured and an unstructured variable, e.g.:
DATA: gd_string TYPE string. " unstructured, C-container
DATA: gs_kna1 TYPE kna1.
SELECT SINGLE * FROM kna1 INTO gs_kna1.
gd_string = gs_kna1. " should give Unicode error -> use instead cl_abap_container_utilities class
Regards
Uwe -
Hi,
I have used this stmt (DESCRIBE FIELD GT_TLINE LENGTH fle1 )
to get the length of fields but i am getting errors based on unicode check like
describe length can only be in byte mode or character mode.
My program is about converting the output of smartform to pdf and send as an attachment to email.
Can any one answer me on this issue.
Thanks,
lalitha.Hi,
For this u shud use DESCRIBE FIELD GT_LINE LENGTH fle1 in BYTE/CHARACTER MODE as per the new guidelines for Unicode check
The description of BYTE/CHARACTER MODE says like this :
The length directly used by the data object dobj in the memory is determined in bytes or characters depending on the addition MODE and is assigned to the data object ilen. The data type i is expected for ilen.
You must specify the addition MODE in Unicode programs. The variant with the addition IN BYTE MODE determines the length of the data object dobj in bytes. The variant with the addition IN CHARACTER MODE determines the length of the data object dobj in characters. When using IN CHARACTER MODE, the data type of dobj must be flat and character-type. You can only specify IN BYTE MODE for deep data types and in this case, the length of the reference (8 bytes) is determined.
In non-Unicode programs and in releases prior to 6.10, LENGTH can be used without the addition MODE. In this case, the addition IN BYTE MODE is used implicitly
Note
For data objects with a fixed length, the length is determined that is specified during the creation of the data object. To determine the the used length of character-type data objects without counting the trailing spaces, you can use the built-in function strlen.
Regards,
Himanshu -
What is unicode check in sap?
what is unicode check in sap?
Hi
http://help.sap.com/saphelp_nw2004s/helpdata/en/79/c55458b3dc11d5993800508b6b8b11/content.htm
Check for the following errors
object must be a character type data object
In Unicode, the addition IN BYTE/CHARACTER MODE must be specified
The access and storage modes ACCESS and MODE must be specified
var1 and var2 are not mutually convertible. In Unicode programs must have the same type/structure
TRANSLATE CODE PAGE/NUMBER FORMAT not allowed
The data type/structure objetcs in 'ADD' statement should have same type
The data type/structure "&1" and "&2" are should have same type
IN TEXT MODE the addition ENCODING must be specified
Structures "&1" and "&2" are not mutually convertible.
The ENCODING addition is not valid in BINARY mode
The IGNORING CONVERSION ERRORS addition is not valid in BINARY mode
The REPLACEMENT CHARACTER addition is not valid in BINARY mode
Check for the Customer code pages and use the tcodes SCOV and SPUMG .
Please Go through these Documents,
Very good document:
http://www.doag.org/pub/docs/sig/sap/2004-03/Buhlinger_Maxi_Version.pdf
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d37d1ad9-0b01-0010-ed9f-bc3222312dd8
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/589d18d9-0b01-0010-ac8a-8a22852061a2
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f8e316d9-0b01-0010-8e95-829a58c1511a -
Hi All ,
Is there any way to have the unicode check feature i.e.UCCHECK in R/3 4.6C environment ? please let me know if anyone has any clue.
Regards
YogeshHello Yogesh
The report Peter mentioned is <b>RSUNISCAN</b>. The output of the report looks like this:
ABAP Unicode Scan
This program finds coding that does not yet correspond to the restrictive Unicode syntax
(Based on the ABAP Unicode design of June 1999) It finds most of the affected coding, but not all of it.
The main aim of the program is to give you an idea of the kinds of coding that need to be changed for Unicode.
It generates error messages for code that will have to be changed later, and for which there are means in 4.6B for doing so
It generates warnings for cases that will have to be changed later, but where the required statements will
not be avilable until Release 5.0. ...
Regards
Uwe -
Attribute 'Unicode checks active'
Hi,
we just made an upgrade from 4.6 to ECC 6.0.
The unicode conversion check and the unicode conversion itself is done.
Each Abap program that has the attribute 'Unicode checks active' not checked ( off ), is causing a syntax error in the new system. Up till now we manually adjusted each attribute of each program, just to get the basic business transactions running.
My question is: what went wrong, and what is the best way of solving all this errors at once ?
Thanks in advance,
RolfRolf,
I'm using ECC 6.0. I tried to do what you suggested for setting unicode flag active for a bunch of programs. Unfortunatelly, I'm bumping in the following problem:
I run UCCHECK and I get "green light" for some objects that don't have unicode flag active yet. So I click on the correspondent line and after on "Set Unicode Attribute" button. I get a pop-up saying that unicode is set active and program is written into a transport request... i click on OK. Another pop-up comes up. "Set Unicode Flag?", I click on Yes. Then, another pop-up comes up saying "Set Flag for Error-Free Programs Only?". I tried Yes, and I get this information message "The current system is not the original system". I tried also NO, but same message is shown.
Any idea on how to get it right?
Thanks. -
Unicode check for hr related prog, infotypes
hi,
Is there any function module to check the unicode for programs, infotypes, function modules, ldb, and user exits. If yes what is the function module. If it is no tell me how to solve this issue.
thanks & regards,
Sekhar.Hi,
I want to get the errors when i am passing the program name or function group or user exit by passing these into UCCHECK tcode by writing a program if it is not unicode checked.
thanks & regards,
Sekhar. -
Tp error during EHPI checks NTCHK phase
Hi,
We are running the EHPI and recieve the following error during the Checks phase:
Severe error(s) occured in phase PREP_GENCHECKS/NTACT_CHK!
Last error code set: Process 'tp' exited with 12, see '/uexports/DV1/EHPI/abap/log/TP.ECO' for details
Error during "tp ntaction"-call - check TP.ECO
TP.ECO=
SAPehpi> Starting subprocess 16165 at 20101007100438
ENV: DIR_LIBRARY=/uexports/DV1/EHPI/abap/exenew
ENV: JAVA_HOME=/opt/java1.4
ENV: LD_LIBRARY_PATH=/uexports/DV1/EHPI/abap/exenew:/uexports/DV1/EHPI/jvm/jre/lib/ia64/server:/uexports/DV1/EHPI/jvm/jre/
lib/ia64:/uexports/DV1/EHPI/jvm/jre/../lib/ia64
ENV: NLS_LANG=AMERICAN_AMERICA.UTF8
ENV: ORACLE_BASE=/oracle
ENV: ORACLE_HOME=/oracle/DV1/102_64
ENV: ORACLE_SID=DV1
ENV: PATH=/uexports/DV1/EHPI/abap/exenew:/opt/java1.4/bin:/oracle/DV1/102_64/bin:.:/home/dv1adm:/usr/sap/DV1/SYS/exe/run:/
usr/bin:/usr/ccs/bin:/usr/contrib/bin:/usr/contrib/Q4/bin:/opt/perl/bin:/opt/hparray/bin:/opt/nettladm/bin:/opt/fcms/bin:/
usr/contrib/kwdb/bin:/usr/bin/X11:/opt/graphics/common/bin:/opt/upgrade/bin:/opt/ipf/bin:/opt/resmon/bin:/opt/perf/bin:/op
t/wbem/bin:/opt/wbem/sbin:/opt/prm/bin:/opt/sec_mgmt/bastille/bin:/opt/dsau/bin:/opt/dsau/sbin:/opt/gnome/bin:/opt/ignite/
bin:/opt/sec_mgmt/spc/bin:/opt/ssh/bin:/opt/hpsmh/bin:/opt/wlm/bin:/opt/hpnpl//bin:/usr/contrib/bin/X11:/opt/sfm/bin:/opt/
mozilla:/opt/perl_32/bin:/opt/perl_64/bin:/opt/swa/bin:/oa/cdirect/ndm/bin:.
ENV: SAPSYSTEMNAME=DV1
ENV: auth_shadow_upgrade=0
ENV: dbms_type=ORA
ENV: dbs_ora_schema=SAPR3
ENV: dbs_ora_tnsname=DV1
EXECUTING /uexports/DV1/EHPI/abap/exenew/tp (/uexports/DV1/EHPI/abap/exenew/tp) ntaction ntop=chkant DV1 pf=/uexports/DV1/
EHPI/abap/bin/DEFAULT.TPP srctt=DDNTT srctf=DDNTF dsttt=DDNTT dsttf=DDNTF intdel=YES -Dntact_timecmp=no protyear=40
initial value of NLS_LANG: 'AMERICAN_AMERICA.UTF8'
This is /uexports/DV1/EHPI/abap/exenew/tp version 372.04.88 (release 701, unicode enabled)
Warning: Parameter INTERRUPT is no longer used.
Warning: unknown parameter MAX_SEMAPHORE_WAIT in parameter file (line 8).
Warning: Parameter DAYLIGHT_SHUTDOWN is no longer used.
Warning: Parameter WITH_TACOB is no longer used.
Warning: Parameter IMPDP_BY_EVENT is no longer used.
Warning: Parameter INTERRUPT is no longer used.
Warning: unknown parameter MAX_SEMAPHORE_WAIT in parameter file (line 8).
Warning: Parameter DAYLIGHT_SHUTDOWN is no longer used.
Warning: Parameter WITH_TACOB is no longer used.
Warning: Parameter IMPDP_BY_EVENT is no longer used.
Warning: Parameter DBCONFPATH is no longer used.
tp finished with return code: 12
meaning:
A tool used by tp aborted
Process with ID 16165 terminated with status 12
NTCHK.LOG=
1 ETQ201 Entering upgrade-phase "NTACT_CHK" ("20101007100438")
2 ETQ367 Connect variables are set for standard instance access
4 ETQ399 System-nr = '00', GwService = 'sapgw00'
4 ETQ399 Environment variables:
4 ETQ399 dbs_ora_schema=SAPR3
4 ETQ399 auth_shadow_upgrade=0
4 ETQ399 Set environment for standard connect:
4 ETQ399 ENV: dbs_ora_schema=SAPR3
4 ETQ399 ENV: auth_shadow_upgrade=0
4 ETQ399 Set RFC variables for standard connect:
4 ETQ399 System-nr = '00', GwService = 'sapgw00'
4 ETQ399 Set tool parameters for standard connect:
4 ETQ399 default TPPARAM: DEFAULT.TPP
1 ETQ200 Executing actual phase 'PREP_GENCHECKS/NTACT_CHK'.
1 ETQ399 Phase arguments:
2 ETQ399 Arg[0] = 'CHKANT'
2 ETQ399 Arg[1] = 'DDNTT'
2 ETQ399 Arg[2] = 'DDNTF'
2 ETQ399 Arg[3] = 'DDNTT'
2 ETQ399 Arg[4] = 'DDNTF'
2 ETQ399 Arg[5] = ''
2 ETQ399 Arg[6] = 'NOBUFRESET'
2 ETQ399 Arg[7] = ''
2 ETQ399 Arg[8] = ''
2 ETQ399 Arg[9] = ''
2 ETQ399 Arg[10] = 'NTCHK.ELG'
4 ETQ380 computing toolpath for request "TP_NTACTION_SHD"
4 ETQ381 request "TP_NTACTION_SHD" means "tp ntact for shadow tables"
4 ETQ382 translates to group "R3UP_TOOL_GROUP_SHDNEW"
4 ETQ383 translates to path "exenew"
4 ETQ383 translates to path "exe"
2 ETQ399 Checking of nametabs ...
4 ETQ399 2010/10/07 10:04:38: put_execute: (tp) forkpid:16165
It doesn't even get to the point of creating NTCHK.ELG
-rw-rr 1 dv1adm sapsys 287923 Oct 7 10:19 SAPehpichk.log
-rw-rr 1 dv1adm sapsys 13144 Oct 7 10:19 TROUBLE_SAVELOGS.LOG
-rw-rr 1 dv1adm sapsys 151957 Oct 7 10:19 SAPehpi_troubleticket_logs.sar
-rw-rw-r-- 1 dv1adm sapsys 10039 Oct 7 10:19 SLOG700
-rw-rw-r-- 1 dv1adm sapsys 80609 Oct 7 10:19 ALOG700
-rw-rr 1 dv1adm sapsys 9238 Oct 7 10:19 TP.ECO
-rw-rr 1 dv1adm sapsys 1729 Oct 7 10:19 SAPehpi_troubleticket.log
-rw-rw-r-- 1 dv1adm sapsys 112988412 Oct 7 10:19 PN401007.DV1
-rw-rr 1 dv1adm sapsys 1292 Oct 7 10:05 NTCHK.LOG
-rw-rr 1 dv1adm sapsys 57379 Oct 7 10:05 SAPehpiConsole.log
-rw-rw-r-- 1 dv1adm sapsys 148736 Oct 7 10:04 ULOG10_4
-rw-rr 1 dv1adm sapsys 10692 Oct 7 10:04 SAPehpi.ECO
-rw-rr 1 dv1adm sapsys 10581 Oct 7 10:04 NTCHK.SAV
takderp1:dv1adm 530> ll NT*
-rw-rr 1 dv1adm sapsys 1292 Oct 7 10:05 NTCHK.LOG
-rw-rr 1 dv1adm sapsys 10581 Oct 7 10:04 NTCHK.SAV
SAPehpi_troubleticket.log=
This trouble ticket was created by SAPehpi on 20101007101947
SAPehpi broke during phase NTACT_CHK in module PREP_GENCHECKS / General checks
Error Message: Process 'tp' exited with 12, see '/uexports/DV1/EHPI/abap/log/TP.ECO' for details
Error during "tp ntaction"-call - check TP.ECO
Summary of SAPehpi:
SAPehpi Release: 7.10/1
SAPehpi Version: SAPehpi version 7.10/1
Start Release: 700
Target Release: 701
Summary of host system details:
SID: DV1
Host: takderp1
MS Host: takderp1
GW Host: takderp1
Start Path: /usr/sap/DV1/SYS/exe/run
Kernel Path: /usr/sap/DV1/SYS/exe/run
Summary of operating system details:
OS Type: HP-UX IA64
OS Version: 11.23
Summary of database details:
Database Type: ora
Database Version: 10.2.0.2.0
Summary of RFC details:
Host: takderp1
GW Host: takderp1
Client: 000
Destination: DV1
Language:
System No.: 00
Any help would be appreciated.
Thanks,
JimHi Eric,
I have the log posted above but here is an excert from the TP.ECO log.
Warning: Parameter INTERRUPT is no longer used.
Warning: Parameter DAYLIGHT_SHUTDOWN is no longer used.
Warning: Parameter WITH_TACOB is no longer used.
Warning: Parameter IMPDP_BY_EVENT is no longer used.
Warning: Parameter DBCONFPATH is no longer used.
tp finished with return code: 12
meaning:
A tool used by tp aborted
Process with ID 22858 terminated with status 12
Regards,
JIm -
Set the Unicode check flag for all programs.
Hello friends,
We are now upgrading our ecc6 system to unicode. The problem is that all our programs
are not flaged for unicode checks and there for have syntax errors. I now how to mark
this flag for a single program but how can I do it to all programs?
I realy need your help.
Thanks in advance,
Gershon.Hi Gershon,
In general, transaction UCCHECK is designed to cover all Unicode adaptations needed. The guide called
u201CRequirements of ABAP Programs in Unicode Systemsu201D, which can be found via:
http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/b02d3594-ae48-2a10-83a7-89d369b708e5
gives customers a comprehensive description of possible errors. Please also have a look at the docu provided directly in transaction UCCHECK. In addition, SAP notes 1322715 (search for UCCHECK) and 1319517 (point 8.) might be helpful.
Please note that customer programs have to be adapted - simply setting the Unicode flag works only for the objects with a green traffic light in UCCHECK .
Best regards,
Nils Buerckel
SAP AG -
Regarding updating unicode check flag to all z* programs at once
Hi all,
We are upgrading from 4.7 to ecc 6.0 ,
we have created one pilot server where we have installed ecc 6.0 and all prduction data is copied on it .
OUR basis team has done that process and it is done with unicode check active ,
But all Z programs such as few customs programs are still non-unicode as they are old programs so want
to update unicode check flag which is pressent in attributes of program .
MANUALly you can do for each program and activate that i know ,but how to do it all at once .
Because when we Excecute UCCheck we get all programs which are nonunicode , in which it shows that programs The system found no Unicode syntax errors . whichneeds to be just do unicode check flag active and activate the program .
How that can be done at once all .
Regards
Deepak.Hi ,
My problem is solved ....
i found that after executing UCCHECK transaction code ,in display you will find one button on rigth side
"set unicode attribute" . after selecting no of programs at once we can press that butoon .
The Unicode flag is set for the selected programs. The programs are
written into interactively selectable transport requests and generated.
You must later release the transport requests.
I hope this will be helpfull to all.
Regards
Deepak. -
Offset declaration too big for structure (unicode checks)
Has anyone worked with this user exit to Derive values for co/pa?
Enhancement COPA0001
Comp ZXKKEU11
I set up WA_CE1AWG1 as data: WA_CE1AWG1 like CE1AWG1.
and tried to copy I_COPA_ITEM to this variable
WA_CE1AWG1 = I_COPA_ITEM.
I get a runtime error Offset declaration too big for structure.
will I have to change program SAPLXKKE to remove unicode checks. Is there any other way to read in the fields from input structure I_COPA_ITEM?hi
1.r u sure I_COPA_ITEM is structure or table.
2. if it is a struccture make sure the WA_CE1AWG1 and I_COPA_ITEM are with same structures and types..
i think I_COPA_ITEM is table type --> to find it open in debugging mode then try to resolve.
Please Close this thread.. when u r problem is solved
Reward if Helpful
Regards
Naresh Reddy K -
Hi All,
I want to know about "Unicode Check Active" in ABAP Editor Program Attributes.I don't know anything about this.I want to know
What is Unicode Check Active.
How to Activate this Check Box.
what is meant by Code Pages.
What is UTF-8 UTF-16 & UTF-32.
What is the Use of It.
In ABAP Code the Unicode Check Doesn't Support the some syntax like Open Data set and Describe Lines like that what are all the syntax in ABAP it doesn't support.
Can anybody give me the clear idea about this.So, it will be very helpful to me.This is very urgent.Surely i will reward more points.
Thanks,
Swapna.Hi,
Unicode Check is one of the latest enhancement in SAP which has been done so as to provide SAP product in almost all the language that is spoken in the world.
A program as to be made Unicode check Active in its attribute so that it can be used in Unicode enabled SAP system.
what is unicode?
From Release 6.10, ABAP supports multi-byte coding for characters in Unicode. Prior to Release 6.10, ABAP used only character sets that were based on single-byte codes such as ASCII and EBCDIC or double-byte codes, such as SJIS and BIG5.
what is unicode enabled program?
A Unicode-enabled ABAP program is a program in which all Unicode checks are effective. Such a program returns the same results in a non-Unicode system as in a Unicode system .In order to perform the relevant syntax checks, you must activate the Unicode flag in the screens of the program and class attributes.
Type of errors in unocode check.
This switch to Unicode affects all statements where an explicit or implicit assumption is made about the internal length of a character. If you use these statements in a program that is designed to exploit the Unicode capabilities of the runtime environment, they must be checked and changed if necessary. Once a Unicode-enabled program has been changed accordingly, it behaves in the same way in both Unicode and non-Unicode systems. You can develop programs in a non-Unicode system (NUS) and then import them into a Unicode system
UNICODE CHECK ACTIVE:
You need to use the transaction UCCHECK.
The report documentation is here
ABAP Unicode Scan Tool UCCHECK
You can use transaction UCCHECK to examine a Unicode program set for syntax errors without having to set the program attribute "Unicode checks active" for every individual program. From the list of Unicode syntax errors, you can go directly to the affected programs and remove the errors. It is also possible to automatically create transport requests and set the Unicode program attribute for a program set.
Some application-specific checks, which draw your attention to program points that are not Unicode-compatible, are also integrated.
Selection of Objects:
The program objects can be selected according to object name, object type, author (TADIR), package, and original system. For the Unicode syntax check, only object types for which an independent syntax check can be carried out are appropriate. The following object types are possibilities:
PROG Report
CLAS Class
FUGR Function groups
FUGX Function group (with customer include, customer area)
FUGS Function group (with customer include, SAP area)
LDBA Logical Database
CNTX Context
TYPE Type pool
INTF Interface
Only Examine Programs with Non-Activated Unicode Flag
By default, the system only displays program objects that have not yet set the Unicode attribute. If you want to use UCCHECK to process program objects that have already set the attribute, you can deactivate this option.
Only Objects with TADIR Entry
By default, the system only displays program objects with a TADIR entry. If you want to examine programs that don't have a TADIR entry, for example locally generated programs without a package, you can deactivate this option.
Exclude Packages $*
By default, the system does not display program objects that are in a local, non-transportable package. If you want to examine programs that are in such a package, you can deactivate this option.
Display Modified SAP Programs Also
By default, SAP programs are not checked in customer systems. If you also want to check SAP programs that were modified in a customer system (see transaction SE95), you can activate this option.
Maximum Number of Programs:
To avoid timeouts or unexpectedly long waiting times, the maximum number of program objects is preset to 50. If you want to examine more objects, you must increase the maximum number or run a SAMT scan (general program set processing). The latter also has the advantage that the data is stored persistently. Proceed as follows:
Call transaction SAMT
Create task with program RSUNISCAN_FINAL, subroutine SAMT_SEARCH
For further information refer to documentation for transaction SAMT.
Displaying Points that Cannot Be Analyzed Statically
If you choose this option, you get an overview of the program points, where a static check for Unicode syntax errors is not possible. This can be the case if, for example, parameters or field symbols are not typed or you are accessing a field or structure with variable length/offset. At these points the system only tests at runtime whether the code is sufficient for the stricter Unicode tests. If possible, you should assign types to the variables used, otherwise you must check runtime behavior after the Unicode attribute has been set.
To be able to differentiate between your own and foreign code (for example when using standard includes or generated includes), there is a selection option for the includes to be displayed. By default, the system excludes the standard includes of the view maintenance LSVIM* from the display, because they cause a large number of messages that are not relevant for the Unicode conversion. It is recommended that you also exclude the generated function group-specific includes of the view maintenance (usually L<function group name>F00 and L<function group name>I00) from the display.
Similarly to the process in the extended syntax check, you can hide the warning using the pseudo comment ("#EC *).
Applikation-Specific Checks
These checks indicate program points that represent a public interface but are not Unicode-compatible. Under Unicode, the corresponding interfaces change according to the referenced documentation and must be adapted appropriately.
View Maintenance
Parts of the view maintenance generated in older releases are not Unicode-compatible. The relevant parts can be regenerated with a service report.
UPLOAD/DOWNLOAD
The function modules UPLOAD, DOWNLOAD or WS_UPLOAD and WS_DOWNLOAD are obsolete and cannot run under Unicode. Refer to the documentation for these modules to find out which routines serve as replacements.
Reward Points if found helpfull..
Cheers,
Chandra Sekhar. -
Frequently faced errors in Unicode while SAP Upgrade
Hi Gusy,
I am going work on Unicode upgarde project, can any one share Frequently faced errors in Unicode while SAP Upgrade.
Thanks,
Gourisankar.Hi
MESSAGEG@3
Replace variable declaration of type X with appropriate value from method cl_abap_char_utilities
i.e. CONSTANTS: con_tab TYPE x VALUE '09',
con_cret TYPE x VALUE '0D'.
would be replaced with
CONSTANTS: con_tab TYPE c value cl_abap_char_utilities=>HORIZONTAL_TAB,
con_cret TYPE c value cl_abap_char_utilities=>CR_LF.
*UPLO *
Upload/ws_upload and download/ws_download are obsolete, since they are not Unicode enabled. Replace
with appropriate methods from cl_gui_frontend_services. Please also note that the data types of the various
parameters will also probably also need changing for the new method calls but the code below demonstrates
how to do this. I_TABLE is the original table and IT_UCTABLE is the converted table.
i.e. Function module u2018WS_DOWNLOADu2019
CALL FUNCTION 'WS_DOWNLOAD'
EXPORTING
FILENAME = p_file
FILETYPE = 'ASC'
MODE = ' '
TABLES
DATA_TAB = i_table
EXCEPTIONS
would be replaced with
data: gd_file type string.
types: t_uctable like line of i_table.
data: it_uctable type standard table of t_uctable.
gd_file = p_file.
it_uctable[] = i_table[].
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = gd_file
filetype = 'ASC' " DAT,WK1
Append = ' ' "if mode = A then this would be X
CHANGING
data_tab = it_uctable
EXCEPTIONS
OTHERS = 1.
Function module u2018DOWNLOADu2019
CALL FUNCTION 'DOWNLOAD'
EXPORTING
filename = p_file
filetype = 'WK1'
TABLES
data_tab = i_table.
would be replaced with
data: gd_file type string.
DATA: ld_filename TYPE string,
ld_path TYPE string,
ld_fullpath TYPE string,
ld_result TYPE i.
types: t_uctable like line of i_table.
data: it_uctable type standard table of t_uctable.
gd_file = p_file.
shift gd_file RIGHT DELETING TRAILING '\'.
shift gd_file RIGHT DELETING TRAILING '/'.
shift gd_file left DELETING LEADING space.
CALL METHOD cl_gui_frontend_services=>file_save_dialog
EXPORTING
DEFAULT_EXTENSION = 'WK1'
default_file_name = gd_file
INITIAL_DIRECTORY = gd_file
CHANGING
filename = ld_filename
path = ld_path
fullpath = ld_fullpath
user_action = ld_result.
check ld_result eq 0.
gd_file = ld_fullpath.
gd_file = p_file.
it_uctable[] = i_table[].
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = gd_file
filetype = 'ASC' " DAT,WK1
Append = ' ' "if mode = A then this would be X
CHANGING
data_tab = it_uctable
EXCEPTIONS
OTHERS = 1.
Or in circumstances where you need to add field texts to the first line of the file you could use the
GUI_DOWNLOAD function module:
DATA: BEGIN OF fields_tab OCCURS 0,
f1(50),
END OF fields_tab.
fields_tab-f1 = 'field1 text'.
APPEND fields_tab.
fields_tab-f1 = 'field2 text'.
APPEND fields_tab.
fields_tab-f1 = 'field3 text'.
APPEND fields_tab.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filename = i_filename
filetype = 'DAT'
IMPORTING
filelength = filelen
TABLES
data_tab = itab
fieldnames = fields_tab
EXCEPTIONS
Note: u2018ws_uploadu2019 and u2018uploadu2019 would be the same as above but would use the
cl_gui_frontend_services=>gui_upload method call instead:
CALL METHOD cl_gui_frontend_services=>gui_upload
EXPORTING
filename = gd_file
filetype = 'ASC' " DAT,WK1
Append = ' '
CHANGING
data_tab = it_uctable
EXCEPTIONS
OTHERS = 1.
OPEN 004
Add u2018ENCODINGu2019 addition to statement
i.e. OPEN DATASET G_DATAFILE for OUTPUT IN TEXT MODE.
would be replaced with
OPEN DATASET G_DATAFILE for OUTPUT IN TEXT MODE ENCODING NON-UNICODE.
OPEN 002
IN..Mode is expected within open dataset command.
i.e. OPEN DATASET wfilepath FOR OUTPUT.
would be replaced with
OPEN DATASET wfilepath FOR OUTPUT IN TEXT MODE ENCODING NON-UNICODE.
Or OPEN DATASET wfilepath FOR OUTPUT IN BINARY MODE.
OPEN 001
FOR INPUT, FOR OUTPUT, FOR APPENDING or FOR UPDATE expected!
i.e. OPEN DATASET wfilepath FOR OUTPUT.
would be replaced with
OPEN FOR OUTPUT DATASET wfilepath FOR OUTPUT IN TEXT MODE.
DESCIBE002
THE DESCRIBE LENGTH can only be used with the IN BYTE or IN CHARACTER MODE
i.e. describe field e_text length line_length.
would be replaced with
describe field e_text length line_length IN CHARACTER MODE.
ASSIGN 019
The statement u2018ASSIGN PATH+PATHLENGTH TO
.u2019 Returns the following error message:
"You cannot use ASSIGN f+offset. Always use an explicit length (or '*')".
i.e. ASSIGN PATH+PATHLENGTH TO
would be replaced with
ASSIGN PATH+PATHLENGTH(2) TO
. u201Creplace 2 with the length of the field
MESSAGEG!2
Itab/structure and u201C u201C are not mutually convertible in a Unicode program
i.e. G_SHOW_LIST = SPACE.
would be replaced with
Clear: G_SHOW_LIST.
Or G_SHOW_LIST-field1 = space.
G_SHOW_LIST-field2 = space.
u2026etc
*MESSAGEG!3 *
var and var are not comparable in a Unicode program
Example Data: VAR like tabix.
was replaced with
Data: VAR type sy-tabix.
Maybe you are looking for
-
HP LaserJet - network printer problem FIXED
Hi, I'm aware this may not work for all, but I've sorted my own problems, which I suspect are common to many who still have a really solid HP (or other) network printer that was no longer available since Snow Leopard did away with Apple Talk. The ans
-
Hello, I would need to create a report compliant with mass activities. Does anyone know where I could find some documentation (in English) about that? I found a bunch of function modules like FKK_AKTIV2_RUN_KEY_CONSTRUCT that are directly related wit
-
SSRS - Intellisense for Security (Groups and Users) and email subscriptions
When I add a new user to a SQL Server (In SSMS), I can add an AD Group or user, and SQL server will verify their login name. It will reject if wrong and let me search Active Directory and verify names. In MS Outlook I can start typing an email addr
-
HELP!! my iPod wont turn on
my iPod was working fine last night, but i put it onto charge and now my computer doesn't recognize it and i wont even turn on. i've tried to reset and i'm downloading the updater. the problem is, how can i up date if the computer doesn't even recogn
-
1TB HDD in a Thinkpad T500?
Is it possible to replace the SATA 160GB hdd with a 1TB hdd in a Thinkpad T500? It seems some notebooks don't support large drives. Thanks in advance! Solved! Go to Solution.