cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping for ND_FORM to ND_FORM not possible due to recursion

former_member184111
Active Contributor
0 Kudos

Hi Experts,

I am trying to define external context mapping...with the steps..say there are two components ZOMP1(in which i am using other component) and ZCOMP2(this is used in zcomp1)

1. IN the component zcomp2 I define ZCOMP1 under the used components

2.in the component controller of ZCOMP2 under properties tab I create controller usage of zcomp1 and two entries are created

3.I go to the context tab of component controller of zcomp2 and drag and drop the ND_FORM node from ZCOMP1 to context node of ZCOMP2

when I do a check I get the error

Mapping for ND_FORM to ND_FORM not possible due to recursion

Don't understand why am I getting this error though the node I am trying to map is not recursive?

This is what I see in long text of error:

Message no. SWDP_WB_TOOL263

Diagnosis
Mapping from ND_FORM to ND_FORM is not permitted, as ND_FORM has its own mapping that refers directly or indirectly to ND_FORM.

System Response
The mapping can neither be created nor used.

Procedure
If you receive this error message when you check a context or when you update the mapping to context node ND_FORM, delete the mapping to ND_FORM using the context menu function with the same name.

Please help,

Anubhav

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Anubhav,

I think is due to the step 2 and 1. You have defined two usages in two directions.

Suggestion 1:

Try to make the componant use (In one direction).

Suggestion 2:

If it's required to make it in two direction. Try to create an inteface that have this Context. And implement it in both componants.

Best regards,

Jalal

former_member184111
Active Contributor
0 Kudos

Hi Jalal,

I am following steps given in a tutorial saptechnical_com (_ = .) in Freely Programmed Value Help in the WebDynpro application.

The context mapping is required to pass data from one component(that i am using as search help) to another(in which the inputfield with search help is displayed).

Not sure why i am getting that error?

Thanks a lot,

Anubhav

Former Member
0 Kudos

Hi Anubhav,

following restrictions apply on recursion nodes:

1. You cannot nominate a recursive node to act as the data source in a context mapping relationship. Recursive node structures are restricted to the scope of a single controller.

2. The root node of a context cannot be used for a recursion.

Please check this...

http://help.sap.com/saphelp_nw04s/helpdata/en/47/45641e80f81962e10000000a114a6b/content.htm

Also Cehck This,..

Cheers,

Kris.

former_member184111
Active Contributor
0 Kudos

Hi Kris,

Now that is the main question....i have not created that node as a recursive node....created it as simple node in the ZCOMP1...and when I bind it to componentcontroller context of ZCOMP2....in syntax check..it throws the error..

still I am getting this error....why?

The problem discussed in the thread you posted is exactly the issue with me....I am also trying to enhance a standard component for using a Z component as F4 help in one of the fields of standard component...

Thanks,

Anubhav

ashish_shah
Contributor
0 Kudos

Hi Anubhav,

In Internal Context mapping you would drag your node containing data ( Component Controller ) to Target Node ( View Controller )

in External Context mapping your would drag your node containing data ( View Controller ) to Target node ( Interface node of used component ) , when done correctly you will get a message saying "External mapping done successfully".

YOu can see the sample here:

[External Mapping|http://uploadnow.org/image/329684-ExternalMa.jpeg]

I guess what you have done is mapped the node in the reverse way

Let me know if this information help.

Regards,

Ashish Shah

Answers (1)

Answers (1)

Former Member
0 Kudos

In the component controller of the coponent in which u r getting this error, goto tab properties and remove the usage line for that used componet, activate eveything then again add the 2nd component in componet usage and try to map the node.

I hope it works for u. best luck.