Dear SAP and especially eCATT experts,
I have an interesting challenge. I am creating an eCATT-testscript, which I have done in the past and it usually works and feels quite straight forward to me. But now I reached a point where I am really irritated and becoming desperate. So, let’s get to it:
I have a deep input data structure ZSTRUC with data from a test variant (multiple level structures and tables within the deep structure). The test container is filled; configuration and script are created.
The data is properly transferred from the container to the script and into importing parameter IT_INPUT. I created another parameter LT_INPUT (V) in the script to which I transfer the date simply via
LT_INPUT = IT_INPUT.
Then I implemented an ABAP-Block doing some data mapping within the data in LT_INPUT (that’s why I had to transfer to “local” parameter).
After the ABAP-block I implemented a simple LOOP on LT_INPUT like this:
LOOP ( LT_INPUT , LS_INPUT_A ).
…
ENDLOOP.
LS_INPUT_A is an ALIAS-Parameter defined with ZSTRUC.
LT_INPUT and IT_INPUT are defined with ZSTRUC[].
When running the script, it shows an error at the LOOP:
“Parameter(path) LT_INPUT[1] not compatible to Alias-Parameter LS_INPUT_A”
I do not understand what is wrong. I tried so many things. I also have implemented other scripts, with analog logic just with a different deep structure than ZSTRUC.
I know that the script was already running some time ago, but structures used within the deep structure were changed, and then I added code to the script, and then the same error came up again. Then at some point just changing from small letters to capital letters made the script run without error (I just changed in the bracktes of the LOOP-command lt_input to LT_INPUT), but that was when I did some testing without the ABAP-block and with new variables. Is the eCATT script language case-sensitive? The error text itself points at a difference between the data type of LT_INPUT and LS_INPUT_S, but it’s all based on ZSTRUC.
I tried refreshing all the things that are refreshable in the script, in the configuration, in the test container. I unfortunately do not know any eCATT specialists personally, so I am turning to you 😊
Any ideas and please also explanations? Because I would really like to understand why a simple LOOP can cause so much effort. And of course, I could switch to DO…WHILE in this case, and I will do that soon, but I really dislike to give up like that and letting this thing be unsolvable (especially because it works in other scripts, that are set up in the same way, just with a different structure). Could the structure be too deep? Is that something that has influence? I tried to add WHERE condition, even though I dont need one there (all other corresponding scripts do not have WHERE-conditions), also didn't help. I am out of ideas 😕
I also asked AI from GPT to CLAUDE etc, all available models in the company I serve at the moment, but AI knows not really much about eCATT unfortunately.
So, who can help?
Best regards, looking forward to your answers 😊
Klaas
Request clarification before answering.
| User | Count |
|---|---|
| 12 | |
| 9 | |
| 7 | |
| 6 | |
| 4 | |
| 4 | |
| 3 | |
| 3 | |
| 2 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.