04-24-2008 3:39 PM
Hi all
our system is ecc6 with IS -retail activated. support Stack level is 12 and database is oracle , os is windows.
We are getting express document error " Update was terminated " when executing WSM8 . on ST22, we are getting following error
POSTING_ILLEGAL_STATEMENT . We applied note 1053491
which is similar to the issue but it does not solve.
Here are the st22 dump details
####
Runtime Errors POSTING_ILLEGAL_STATEMENT
Date and Time 24.04.2008 19:03:48
-
-
Short text |
Statement "COMMIT" is not allowed in this form. |
-
-
What happened? |
Error in the ABAP Application Program |
The current ABAP program "SAPLSYDB" had to be terminated because it has |
come across a statement that unfortunately cannot be executed. |
-
-
What can you do? |
Note down which actions and inputs caused the error. |
To process the problem further, contact you SAP system |
administrator. |
Using Transaction ST22 for ABAP Dump Analysis, you can look |
at and manage termination messages, and you can also |
keep them for a long time. |
-
-
Error analysis |
There is probably an error in the program |
"SAPLSYDB". |
This program is triggered in the update task. There, the |
following ABAP/4 statements are not allowed: |
- CALL SCREEN |
- CALL DIALOG |
- CALL TRANSACTION |
- SUBMIT |
-
-
How to correct the error |
Probably the only way to eliminate the error is to correct the program. |
- |
If the error occures in a non-modified SAP program, you may be able to |
find an interim solution in an SAP Note. |
If you have access to SAP Notes, carry out a search with the following |
keywords: |
"POSTING_ILLEGAL_STATEMENT" " " |
"SAPLSYDB" or "LSYDBU27" |
"DB_COMMIT" |
If you cannot solve the problem yourself and want to send an error |
notification to SAP, include the following information: |
1. The description of the current problem (short dump) |
To save the description, choose "System->List->Save->Local File |
(Unconverted)". |
2. Corresponding system log |
Display the system log by calling transaction SM21. |
Restrict the time interval to 10 minutes before and five minutes |
after the short dump. Then choose "System->List->Save->Local File |
(Unconverted)". |
3. If the problem occurs in a problem of your own or a modified SAP |
program: The source code of the program |
In the editor, choose "Utilities->More |
Utilities->Upload/Download->Download". |
4. Details about the conditions under which the error occurred or which |
actions and input led to the error. |
-
this is sm21 error log
---
Time | Type | Nr | Clt | User | TCode | Grp | N | Text |
-
18:09:55 | UP1 | 006 | 600 | SAUGATA | AB | 0 | Run-time error "POSTING_ILLEGAL_STATEMENT" occurred |
-
Run-time error "POSTING_ILLEGAL_STATEMENT" occurred
Details
Recording at local and central time........................ 24.04.2008 18:09:55
-
Task...... | Process | User...... | Terminal | Session | TCode | Program | Cl | Problem cl | Package |
-
05460 | V1 Update Task No. 006 | SAUGATA | LB-TULIP | 1 | T | Transaction Problem | SABP |
-
Further details for this message type
-
Module nam | Line | Error text |
-
thxxvb | 1346 | ThVBCheckCommit |
-
-
Documentation for system log message AB 0 : |
The specified runtime error has occurred in the system. |
-
Parameter
-
abcdefghijklmnopqrstuvwxyz .. POSTING_ILLEGAL_STATEMENT |
-
Technical details
-
File | Offset | RecFm | System log type | Grp | N | variable message data |
-
66 | 160740 | l | Error (Module, Row) | AB | 0 | ThVBCheckCommit thxxvb 1346 |
-
Please check and let me know if you need more details.
04-25-2008 9:39 PM
Most likely you have a user exit, a VOFM routine, an info structure update or something like that, which has one of those commands included:
- CALL SCREEN
- CALL DIALOG
- CALL TRANSACTION
- SUBMIT
In ST22 if you go to ABAP developer view -> Source Code Extract, you'll see exactly where the error occurs. Have one of your ABAPers look at it. If an error is in a standard SAP program, contact SAP.
04-26-2008 7:26 AM
Hi Jelena,
Here is the source code extract where error is . Will this be a standard sap program or a program modified by abaper?.
"
Source Code Extract
Line SourceCde
1 FUNCTION DB_COMMIT.
2 *"----
3 ""Lokale Schnittstelle:
4 *"----
5
6 EXEC SQL.
>>>>> COMMIT WORK
8 ENDEXEC.
9
10 ENDFUNCTION.
"
Can you share some more tips on this.
Thank you once again for that help full answer.
04-28-2008 2:41 PM
As far as I understand, program SAPLSYDB (standard SAP program) is basically called when there is the command COMMIT WORK in ABAP code. The function that you mention is the one that actually commits the updates.
I was hoping that ST22 would show the place in the calling program, but, apparently, no such luck. Since you know in which transaction the termination occurs (WSM8), you might want to check if you have any code in these user exits:
WSOR0001
WSOS0001
WSOT0001
You will find them in transaction CMOD or SMOD (or, again, grill your ABAPers). Then in those exits, search for COMMIT WORK.
Just for the heck of it I searched for COMMIT in RWSORALL program (which runs WSM8 transaction). Since we don't use this transaction, this should give you a "clean" picture. The only place where COMMIT WORK command was found was the program SORALLSTSC at these lines:
69 COMMIT WORK AND WAIT. "waiting in background "ins note 687812
83 COMMIT WORK. " changing 46C
271 COMMIT WORK.
To do the same in your system, go to SE38 with RWSORALL and click on menu Edit -> Find/Replace. If you find an additional COMMIT WORK command, check where it is located. If it's not in your custom code, send a message to SAP, otherwise have your ABAPers fix the code.
Also see if there are additional clues in the termination messages in SM13 or ST22 (your ABAPers might have better luck finding them).
Hope this helps.
04-28-2008 3:04 PM
Hi Jelena,
Thank you so much for the reply.
I will ask my abaper to do as you said now.
I did asked abapers to to check if the program for WSM8 has been modified by userexits/ badi/ enhancements spot but they could not find anything like this.
. Shouldnt commit work occur only if we change any data while here we are just viewing when the short dump is coming. We have checked userexits and badis to see if we have called commit work but didnt find any . So is it a bug in the standard program ?.
Tomorrow I will ask the abaper to check as you said.
Thank you once again for your great help
04-28-2008 3:17 PM
If you're saying that the transaction was not modified, I'd have to assume that there is an error in the standard SAP program.
Another option to try is to set the breakpoint before the line where termination occurs and then debug the transaction. At the breakpoint you should be able to see "call stack" (i.e. a list of the routines that were called so far). This should help to pin-point the source of this error. If you include details when writing to SAP, it should also help them to solve the problem faster.
Good luck!