‎2006 Jan 10 4:26 PM
Hi! I have two different programs. In one of them, I call a transaction to the second program in this way:
CALL TRANSACTION 'ZVGI03A_RCR' USING bdcdata.
Inside the second program, I have to use 'COMMIT WORK' but after that the program finish itself suddenly, returning to the first program.
What is the reason?
Thanx!
‎2006 Jan 10 4:35 PM
Can I call the program usign CALL PROGRAM instead of CALL TRANSACTION??
‎2006 Jan 10 4:28 PM
Hi,
U cant use the commit work inside a program, calling form call transaction method. It ends the LUW.
Sreedhar
‎2006 Jan 10 4:35 PM
Can I call the program usign CALL PROGRAM instead of CALL TRANSACTION??
‎2006 Jan 10 4:46 PM
‎2006 Jan 10 4:51 PM
Hi
If you have used a COMMIT WORK command, your BDC'll end at the point where you've done the COMMIT.
Which kind is your Z-program?
Max
‎2006 Jan 10 5:03 PM
You can use submit program if the report is a report, but how would you handle the BDC table? If possible, I'd take the commit out of the other program.
Rob
‎2006 Jan 10 5:38 PM
Hi,
There is actually a standard solution for this with the CALL TRANSACTION statement.
It has an optional syntax element 'OPTIONS FROM opt' where the 'opt' is a structure with specific option fields.
One of the fields 'RACOMMIT' controls whether the commit work statement will stop the BDC or not. By default it will but by using this field you can prevent it from happening ...
Regards,
Steven
‎2006 Jan 11 8:24 AM
Hi !
You could use the Call Transacation ... OPTIONS
For example:
CALL TRANSACTION 'ZXYZ' UING bdc_tab
OPTIONS FROM bdc_opt.
where bdc_opt is defined as:
DATA: bdc_opt TYPE ctu_params.
and the parameter: bdc_opt-racommit ist set to ' '.
Then the Call-Transaction will not end on any COMMIT WORK of the called transaction.
Regards
Rainer