Sunday, May 22, 2011

Debugging Update Task and Back-ground Task

Debugging is a very common topic when we talk about ABAP.I am assuming all reader’s reading this topic knows how to debug a dialog task (foreground) or do normal debugging.

Some time we come across such situations where we need to debug Update task and Background task also. I have tried below to explain the procedure for same.

Steps to debug Update task

Let’s create an Update module in SE37 like below.

And simple code inside update module.

Now let’s create a simple program through SE38 and call this FM in update task.

Once we execute this program, FM ZUPDATE_TASK will be called in update task and immediately it will be registered in VBLOG table on priority basis.

Note it will not get execute until unless control reaches to COMMIT WORK statement as shown above.

Once control executes COMMIT WORK, the above registered FM in VBLOG table will be called and gets execute.

To debug our update FM we need to switch on Update Debugger in debugging mode

If we do not perform above activity, update module will get execute in the background and we would not able to see it in the foreground and debug the same

Now let’s execute and test the same. Execute program ZTESTPPL and see.

And in next step Update debugger screen will open as given below.


Steps to debug Background task

For debugging back-ground task, there are few changes required to above program and FM which I have already created (Pre-requisite Points for back-ground task)

Running a module in back-ground task means assigning the module to separate LUW.

It can be run parallel and is an asynchronous process.

Changes required are mentioned below.

To debug our background task we need to switch on Do not process in debugging mode as shown below

Once we execute our program in SE38, FM will get execute in background task and it will be assigned to a separate LUW.We can see this LUW registered in t-code SM58 and execute, debug and delete manually.

If we do not check above check box, then LUW gets execute automatically and immediately based on attribute settings at FM level. It does not wait for user to manually execute the same.

Before executing, let’s check in SM58.

No records so far.

Now let’s execute the program and check the same step by step.

/H to switch on system debug and so that we can mark Do Not Process check box

Let’s go to SM58 and refresh.

Put the cursor on below record and follow the path shown below to debug.

After above execution process, corresponding record from SM58 will be deleted.

SM58 can be explored more to gain knowledge about different other remote debugging options.


No comments:

Tutorials on SAP-ABAP

Adobe Interactive Forms Tutorials

Business Server Pages (BSP)

Userexits/BADIs

Web Dynpro for ABAP (Step by step procedure for web dynpro,Tutorials on Web Dynpro,)

ALV Tutorials

goodsites