cancel
Showing results for 
Search instead for 
Did you mean: 

Binding of multiple tables on a form to the same interface table

Former Member
0 Kudos

Hi all,

a thing that bothers my since a few weeks: how can I fill mulitple dynamic tables on a form with the data handed over in a table via interface?

To be more precise: Creating a dynamic table on my form and bind the data to a table in the interface is not a big deal. That works fine. But, when I create a second dynamic table and bind it to the same table in the interface the table will remain empty!

The whole thing is just about performance and size. Somehow it does not make sense to hand over data twice - especially when there is a massive amount of it or a lot of forms are generated in a short time.

I appreciate any help, hints and good advices which leads to a solution of my problem.

Thanks & regards,

Phil

PS: I'm creating a Form with LiveCycle Designer 9.0.1 (SAP GUI 720, Patch-level 4).

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Philip,

I could see 3 possible solutions for you 2 of them are already discussed here.

1) have the same table 3 times in the context, having only once from the source its simple approach easy for any other developer who carries your work forward. yes there might be a performance issue but it sud be considered with the form size, scripting you do etc.

2) as sanoosh claimed bind it once, loop and add them to the other tables. but consider the amount of script u need to work on if its on a interactive form where the table builds up dynamically. even if you have the script on formready or calculate events every time it need to add and delete rows.

3) have all the 3 tables with the same name. bind data to one of the table and for others say global. I have never tried it but i go with this approach for or single fields.

Hope you get this,

Cheers,

Sai

Former Member
0 Kudos

Hi Sai,

thanks for your answer! Somehow I did not get the idea of the first proposal:

1) have the same table 3 times in the context, having only once from the source its simple approach easy for any other developer who carries your work forward. yes there might be a performance issue but it sud be considered with the form size, scripting you do etc.

Could you please give me more detailed explanation?!

Thanks & regards,

Phil

Former Member
0 Kudos

Hi Philip,

in SFP When you develop a form you have the interface mapped/assigned to it right.

So here you have the source fields on the left hand side (the output parameters of your interface) and the form context on the right hand side.

So lets say your interface gives you several data where employee list (EMP_LIST) is a internal table.

so now if you drag and drop this EMP_LIST from left to right.

when you do it again it will have the name EMP_LIST_1 and so on.

Now if you go to layout tab you will see the form design area, here if you go to data view on the left hand side, you can see all the fields available for your form. since you have the EMP_LIST of 3 instances you will see all 3 of them.

So now on the form as required have the 3 tables in different pages or so as you like, do the data binding to the 3 different data instances.

since the actual actual source of the 3 lists is still the same the data presented in thhese tables is also same nothing different.

you can have your script to individual tables for presentation nothing changes (all is well).

Now when it comes to matter of support on your developments, when a new developer carries your work, he can see the context and understand that its the same. no need to investigate any scripts or such.

Hope this makes you clear,

Cheers,

Sai

Former Member
0 Kudos

Hi Phil,

It is not possible to bind same node to multiple tables within the form layout. The alternative way is to get the number of rows of your first table and set it for the second table. Then loop your first table, get the field values one by one and set them to the corresponding fields in the second table.

I think, performance wise this plan will be good rather than bringing the values in another node.

Thanks & Regards,

Sanoosh