Skip to Content
avatar image
Former Member

Call dialog using bdcdata mode 'N' not working ( I will not use call transaction)

Hi Experts,

My requirement is to create a project using the transaction CJ2D. I get the inbound idoc from the external system. I have used the Call transaction inside the IDOC inbound function module. After the call transaction am doing few other table updates.

CALL TRANSACTION iv_tcode USING gt_bdcdata
MODE iv_mode UPDATE iv_update
MESSAGES INTO gt_bdc_msg.

Every thing looks fine and works as expected 99 out of 100 times.

My issue is , Sometimes a single Idoc is being picked by the 2 users with out facing any locking issue. Due to which a single idoc is creating the duplicate projects.

In general when an Idoc is processed by an user using BD87 and if an another user tries to pick the same Idoc, SAP throws an error saying 'IDOC is already being processed by another user XXXX'. But in this case due to call transaction being used in the IDOC function module Idoc LUW is been ended which means IDOC lock be removed but the idoc status is not updated as we are updating the idoc status after the call transaction. At this moment, the second user is able to pick the same Idoc and is able to create a second project.

SAP has suggested to use Call dialog in place of call transaction.

Am struggling to find the right example for Call dialog using BDCdata.

Kindly help me out.

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Jul 14, 2017 at 05:49 AM

    The normally obsolete statement CALL DIALOG has an addition USING for BDCdata. that works the same way as for CALL TRANSACTION.

    Add comment
    10|10000 characters needed characters exceeded