04-12-2006 6:23 PM
Hello All,
We get an error while we go into the select..endselect loop during debugging. Because of this if we try to do some research on existing program with Select-endselect..it fails in the second pass of this loop.
This problem was not there earlier, but after we upgraded from 4.6 to 4.7 this problem is bugging us..every day. Does any one have a clue why ?
Thanks!!
Regards,
Vishal
04-12-2006 6:28 PM
Vishal,
Don't put the break point between SELECT and ENDSELECT. Put it right after the ENDSELECT, then the dump will not come.
Some time the dump does come, when you debug SELECT / ENDSELECT.
If you can change the program change that to one statement SELECT into the table.
Regards,
Ravi
Note :Please mark the helpful answers
04-12-2006 6:30 PM
When you are debugging through SELECT ENDSELECT and you take a long time to step thru the code, you can sometimes "lose the attention" of the DB server.
In these events, you get an error. You simply need to debug again (and cross your fingers).
OR use a SELECT INTO TABLE
04-12-2006 6:29 PM
04-12-2006 6:30 PM
Hi Vishal,
Check the sequence of the fields in the select & the declarations.
04-12-2006 6:40 PM
Hi,
debugging a SELECT...ENDSELECT statements brings to a LUW commit work if no other work processes are available for debug.
See OSS notes 675, 2104.
From OSS note 675 **********************************
Cause and prerequisites
Chain of causes:
1. There is a statement in one of the Select loops, that leads to a database Commit (or Rollback).
2. A database Commit causes the database to lose the cursor.
3. The system cannot automatically continue within Select loop after loss of cursor.
Following statements lead to a database Commit:
* All statements that cause a change of screen (CALL SCREEN, CALL DIALOG, CALL TRANSACTION, SUBMIT, I/W-Message)
* BREAK-POINT/ Debugging
. if no debug process free
. always after regeneration (in order to release generation lock).
* WAIT Here a work process is released and a Commit is executed.
* COMMIT WORK/ROLLBACK WORK
From OSS note 2104 **********************************
Solution
The "COMMITWORK" message appears in the ABAP debugger when programs
orscreensrequireregeneration,or when not enough free capacity
is available inthesystem (or else the debugger blocks a system
process).
Normallyonly one work process is released for debugging. This
isgenerally insufficient ina developmentsystem, as processes
can be blocked for other reasonstoo(background processing,
CPI-C connections,andso on).
The number of work processes made available for debugging can
be configured using the profileparameter
rdisp/wpdbug_max_no
Forexample:
rdisp/wpdbug_max_no = 10
setsthe maximum number of work processes made available for
debuggingto 10. It may be necessary to generally increase the
numberofwork processesatthis time (parameter rdisp/wp_no_dia).
In all other known cases, an error in the application program is
involved.
*****************************************************
Regards, Manuel