Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Handling BDC with inbound IDOC processing

Former Member
0 Kudos

Hi All,

In the function module for inbound processing, I have a BDC to be executed.

But when the IDOC is received from the WEBSPHERE(Middleware) the BDC fails. There is an exception, "CNTL_ERROR" raised by the class "CL_GUI_CUSTOM_CONTAINER=======CP" when in BDC for the required transaction.

I have contacted the Basis team and they are of the view that this happens when there is a difference in screen elements of the BDC creator(me) and the executor(websphere in this case).

Can anyone tell me how can I correct this?

Anuj

9 REPLIES 9

Former Member
0 Kudos

Hi Anuj,

If you test the BDC yourself in the background, does it run correctly?

Regards,

John.

0 Kudos

Yes it works perfect!

Even if I reprocess the failed IDOCs using BD87, still it works fine!

But when it comes for the first time it fails.

0 Kudos

Hi Anuj,

Could you check the authorization of the user which executes the BDC when calling from Websphere?

Regards,

John.

0 Kudos

John,

That cannot be an issue as the IDOCs are executed with user-id 'WEBSPHERE' only. And this ID has access to SAP_ALL.

Anuj

0 Kudos

Hello Anuj,

With SAP_ALL it is very unlikely that authorization is an issue. One other thing I can think of are parameters: for some transactions in SAP organizational elements must be set. If a parameter in the user master is missing you get a popup to supply the value.

To test if this is the case: could you login with user WEBSPHERE and test the BDC?

Regards,

John.

0 Kudos

John,

WEBSPHERE is a system ID so Basis team will not allow me to access it as a user ID.( I had already requested them for the same).

But I also compared the user-id parameters with mine and there is no difference.

Can you think of something related to BDC? or some precaution which needs to be taken to cater the requirement if the screen elements are differing?

Thanks for your replies.

Anuj

0 Kudos

sorry for intruding...

CNTL_ERROR hints to a problem with the connection to the frontend control framework...there is probably no such connection when your function is called from outside.

Which transaction are you calling? Does it use enjoy control or the like? Maybe there is an "old" excuse me "classic" transaction or a BAPI that does the same job?

Cheers

Thomas

0 Kudos

Thomas,

Thanks for intruding

I am using the transaction COR6N. Yes there exists a classic transaction but I am not using that because then I dont get the expiry date pop-up while doing the BDC.

Please suggest.

Anuj

0 Kudos

I hate saying it, but it might not work with COR6N, due to the little notepad it has on the bottom. If you can't use COR6, did you look at BAPI_PRODORDCONF_CREATE_TT?

Greetings

Thomas