Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

ATC Check returns "Symbol ... not found"

Patrick_vN
Active Contributor
0 Kudos

Hi all,

Recently we ran the ATC on a large part of our customers custom reports. For some of the reports a "Symbol ... not found" warning was returned. First anomaly was that when jumping from the result list of the check to the corresponding report, we end up at the first line of the report (instead of at the line where the 'issue' was detected as would normally happen).

Some time later, after comparing the different reports, and doing some testing, it seems that ATC does not like dynamic table modifications.

Example:

UPDATE (dbase_table_name) FROM ..

Dynamic table access as such (the SELECT variant of the example above) does not trigger the ATC warning. I understand the dangers of SQL injection, but that danger isn't the issue here (nor is it our mission for this project).

What I would like to understand is the following:

  • why the "Symbol ... not found" warning was returned by the ATC.
  • what the warning means (cause the flag doesn't seem to cover the cargo in this case)
  • how we could/should correct the code
  • and if the use of these dynamic table statements is somehow more complicated with a HANA dbase

Awaiting your suggestions and ideas with interest,

and thanking you in advance,

Patrick

1 ACCEPTED SOLUTION

0 Kudos

Hi Patrick,

note 2299985 resolves the problem with messages "Symbol...not found". This message does not mean that the tested program has an error -- but that the checker itself didn't find a symbol.

In order to answer why navigation jumps to the first line of a report instead of the error position I would need to see an example.

Concerning dynamic table access: In our static checks it is only possible to deal with pseudo-dynamic access, i.e. with constants or literals -- in the other cases it cannot be determined statically which table is concerned. Therefore we can give a message that there is a dynamic table access and what kind, but no other analysis of this access.

Please don't hesitate to ask if there are any questions left.

Friederike

10 REPLIES 10

0 Kudos

Hi Patrick,

note 2299985 resolves the problem with messages "Symbol...not found". This message does not mean that the tested program has an error -- but that the checker itself didn't find a symbol.

In order to answer why navigation jumps to the first line of a report instead of the error position I would need to see an example.

Concerning dynamic table access: In our static checks it is only possible to deal with pseudo-dynamic access, i.e. with constants or literals -- in the other cases it cannot be determined statically which table is concerned. Therefore we can give a message that there is a dynamic table access and what kind, but no other analysis of this access.

Please don't hesitate to ask if there are any questions left.

Friederike

0 Kudos

Thanks for the explanation Friederike, do I understand correctly that the "Symbol .. not found" message refers to there being no constant value attibuted to the (dbase_table_name)-variable from my example?

I've added a sample of the code of one of the reports as an attachment (and no, I didn't write it ).

0 Kudos

Hi Patrick,

not exactly. There are different possibilities for "Symbol .. not found".  Simply apply note 2299985.

Best regards,

Friederike

0 Kudos

Hi Friederike,

Both note 2299985 and it's predecessor 2268034 have been implemented, but our issue remains unchanged:

3Test Existence of a ProgramSymbol ... not found.YMML_HQ_COPY_ZZPRODHIER_HIST

0 Kudos

Hi Patrick,

this seems quite strange to me. Is there any possibility to see this in a system?

And can you give me the messages texts, i.e. which symbols were not found?

Thanks!

Best regards,

Friederike

0 Kudos

This is returned by the ATC check for one of the reports:

Both links return the following comment:

0 Kudos

Hi Patrick,

thanks for the screen shots.

Unfortunately it is nevertheless not possible for me to see the reason for the problem.

I would need system access in order to reproduce it for finding the error.

Nevertheless the message 'symbol not found' is not important -- so you can ignore it.

Best regards,

Friederike

0 Kudos

Hi Friederike,

We have discussed this with the customers responsible, and they've agreed to allow access to the system. Which procedure do we need to follow to make this happen?

And whom may we mention as the contact person from SAP in the ticket?

Thanks in advance,

Patrick

0 Kudos

Hi Patrick,

sorry for answering so late - I was on holiday.

Simply create a ticket for component bc-aba-la. You can put it directly on my name.

Best regards,

Friederike

0 Kudos

I've been informed that note 2267725 has solved the issue. Thanks for your help..