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: 

eCATT: Checking transactions for syntax errors

markus_theilen
Participant
0 Kudos
385

Hi!

I have a bunch (>300) of transactions I want to make sure are free of syntax errors. Using eCATT, I record just a simple call und immediately leave the transactions, no parameters provided.

The strange thing happens if the program behind the transaction has a syntax error: The eCATT script is called and returns with no errors, while I can see a message in the status line, reporting the syntax error.

In the script, the number of errors is zero.

Question: Is there a way to get the information that a error occurred into the eCATT script ?

1 ACCEPTED SOLUTION

Former Member
0 Kudos
189

Hi Markus,

Did you check in the Log. It will give you full details.In the first screen of SECAT transaction in the menu select Goto->Logs. It will take you to one seelction screen there give your script name ot configuration name. Then it will display the report. Select the entry and click on it it will give you all the deatils what you have entered and where is the problem.

Hope this will help you.

Thanks & Regards,

Siri.

6 REPLIES 6

Former Member
0 Kudos
190

Hi Markus,

Did you check in the Log. It will give you full details.In the first screen of SECAT transaction in the menu select Goto->Logs. It will take you to one seelction screen there give your script name ot configuration name. Then it will display the report. Select the entry and click on it it will give you all the deatils what you have entered and where is the problem.

Hope this will help you.

Thanks & Regards,

Siri.

0 Kudos
189

Hi,

Is there a way to schedule Test scripts using sm36.. or call them from an ABAP program....

Please help ASAP.... go live on Dec 15th...

Raj

Former Member
0 Kudos
189

HiThere,

By error in the program do you mean a syntax error or a logic error. If there is an error in the program for the transaction, the execution will terminate the program(Short Dump) if executed in all screen mode and nothing is recorded.

To answer this, if the transaction is executed in the background and the program has a syntax error, the ECATT script would return with no errors, but the job can be monitored through the transaction 'SM37'(Job fails).

All the messages that you get in the screen flow of the transaction are recorded in the ECATT but the Syntax error of the program is not recorded.

Cheers,

Naveen.

markus_theilen
Participant
0 Kudos
189

Hi!

First, thank you for your very fast answers!

The eCATT scripts are meant to run at the deployment of new releases of our custom applications. So, when recording the transactions in eCATT, there is no syntax or any other error.

Then I built a syntax error into the program behind the transaction to see, how eCATT would report this heavy problem and to my surprise, there was not any hint in the log that the transaction could not be executed as recorded because of the syntax error. The log is totally green.

My main intention was not to reveal syntax errors with eCATT, but logical errors like missing or wrong customizing that prevents the use of a transaction. But I assumed that eCATT would somehow report an error if the program can't be run.

0 Kudos
189

Hi, Markus!

Indeed using direct test of transaction linked to program with syntax error leads to error-free CATT log. But you can do indirect testing of your program - just record test for SE38 with your program. Then in case of syntax error CATT will report corresponding error in its log.

Regards,

Maxim.

Former Member
0 Kudos
189

Hi Markus,

Let us look at it in this way. The errors that are reported in the ECATT log are the messages that are triggered using the MESSAGE statement in the module pool program (say ZTEST).

Now when we are talking about an error in the program, we have to bear in mind that the SAP programs are nothing but transactions, which are controlled by another program(SAPLS38E).

Now you tried to test a scenario which would trigger the messages issued by the standard program SAPLS38E(for syntax errors), which would not be recorded by ECATT(as you are recording another program, ZTEST). The messages issued by the programs ZTEST would only be recorded as the program ZTEST is recorded.

Naveen.