2006 Aug 18 1:43 AM
Hi abapers
when i am creating two good reciepts for the same purchase order through BAPI, first good reciept cretaed sussfully adn second good reciept giving the error message "The use 'ramesh' already processing '4000000732'.
i want to know the SAP back ground reason why sap is displaying this message.
Regards
ramesh
2006 Aug 18 2:23 AM
There are couple ways to handle this, you can do more than one receipt for the purchase order at one time, just add another line item for the goods_movement_item table, this way you don't have to worry about the locking, or you can do the COMMIT WORK AND WAIT directly after the BAPI call, and then an explicit DEQUEUE, using the function module DEQUEUE_ALL. This will unlock after the COMMIT. The next time thru the loop, there should be no problems.
REgards,
RIch HEilman
Hi abapers
when i am creating two good reciepts for the same purchase order through BAPI, first good reciept cretaed sussfully adn second good reciept giving the error message "The use 'ramesh' already processing '4000000732'.
i want to know the SAP back ground reason why sap is displaying this message.
Regards
ramesh
2006 Aug 18 2:02 AM
Hi,
1.
Usually if PO is created through BDC, then many times we forget to EXIT the transaction once we SAVE the PO. Hence the PO is still in change mode and no one else can open it.
2.
Since you are using BAPI, the reason would be that database tables are not updated, hence it would be giving that error. Do a COMMIT WORK AND WAIT after the BAPI call. Then create 2nd good receipt.
Best regards,
Prashant
2006 Aug 18 2:03 AM
Ramesh,
The reason ur getting that issues is because Sap does update using CALL FUNCTION MODULE IN UPDATE TASK which happens in a separate work process. In the first pass of the loop the BAPI sends a request to update the GR but the update has still not happend and it takes few seconds before the records are created in the database. So in the seond pass of the loop it says that the person who is running the program is blocking the PO.
Try writing this command before calling the FM
SET UPDATE TASK LOCAL.
Cheers
VJ
Some points would be gr8 if this helps..
2006 Aug 18 2:26 AM
thanks for your replys
i tested in ABAP using SET UPDATE TASK LOCAL BAPI is working fine.
but we are calling this BAPI from JCO.
is there any remote enabled function module for SET UPDATE TASK LOCAL.
or any solution reply please
regards
ramesh
2006 Aug 18 2:23 AM
There are couple ways to handle this, you can do more than one receipt for the purchase order at one time, just add another line item for the goods_movement_item table, this way you don't have to worry about the locking, or you can do the COMMIT WORK AND WAIT directly after the BAPI call, and then an explicit DEQUEUE, using the function module DEQUEUE_ALL. This will unlock after the COMMIT. The next time thru the loop, there should be no problems.
REgards,
RIch HEilman
2006 Aug 18 2:37 AM
Hi Ramesh,
Call BAPI_TRANSACTION_COMMIT after the 1st RFC call.
Best regards,
Prashant
2006 Aug 18 2:42 AM
thanks for you reply
i tried calling BAPI_TRANSACTION_COMMIT by passing wait = 'x'.
but still i am getting the samre problem from jco calling.
is there any other Remote enabled function module that can give solution to my problem.
regards
ramesh
2006 Aug 18 2:46 AM
2006 Aug 18 4:33 AM
Even i passed to BAPI parameter wait = 'X' with caps.
Its giving the same error message.
2006 Aug 18 5:45 AM
u have to call like this
<b>call dequeue_all</b>after the COMMIT work.
if i_return[] is initial.
commit work and wait.
call function 'DEQUEUE_ALL'.Regards
Prabhu
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |