cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with Table in TablePopin

Former Member
0 Kudos

Hello Experts,

I just refer this blog to create a table in TablePopIn.

/people/bjorn-henrik.zink/blog/2010/03/26/web-dynpro-abap-dynamic-table-in-table-popinSAPNetworkWeblogs%28SAPNetworkWeblogs%29

/people/arun.padmanabhan2/blog/2009/12/01/table-in-table-popin

Everything work fine, however there is a fault and I am not sure how to tackle this.

I need to display the entries based on the value selected in TablePopIn, this is achieved by LinkToAction, here in the event u2018onActionu2019 I have written the code to populate the table, now problem here is that if I select a value of another row in TablePopIn the new table is generated for the value I selected but this value now appear on both table ,the one that is created first time for the first row and the newly created one for the second row. How can I tackle this so that the value for the second row appear on the table that is there in second row tablepoin and not on bothu2026

Looking forward for the solution.

Best Regards,

Sanju

Accepted Solutions (0)

Answers (1)

Answers (1)

ChrisPaine
Active Contributor
0 Kudos

Hello,

I think the likelihood is that you have defined the subnode that you use to populate your table as a singleton. (or perhaps you have not even defined it as a subnode of you main table node (I'm pretty sure that you would have though)/

Could you check that? - In context definition - the pop in table node should be a subnode of the main table node and should not have the singleton flag checked.

Alternatively the way that you are populating the subnode is not clearing down previously populated values. Check your coding in that area too,

Cheers,

Chris

Former Member
0 Kudos

I have not defined subnode as singleton, I have added the code below ,pls have a look, this get calls on Onaction event of tablepopin

Code:

lo_nd_header_node->bind_table( lt_header_node ). u201Creferring to context node

lr_table_in_table_popin = cl_wd_dynamic_tool=>create_table_from_node( ui_parent = lr_trans_cont

table_id = 'TABLE1'

node = lo_nd_header_node ). u201Ctablepopin

everytime this piece of code get called when the value is click on the row of table. Based on this value lt_header_node is populated.

Can you guys try this at you system and check if it is working for u..

ChrisPaine
Active Contributor
0 Kudos

Do you vary the table id each time you add it? The id has to be unique within the view I think.

Former Member
0 Kudos

ok.if i have a unique table id for each row,this is what happen,for the first time when i click on the row,it create a table within table popin,on next click on another row..now i have 4 tables, 2 tables for first row and 2 tables for the second row..i even

tried creatins separate transparent container for each row ..but that too didn;t work

ChrisPaine
Active Contributor
0 Kudos

Yes that makes sense...

as the UI definition is flat, not a structure

In the blogs referenced I think they didn't create the pop-in using dynamic programming but created it at design time and bound the subnode.

if you took that approach rather than dynamically adding tables to the view it would probably work! (that's what I've done when using table-popins)

I'm not sure what you are hoping to achieve through the use of the dynamic coding. You could certainly populate the subnode when the popin is opened - but I'd create the popin in the view designer, not try to dynamically create it.

Former Member
0 Kudos

you mean i should create a table within table popin.instead of creating this dynamically..i don;t think still it will solve my issue...

ChrisPaine
Active Contributor
0 Kudos

It works for me doing that:

[example of table in table popin|http://www.freeimagehosting.net/image.php?4201d7b5ba.gif]

sanju_joseph
Participant
0 Kudos

Hi Chris,

That is really strange,how this is working for u,can u please add more screenshots like that of context node,

and anything of that sort,you really deserve the point,sorry i couldn;t respond to you early,i guess i have not

received any notification also..

Best Regards,

Sanju

Madhu2004
Active Contributor
0 Kudos

HI,

Whenever you are binding the node, get the fresh node refernce uuisng the element and bind the data to that node refernce.

Suppose you are clicking on the Linktoaction in second row, using the context element in the WDEVENT parameter,

get the sub node instance and bind the data.

Use GET_CHILD_NODE method of IF_WD_CONTEXT_ELEMENT.

Regards,

Madhu.

Edited by: madhu reddy on Sep 13, 2010 1:01 PM

Former Member
0 Kudos

i already did that