I want to create a table-view consisting of an object composition, e.g. multiple business objects. The chtml:configCellerator -tag supports just one context node which corresponds to just one business object.
How do you create a table composed by different objects, i.e. BTAdminH and BTAdminI ?
Edited by: romanglass on May 18, 2010 4:07 PM
Thanks, this looks good to me. Is there a way to generate the dependent nodes and the correct class inheritance by the wizard, or performing any other helpful wizardry?
Otherwise I would just change the implementation of the context node implementation class which is on top of the hierarchy, redefine the methods accordingly and feed the table-tag with an extra iterator.
I would suggest to create a new component and not to disturb the standard ones. Because the super class of the header context node (BTAdminH in your case) must be inherited from CL_BSP_WD_CONTEXT_NODE_DTV - Deep table view.
The dependent nodes must be passed to return parameter rt_result of method GET_SUB_CNODE_DEFINITIONS.
This cant be done via wizard. I just tried to replicate your scenario. Below are the steps,
1. create a view with context node BTADMINH as tableview. Then change the super class of the context node to CL_BSP_WD_CONTEXT_NODE_DTV.
2. Add another context node BTADMINI and mark it as dependent to BTADMINH.
3. Now change the super class of context node BTADMINI to CL_BSP_WD_CONTEXT_NODE_TV (Table View).
4. Redefine method GET_SUB_CNODE_DEFINITIONS in context node BTADMINH.
In the view layout you should use cellerator and pass an iterator with interface IF_THTMLB_CELLERATOR_ITERATOR. The interface has a method RENDER_DEPENDANT_OBJECTS which returns the table of dependant objects.
Edited by: Arun Kumar on May 19, 2010 1:01 PM
your receipt is quite nice, thank you. I would never dare to change the standard.
There is only one problem left:
I can't get the items for the dependent nodes. If I check for the entities, they are set correctly, it is only that instead of the items there is a "No result found"-message.
While debugging the application I noticed that no row is expanded, e.g. gt_expanded_rows is empty. I've just copied the parameters from your example. Do you have any hints for this situation? Maybe this is a common error?
Thanks a lot
How can I test the component TPMOE in crm 7.0 using BSP Workbench. When I am executing the application, it is displaying a blank window with veiwset name : BSPWD_CMP_TEST/MainTestViewSet.
Please let me know how I can test , dependent context node scenario in crm 7.0 with IF_THTMLB_CELLERATOR_ITERATOR interface functionality.
That's an interesting discussion on using CL_BSP_WD_CONTEXT_NODE_DTV.
I have attempted to use this subclass for the following:
I have an XML doc which is TRANSFORMED to a deep structure and then parts of this deep structure need to be displayed in customised BSP Views. The problem that I have is that we have NO BOL object so I'm having to use VALUE_NODES, although I'm beginning to despair.
Foolishly I attempted to build the context in the same fashion as the deep structure, but, the attributes are not being defined other than in the root context, despite the entries in the IF_BSP_MODEL~INIT or the GET_TABLE_LINE_SAMPLE methods. I have the correct entries in the get_sub_cnode_definitions method for all contexts.
Is there an easier way do you know. I need to reference the deep structure contents via the context and update/display on screen via specific UI design.
Any suggestions would be greatly appreciated.