Extended syntax check how to remove warning
I get the following WARNING message in extended syntax xheck.
How to remove it.
INT_TABLE stands for 2 fields: Table INT_TABLE[] and its header line
Field INT_TABLE is not referenced statically in the program
Here is the definition of int_table
TYPES : BEGIN OF x_table,
SIGN(1) TYPE C,
OPTION(2) TYPE C,
LOW(10) TYPE C,
HIGH(10) TYPE C,
END OF x_table.
int_table TYPE STANDARD TABLE OF x_table.
Int_table is used in a function module as a TABLE parameter in the form,
In the perform S_user_field is used
Hi,
Do some kind of check for ur interanl table in the program.
if not INT_TABLE[] is initial.
endif.
Regards,
Nagaraj
Similar Messages
-
Warning in query in Extended Syntax Check
Hi all,
I perform Extended Syntax Check.
It generates following warning for the query: -
In "SELECT SINGLE....", the WHERE condition for the key field "MATNR" does not test for equality. Therefore the single record in question may not be unique.
(You can hide the message using "#EC *)
Please tell me what does it mean. How can I suppress this warning?
Regards,
Saurabh A. BukshHi,
whenu r using select single use a variable or a workarea don't use tables.
select single matnr from mara into v_matnr
where matnr in s_matnr.
also as it is warning message u can neglectit .
when u r using select single u should give entire key information also.
Regards,
Nagaraj
Message was edited by: nagaraj kumar nishtala -
Extended Syntax Check in abap code
Hi Guys,
We are upgrading from 4.6 C to ECC 6.0. When I do the Extended Syntax check for the custom function module it gives me the following error. Please help.
The EXCEPTION "REPORT_NOT_EXISTENT" is not defined in the interface of the function module "RS_VARIANT_CONTENTS" "RS_VARIANT_CONTENTS". Internal Message Code: MESSAGE G-7.
(The message can be hidden with "#EC ARGCHECKED)
Regards,
Shankar<b>Don't suppress the message. </b> You should only suppress messages if you are aware of why they are appearing, and they are not an error.
What it means is, that in your custom function module, there is some code like
CALL FUNCTION 'RS_VARIANT_CONTENTS'
EXPORTING
report = v_report
variant = v_variant
EXCEPTIONS
VARIANT_NON_EXISTENT = 1
VARIANT_OBSOLETE = 2
REPORT_NOT_EXISTENT = 3
OTHERS = 4
But if you look at FM rs_variant_contents, you'll see this exception is not defined. The correct course of action is to remove it from your call.
matt -
Error in extended syntax check
HI all,
I have declared some constants like this.
constants: c_str1(20) value 'abcdefg,,,,,',
c_str2(4) value 'xyz',
c_str(30).
concatenate c_str1 c_str2 into c_str.
I am getting an error for c_str1 in extended syntax check that 'charetecter strings without text elements will not be translated'.
I am not writing c_str1 anywhere and I just need it for concatenation.
When I tried like this
constants: c_str1(20) value 'abcdefg,,,,,,,'(000).
It is showing a sysntax error that offset is not allowed.
Please provide me the answer.
Regards,
Mungala.hi Praveena,
do this way
concatenate text-001 text-002 into c_str.
double click on text-001 and text-002 and create text elements with abcdefg,,,,,' and 'xyz' values. In 4.6 and above versions .. you got to save and activate ...else just save to remove that error .
REgards,
Santosh -
Doubt in Extended Syntax check
Hi all ,
I am facing a problem when i do a Extended Syntax check for a program . The message i am getting is as follows :
Messages for CALL FUNCTION interfaces(Todo Prio3)
Program: SAPLZC_BWSPI Include: LZC_BWSPIF01 Row: 496 [Prio 3]
No EXCEPTION to set SY_SUBRC Declared for CALL FUNCTION 'FIRST_DAY_IN_TP_GET'
Thus the value of SY-SUBRC is always 0
(The message can be hidden with "#EC *)
can anyone suggest me how to correct it .
thanks,
kumaranSUPPOSE IF YOU HAVE YOUR CODE AS :
CALL FUNCTION XYZ
IMPORTING -
EXPORTING----
JUST WRITE
CALL FUNCTION XYZ "#EC *
IMPORTING -
EXPORTING----
IF SY-SUBRC <> 0.
ENDIF.
THATS ENOUGH.
OR ELSE TRY.
CALL FUNCTION XYZ
IMPORTING -
EXPORTING----
IF SY-SUBRC <> 0. "#EC *
ENDIF. -
Regardding Extended syntax check of one program from another program
Hi,
I have one issue related to Extended syntax check.
I am working on one report [<b>REPORT2</b>] from that i am doing extended syntax check of another Report [<b>REPORT1</b>] which is already developed.
For that i have use <b>F.M</b> <b>EXTENDED_PROGRAM_CHECK</b> it returns no of errors of <b>REPORT1</b> now my issue over here is i want to output all the errors of <b>REPORT1</b> into REPORT2 output with <b>Line No & Error Message</b>.
How can i solve this issue!
Thanks in advance.
Thanks,
Deep.Hi ,
You can use the FM <b>EXTENDED_PROGRAM_CHECK_SHOW</b> , to get the details of the check.
Regards
Arun -
Regarding Extended Syntax Check
hi,
during extended syntax check the given program is read and obsolete statements is displayed.
from where it compares for obsolete statement.
is there any table? if not then how it compares for obsolete statement.
Thanks.Hi
Check the table RODIR...here you can give the object type and its name...and there is a field which indicates if it is Obsolete or not. If it is checked, then it is Obsolete..otherwise not.
Vishwa. -
In ECC 6.0, I have two errors in my extended syntax check
1). Char. strings w/o text elements will not be translated:
'Store%'
(The message can be hidden with "#EC NOTEXT)
with below coding
SELECT kunnr name2 j_3astcu
FROM kna1
INTO TABLE gt_kna1
FOR ALL ENTRIES IN gt_soldto1
WHERE ( name2 LIKE 'STORE%'
OR name2 LIKE 'Store%'
OR name2 LIKE 'store%'
OR name2 LIKE 'DC%'
AND land1 = 'US' )
OR ( j_3astcu = gt_soldto1-store_no
AND land1 = 'US' ).
2).
SELECT-OPTIONS : s_mail1 FOR somlreci1-receiver NO INTERVALS.
The current ABAP command is obsolete
With "LOOP AT itab", one of the additions "INTO", "ASSIGNING", or "TRANSPORTING NO
FIELDS" is required in the 00 context
Internal Message Code: LOOP 012
(The message cannot be hidden using pseudo-comment "#EC .., bzw. durch SET
EXTENDED CHECK OFF/ON)
LOOP AT s_mail1.
*-----If email id entered on the selection screen doesnot contain
'@' and '.', then give relevent message to user as popup.*
IF s_mail1-low NA gc_at OR s_mail1-low NA gc_dot.
MESSAGE e038(zs) WITH text-m08 text-m09 text-m13.
ENDIF.
ENDLOOP.
Please suggest me howcan I avoid string Store% as well as select-option.In my opinion, the answers given to your first question so far, are wrong. When there is a specific reason for using a text string in a select, then it should remain precisely as that. So you should use "#EC NOTEXT. It is wrong to put them in a text element, as they will never be translated.
The extended syntax check doesn't exist so that you can remove the cause, it is so that you can address it. Many violations of the extended syntax checker have a valid reason. That's why you get the "#EC exceptions. But if you use them, then make sure you can justify it.
matt -
Error in Extended syntax check- Select Query
Hi all,
Iam getting this following error in Extended syntax check
" Large table PA0002: No field of a table index in WHERE
condition"
Code :SELECT SINGLE PERNR INTO (G_PERNR) FROM PA0002 WHERE ZZLEGACY_PAYROLL = I_FILETAB-PRNO
AND ZZLEGACY_PAYSYS = I_FILETAB-PRSYS
AND ZZLEGACY_PAYINS = I_FILETAB-PRINS.
can anyone help on this?Hi,
Change the code like this and check............
For this u need put INSIDE LOOP.
Select single PERNR into G_PERNR from PA0002 where PERNR = I_FILETAB-PRNO and .......... and ......
Check like this...
Thanks.
If this helps you reward with points.
Message was edited by: KDeepak
Message was edited by: KDeepak -
I have a program which has the extended syntax checks turned off and only turned on again after all the form pools, checks and update routines are performed. Is there any security implication from this extended check being off considering that it makes no sence to secure it with an authorization group?
Message was edited by: jbussche
AH! I see that I forgot to say "please". )
Does anyone have any infos on this other than the abap keyword documentation, please?
Message was edited by: jbusscheHello Julius,
I don't see any serious security implication with the extended syntax checks turned off. (But it might have implications to the quality of the program...)
You run the (extended) syntax checks during development.
There is one check which is related to security: The authorizations test checks whether the specified authorization object occurs in the table TOBJ and whether the authorization fields are correctly specified. -> This test checks the syntax of AUTHORITY-CHECK statements.
Authorization groups are not related to the extended syntax check: The system checks the authorization for the authorization object S_PROGRAM based on an authorization group assignment before starting a report.
Kind Regards
Frank Buchholz
Checking a Program
http://help.sap.com/saphelp_nw2004s/helpdata/en/d1/801af0454211d189710000e8322d00/frameset.htm -
How to rectify Extended Syntax check warning , when object REF TO is used..
hi all,
when running "Extended program check " for the below , I am getting warning error when I delcare the below stmts.
DATA: go_alv TYPE REF TO cl_salv_table.
lo_selections TYPE REF TO cl_salv_selections,
lo_display_settings
TYPE REF TO cl_salv_display_settings,
lo_events TYPE REF TO cl_salv_events_table,
lo_content_top TYPE REF TO cl_salv_form_element,
THE MESSAGE ARE
Field GO_ALV is not referenced statically in the program
(The message can be hidden with "#EC *)
Program: ZJTEST Row: 69
Field LO_EVENTS is not referenced statically in the program
(The message can be hidden with "#EC *)
Program: ZJTEST Row: 74
Field LO_DISPLAY_SETTINGS is not referenced statically in the program
(The message can be hidden with "#EC *)
Program: ZJTEST Row: 76
Field LO_SELECTIONS is not referenced statically in the program
(The message can be hidden with "#EC *)
is there any way I can avoid this warning message apart using #EC ??? is there any way to avoid this ??/
kindly help
thanksIn Program
a)
DATA: lo_top_element TYPE REF TO cl_salv_form_layout_grid,
lo_grid TYPE REF TO cl_salv_form_layout_grid,
lo_header TYPE REF TO cl_salv_form_header_info,
lo_label TYPE REF TO cl_salv_form_label,
lo_text TYPE REF TO cl_salv_form_text,
lo_logo TYPE REF TO cl_salv_form_layout_logo,
lv_logo TYPE bds_typeid,
lv_title_h TYPE sytitle.
TYPES: ty_logo(70) TYPE c.
CONSTANTS:
lc_alv_logo TYPE ty_logo VALUE 'CE_NEW_LOGO'.
CREATE OBJECT lo_top_element
EXPORTING
columns = 3.
lo_grid = lo_top_element->create_grid( row = 3
column = 1 ).
CONCATENATE 'Header ' 'Information' INTO
lv_title_h SEPARATED BY space.
Row 1 header information is set
lo_header = lo_grid->create_header_information(
row = 1
column = 1
text = lv_title_h
tooltip = lv_title_h ).
lo_grid->add_row( ).
Row 2 Doc. date is set
lo_label = lo_grid->create_label(
row = 2
column = 1
text = text-b02
tooltip = text-b02 ).
lo_text = lo_grid->create_text(
row = 2
column = 2
text = s_docket-low
tooltip = s_docket-low ).
lo_text = lo_grid->create_text(
row = 2
column = 3
text = s_docket-high
tooltip = s_docket-high ).
lo_grid->add_row( ).
CREATE OBJECT lo_logo.
lo_logo->set_left_content( lo_grid ).
lv_logo = lc_alv_logo.
lo_logo->set_right_logo( lv_logo ).
pt_content_top = lo_logo.
Extended program check :
No read access to field LO_HEADER
(The message can be hidden with "#EC NEEDED)
No read access to field LO_LABEL
(The message can be hidden with "#EC NEEDED)
No read access to field LO_TEXT
(The message can be hidden with "#EC NEEDED)
Kindly giude -
Extended syntax check for include structure
Hello Everyone,
While declaring the internal table as:
TYPES: BEGIN OF t_data.
INCLUDE STRUCTURE mara.
TYPES: END OF t_data.
DATA: it_data TYPE table of t_data.
When performing extended check, i get following error:
The current ABAP command is obsolete and problematic, especially so in ABAP
Objects
Within classes and interfaces, you can only use "TYPE" to refer to ABAP Dictionary
types, not "LIKE" or "STRUCTURE".
I am using 4.7 version.
Any clue how to avoid this error during extended check.
Regards,
TarunTarun,
With WAS 6.20 you should not declare internal tables with header line or using the old syntax as they are not compatible with OO ABAP.
So, you either declare a TYPE the way you have done, in case you want additional fields apart from the INCLUDE structure, or declare the table directly like the way I have shown.
Good thing, you can even specify the type of internal table that you want to create using this - STANDARD, SORTED, HASH. These tables will help you with the performance issues.
regards,
Ravi
Note : Please mark the helpful answers -
Warning assigning 0 to BA... in ABAP syntax check on DELETE itab statement
Hello,
I didn't see an answer to that question in the forum/internet, nor in SAP notes, so I post it.
I have a 7.01 system, and this code:
TYPES : BEGIN OF ts_record,
carrid TYPE S_CARR_ID,
employees TYPE p,
END OF ts_record.
TYPES tt_record TYPE SORTED TABLE OF ts_record
WITH UNIQUE KEY carrid.
DATA lt_record TYPE tt_record.
DELETE lt_record WHERE employees = 0.
The syntax check sends the following warning and places the cursor on the number "0" of the DELETE statement:
Assigning "0" to "BA" could result in data loss. It is therefore not
possible to optimize the LOOP. The components and values should have
identical types The types have identical types
Same thing if I make the internal table hashed or non-unique.
The warning is removed only if I replace 0 by a data object of same type as EMPLOYEES, or if I make the internal table standard.
Do you now why, I mean what is the intrinsec kernel algorithm that would make something slow? (and why a "data loss"?, what is "BA", is it a wrong translation or something else?)
Thank you
SandraHi Gautham,
So, it would mean something like "hey do you know you could access the internal table by using = on the key fields and it will be optimized", like a kind of advertisement, but sent only in a few cases, I don't see why in other ones they are not sent... Hopefully we don't have this warning with READ TABLE. Maybe this warning is more useful in 7.02 with secondary index... ( BTW could somebody test if the warning is sent in 7.02 systems? )
In German, I get a better message I think, so "BA" is a bug:
Die Zuweisung von "0" nach "EMPLOYEES" ist potentiell nicht
verlustfrei. Es sind deshalb keine Optimierungen beim LOOP möglich.
Bitte eine identische Typisierung bei Komponenten und Werten benutzen.
which is google-translated:
The assignment of "0" after "EMPLOYEES" is potentially not
without loss. It is therefore not possible to use optimizations for LOOP.
Please identical components and typing in values.
which seems a better translation.
Hi Maximilian,
you're right, <= keeps the warning from being displayed, that's fun!
Well, I guess the warning is not very welcome, I hope that will be changed in the future!
Thanks for your valuable answers
Sandra
Edited by: Sandra Rossi 1 minute later
One more question: Is there a way to suppress this warning from the syntax check? -
How to resolve Extended Systax check Error..
Hi All,
In Syntax check i am not getting any errors,If i have check Extended Syntax check I have got 2 error in SLIN ( Extended Syntax Check) Like
ERRORS :
#Messages for MESSAGE(Error)
Program: ZMXXR600A Row: 416
No. of WITH fields of MESSAGE 021 for ID Z1: 1
No. of placeholders in this message: 0
Message: Non Statistical posting not allowed for Account 52979100
No long text exists for this message
(The message can be hidden with "#EC *)
Program: ZMXXR600A Row: 418
No. of WITH fields of MESSAGE 022 for ID Z1: 1
No. of placeholders in this message: 0
Message: Please use the same IO to credit and debit
No long text exists for this message
(The message can be hidden with "#EC *)
The Code i write for this Eroors
CASE SY-SUBRC.
WHEN 0.
MESSAGE S021 WITH P_FILE. line :416
WHEN 1.
MESSAGE W022 WITH P_FILE. line :418
WHEN OTHERS.
ENDCASE.
P_FILE is declraed as;
PARAMETERS: P_FILE LIKE RLGRAP-FILENAME DEFAULT C_FILE.
Can you give some inputs to resolve the Errors ASAP.
Thanks,
SridharMESSAGE S021 WITH P_FILE. line :416
WHEN 1.
MESSAGE W022 WITH P_FILE. line :418
in both messages & needed
check 021 and 022 in both messages there is no <b>&</b> where you can place your actual value.
for Ex: message 021
Ex 1) hi print
Ex 2) hi print <b>&</b>
so now you can call this with
1)MESSAGE S021 .
2)MESSAGE S021 WITH P_FILE.
as you not maintain & it is giving error for extended check so mention & where you want to print p_file
or just call message with out passing P_file.
Rewards if useful..........
Minal Nampalliwar
null -
Extended sytax check read error message
hi every one,
i am working on extended syntax check for the report and in warning i am getting this message to a defiend itab or variable.:
"No read access to table ITAB[] ",same messages for string variables too. please let me know how to remove this messages and why i am getting this message in extended syntax check.
plz help.
maheshHello Mahesh,
This is quite relevant from the message itself. You are getting these messages b'coz you have just declared these tables & variables & have not used it in your code.
Just comment the declarations & you are done )
BR,
Suhas
Maybe you are looking for
-
Hi All , My requirment is to pull data from the dropdown 'Attachment list ' field into the report using TC : FD03 , which is for customer general data . i would like to know which table-fields we can retrieve this from....? Document Title , Document
-
IMovie stops importing after 7 seconds or so
I am trying to import some video that is being passed thru my digital camcorder from a dvd. I have done this before several months ago but today it stops importing after about 7 seconds. I don't have FileVault turned on so that isn't the problem. Eve
-
MDK Configuration screen is not comming properly in preferences of NWDS
Hi All, MDK Configuration screen is not comming properly in preferences of NWDS, i am using NWDS 7.0.9.
-
Passing values to Javascripts/ write to text file
Hi, I m new to InDesign Programming. I m using InDesign CS3 on MAC OS... Is it possible to pass values to a javascript through plugin code? I have a dialog with textboxes in it, On clicking ok button a script is called which uses these text box value
-
Arranging output on writing to file
i need to arrange out put in proper format while writing to a file.For this purpose i set maxium length as 50.My idea is generated substring is less than 5O add that much blank space and write to file.For this ineed to know one "\t" is how much chara