cancel
Showing results for 
Search instead for 
Did you mean: 

cross component communication query

Former Member
0 Kudos

Hi All,

The scenario is in SAP SRM system.

I am trying to access the Contract number attribute (V_CTR_H_BD.HEADER_BD.OBJECT_ID) from the webdynpro component /SAPSRM/WDC_CTR_DODC_H_BD.

I want that attribute to be accessed in the WD component /SAPSRM/WDC_DODC_CND view V_DODC_CONDITION.

So, in order to achieve the above requirement, I tried to add a node as an Interface Node in the webdynpro component /SAPSRM/WDC_CTR_DODC_H_BD. But, I am unable to create any node in the component controller of WD component /SAPSRM/WDC_CTR_DODC_H_BD as a Interface Node, and hence, I am unable to create any node of Interface Controller. This is due to the reason that the node that we are creating have the Interface Node option in disable state.

Can anybody suggest what approach we need to follow to satisfy the above requirement? (It would be great if the resolution will be containing the steps)

Regards,

Susanta

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Susanta

I am trying to access the Contract number attribute (V_CTR_H_BD.HEADER_BD.OBJECT_ID) from the webdynpro component /SAPSRM/WDC_CTR_DODC_H_BD.And want that attribute to be accessed in the WD component /SAPSRM/WDC_DODC_CND view

V_DODC_CONDITION.

well you need to create a INTERFACE method in the component controller of the component /SAPSRM/WDC_CTR_DODC_H_BD, lets

call it GetContractAttribute. This method will return contract number. Dont forget to tick the Check Box Inteface when creating

this method, this tells you that this method is interface method and can be called from outside.

next in the component /SAPSRM/WDC_DODC_CND instantiate /SAPSRM/WDC_CTR_DODC_H_BD under component usage. Now you can

call the method GetContractAttribute.

Greetings

Prashant

Former Member
0 Kudos

Hi Prashant,

Thank you for your reply...

But the problem is that the attribute OBJECT_ID is not present in the Component Controller of component /SAPSRM/WDC_CTR_DODC_H_BD.

Rather, it is local to the view V_CTR_H_BD (inside the node HEADER_BD).

So, could yo tell me whether we can follow your approach, and in what way?

Regards,

Susanta

Former Member
0 Kudos

In that case declare an attrubute of OBJECT_ID type in your component at component controller level. Lets call is m_cc_objID. Declare a method at component controller ReadObjID call this method inside WDDOMODIFY of the view V_CTR_H_BD and in code specify that it copies value of OBJECT_ID to our attribute m_cc_objID.

now follow the steps from my previous reply

Create a INTERFACE method in the component controller of the component /SAPSRM/WDC_CTR_DODC_H_BD, lets

call it GetContractAttribute. This method will return contract number. Dont forget to tick the Check Box

Inteface when creating this method, this tells you that this method is interface method and can

be called from outside.

next in the component /SAPSRM/WDC_DODC_CND instantiate /SAPSRM/WDC_CTR_DODC_H_BD under component usage. Now you can

call the method GetContractAttribute.

Greetings

Prashant