‎2009 Jan 28 8:17 PM
Hi,
In the program I am using IW32 and IW3D transactions one after the other amd running into lock issues. If I put 1 second hard wait as follows it works and does not work witout hard wait, please let me know your comments for this happening. Even I am tried to lock and unlock the docs after each transaction but invain. also tried do enddo with exit option using lock/unlock function modules before printing and not successful. I want to avoid hard wait, please advise.
Working scenario.
Call IW 32
commit work and wait.
wait upto 1 sec.
Failing scenario:
call IW32
commit work and wait
Regards
Ram.
‎2009 Jan 28 8:20 PM
Hi,
When you are calling the transaction give the update mode as "S" Synchronous processing...so that it will wait till the transaction is complete...
Thanks
Naren
‎2009 Jan 28 8:25 PM
Thank you for the info, I am already passing update mode parameter as "S".
‎2009 Jan 28 9:50 PM
when you do call transaction please include options parameter like
call transaction 'IW32' using table bdc_data options from opt.
opt should be of type CTU_PARAMS
and set the value opt-RACOMMIT = 'X'.
Data opt type CTU_PARAMS.
opt-RACOMMIT = 'X'.
Please try.
‎2009 Feb 03 4:01 PM
Hi,
Thank you for the input, I am going to try this racommit option and update you.
Regards
Ram.
‎2009 Feb 10 7:20 PM
‎2009 Jan 29 3:09 AM
‎2009 Feb 11 12:20 AM
The problem is that the lock is kept during the Update task, and it lasts a few seconds after the commit work of the IW32.
To avoid this problem, run IW32 in local update task by using UPDATE = 'L' in the CALL TRANSACTION. It means that the update function modules will not be called in an update task, but in the same workprocess as the commit work, and this last ends, all locks are released.
Note that I never tried myself.
In worst cases, try function module DEQUEUE_ALL (I couldn't understand if it solves, maybe a kernel bug (or IW32 doesn't do a commit work, no it's impossible!) but why not)
sandra