Cl_wd_transparent_container & row_layout
Hi,
I'm just working with one WD4A appl, where I create a view dynamically, but I found one problem when I combine transparent_container and row_layout.
I have a tray which layout is set to row_layout. Under this tray, there are several containers with links, but the problem is, that it doesn't matter if I assigned row or row_head layout data type, because every time container is in the new line.
I also try to change width of containers, but I doesn't help.
Can anyone help me?
thanks
Juraj
OK, I thought, "under the tray" means "underneath (outside) the tray".
If it is inside the tray, this is either a bug, or the transparent containers somehow consume too much space.
Have you ever tried out the keybooard shortcut CTRLALTSHIFT+O ? This will show you the borders of the containers.
Regards,
Daniel
Similar Messages
-
Hi Experts,
I have a requirement to have multiple rows in the table popin, that is , having a table with multiple rows as the table popin.
For further information, the exact requirement is , there is a table which will have one of the column containing a button, EXPAND , clicking which a table needs to be displayed below the row, (same as it happens for Table popins) and EXpand button becomes COLLAPSE button after it is clicked. Now clicking the Collapse button should close the table showed in Table popin.
Kindly help for the above requirement.
Thanks in Advance for help
Shilpa.LOOP AT wd_this->comp_tab INTO w_comp_tab.
lv_uielement_id_prefix = lv_uielement_id_prefix && iv_col_num.
IF w_comp_tab-name NE 'SELECTED_POPIN' .
l_new_col = cl_wd_table_column=>new_table_column(
id = w_comp_tab-name
width = '100px' ).
lr_header = cl_wd_caption=>new_caption( text = w_comp_tab-name ).
IF w_comp_tab-name EQ 'PRODUCT_ID'.
** link to action
CONCATENATE w_comp_tab-name '_LINK' INTO l_link_id.
lo_link_to_action = cl_wd_link_to_action=>new_link_to_action(
id = l_link_id
text = 'PRODUCTID'
on_action = 'SET_POPIN'
l_new_col->set_table_cell_editor( lo_link_to_action ).
DATA: lr_el_details_cont TYPE REF TO if_wd_view_element.
lr_container ?= lr_el_details_cont.
Transparent container
DATA lr_transparent_container TYPE REF TO cl_wd_transparent_container.
DATA lr_table_in_table_popin TYPE REF TO cl_wd_table.
lv_uielement_id = lv_uielement_id_prefix && '_POPIN_CNTR'. "#EC NOTEXT
lr_transparent_container = cl_wd_transparent_container=>new_transparent_container(
id = lv_uielement_id "'TRANSPARENT_CONTAINER1'
height = '100%' "#EC NOTEXT
width = '100%'
accessibility_descr = 'TRANS_ACC'
is_layout_container = 'X' "#EC NOTEXT
view = view
DATA l_popin_layout TYPE REF TO cl_wd_matrix_layout.
l_popin_layout = cl_wd_matrix_layout=>new_matrix_layout( container = lr_transparent_container ).
lr_transparent_container->set_layout( l_popin_layout ).
lr_container->add_child( the_child = lr_transparent_container ).
DATA: l_item_node TYPE REF TO if_wd_context_node.
l_item_node = l_node->get_child_node( 'SUB' ).
l_popin = cl_wd_table_popin=>new_table_popin(
id = 'POPIN'
on_close = 'CLOSE_POPIN' ).
DATA: i_the_content TYPE REF TO cl_wd_uielement.
i_the_content ?= lr_transparent_container.
IF l_item_node IS BOUND.
cl_wd_dynamic_tool=>create_table_from_node(
EXPORTING ui_parent = lr_transparent_container
table_id = 'MULTIV_TAB'
node = l_item_node
RECEIVING table = lr_table_in_table_popin ).
ENDIF.
"Add the Transparent Container to the Table Popin
l_popin->set_content( lr_transparent_container ).
" add popin to column
l_new_col->set_popin( l_popin ).
ENDIF.
l_new_col->set_header( lr_header ).
" add column to table
lr_table->add_column( l_new_col ).
ENDIF.
ENDLOOP. -
Short dump while creating transparent container dynamically
Hi experts!
I want to create a transparent container dynamically, but I get a Short Dump (
Note
The following error text was processed in the system NSP : Access via 'NULL' object reference not possible.
The error occurred on the application server Datatrain_NSP_00 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: CREATE_BY_VIEW_ELEMENT of program CL_WDR_VIEW_ELEMENT_ADAPTER===CP)
while doing so. Below my code...
Can somebody please advise I don't know what I did wrong....
Thanks in advance!
Points will be rewarded
METHOD wddomodifyview .
DATA: lr_container TYPE REF TO cl_wd_uielement_container,
lr_matrix_head TYPE REF TO cl_wd_matrix_data,
lv_hlp_str TYPE string VALUE 'DYNCONT_1',
lr_trans_cont TYPE REF TO cl_wd_transparent_container.
lr_container ?= view->get_element( 'ROOTUIELEMENTCONTAINER' ).
CALL METHOD cl_wd_transparent_container=>new_transparent_container
EXPORTING
enabled = ABAP_TRUE
id = lv_hlp_str
is_layout_container = ABAP_TRUE
receiving
control = lr_trans_cont
lr_matrix_head = cl_wd_matrix_head_data=>new_matrix_head_data(
element = lr_trans_cont ).
lr_trans_cont->set_layout_data( lr_matrix_head ).
lr_container->add_child( lr_trans_cont ).Hi Felix,
You need to set the layout first and then set the layout data. Use the method cl_wd_matrix_layout=>new_matrix_layout. Do a set_layout on the container and then do set_layout_data. That should solve your problem.
Regards
Nithya -
Create transparent_container dynamically?
Hi,
how is it possible to create a transparent_container dynamically? If i try the following piece of code i get always an error message in Browser like: Access 'NULL' Objectreference not possible.
Data:
lr_grp_box TYPE REF TO cl_wd_group,
lr_transCont TYPE REF TO cl_wd_transparent_container.
lr_grp_box ?= view->get_element( 'GRP_Box' ).
lr_transCont = cl_wd_transparent_container=>new_transparent_container(
id = 'X' view = view ).
lr_grp_box->add_child( lr_transCont ).
regards,
SharamHi Neha,
i have the following UI structure on my view:
The following UI hierarchy is just added to my view by design time.
->ROOTUIELEMENTCONTAINER->Tabstrip->Tab1->Transparent_Container->GroupBox
Now i want to add a new transparent_container into my GroupBox by runtime. How can i do that?
DATA: lr_ui_root TYPE REF TO cl_wd_transparent_container,
lr_tab_strip TYPE REF TO cl_wd_tabstrip,
lr_tab TYPE REF TO cl_wd_tab,
lr_container TYPE REF TO cl_wd_transparent_container.
lr_ui_root ?= view->get_element( 'ROOTUIELEMENTCONTAINER' ).
lr_tab_strip ?= lr_ui_root->get_child( id = 'TABSTRIP' ).
What is the next step?
regards,
Sharam -
Add a Transparent Container dynamically in wddomodifyview
Hi All,
I have added UI Elements to views before. Now, I am trying to add a Transparent Container to a Group, which does not work. I am using the same procedure as I have used it for other UI Elements before, but I keep receiving the dump:
The following error text was processed in the system JIL : Access via 'NULL' object reference not possible.
The error occurred on the application server SV-SAP-2_JIL_01 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: CREATE_NW7_BY_VIEW_ELEMENT of program CL_NW7_VIEW_ELEMENT_ADAPTER===CP
My code is as follows:
lo_group ?= view->get_element( 'GROUP' ).
lo_tc = cl_wd_transparent_container=>new_transparent_container( id = 'TC_SECOND_ELEMENT' ).
cl_wd_matrix_head_data=>new_matrix_head_data( element = lo_tc ).
lo_group->add_child( the_child = lo_tc ).
Why does the coding above not work?? How is the proper coding to add a Transparent Container to my group?
THANKS, JohannesHi,
Your coding seems to me fine. Though i am not sure if this line causes the error.
cl_wd_matrix_head_data=>new_matrix_head_data( element = lo_tc ).
I normally get this error when the UI element property is not binded correctly. How sure are you that this error is coming because of this TransparentContainer ?.
You can comment out the whole and check if this is working.
Then enable one by one and see if you get it worked. -
HI,
I am creating employee form where there are two views created.
1) First View is showing an employee ID label and input field, with two buttons ADD AND DISPLAY.
2) After entering the emp ID and clicking on Display >>>will open the second view.
But I want even the first view should remain active while second view (with all details of First name,last name and rest) is being displayed.
So i added the view container and embeded the second view in the view container. In other words, the first view with emp ID shows and after click on display below the first view... another view shows with all First name,last name etc details but the first view remains active as well.
How should I call the view container. Does this needs to be done in wdmodifyview, or via plugs to be created.
Regards
SP
Edited by: Shakti Parwanda on Aug 24, 2009 7:24 PM
Edited by: Shakti Parwanda on Aug 24, 2009 7:26 PMHi SP,
I think in this scenario there is no need of creating two views.In a single view alone on clicking the 'Display' button you set a flag
and in WDDOMODIFYVIEW method you can make the UI element where you are displaying the other details 'visible' by using the
syntax below:
lv_trp->set_visible( CL_WD_TRANSPARENT_CONTAINER=>E_VISIBLE-VISIBLE ).
Note:Initially the 'visible' property of the UI element should be set to none.
Regards
Martina -
Hi experts,
I am creating a node dynamically in WDDOINT and creating an input field in WDDOMODIFYVIEW , but am getting an error "attribute not found". Am pasting below my code...
Code in WDDOINT of a view :
data lr_par_node type ref to IF_WD_CONTEXT_NODE_INFO.
data lr_node type ref to IF_WD_CONTEXT_NODE_info.
data lr_node_info1 type ref to IF_WD_CONTEXT_NODE_INFO.
data lr_node1 type ref to IF_WD_CONTEXT_NODE.
data lr_attribute type WDR_CONTEXT_ATTRIBUTE_INFO.
data lt_child_node_map type wdr_context_child_info_map.
*****to get context parent node information
lr_par_node = wd_context->get_node_info( ).
*****to get child node of the parent
lt_child_node_map = lr_par_node->get_child_nodes( ).
*****check for the existence of node
read table lt_child_node_map transporting no fields with table key name = `RESULT`.
if sy-subrc = 0.
" REMOVE_CHILD_NODE
lr_par_node->remove_child_node( `RESULT` ).
endif.
*****inserting new node in context
CALL METHOD lr_par_node->ADD_NEW_CHILD_NODE
EXPORTING
NAME = 'RESULT'
* IS_MANDATORY = ABAP_FALSE
* IS_MANDATORY_SELECTION = ABAP_FALSE
IS_MULTIPLE = ABAP_TRUE
IS_MULTIPLE_SELECTION = ABAP_TRUE
* IS_SINGLETON = ABAP_FALSE
IS_INITIALIZE_LEAD_SELECTION = ABAP_false
* STATIC_ELEMENT_RTTI =
IS_STATIC = ABAP_TRUE
* ATTRIBUTES =
* IS_RANGE_NODE =
RECEIVING
CHILD_NODE_INFO = lr_node.
lr_node1 = wd_context->get_child_node( name = 'RESULT' ).
lr_node_info1 = lr_node1->GET_NODE_INFO( ).
*********Adding attribute
lr_attribute-NAME = 'TEST_GROUP'.
lr_attribute-TYPE_NAME = 'PLNNR'.
lr_attribute-NODE_INFO = lr_node_info1.
CALL METHOD lr_node_info1->ADD_ATTRIBUTE
EXPORTING
ATTRIBUTE_INFO = lr_attribute.
clear lr_attribute.
Code in the WDDOMODIFYVIEW :
method WDDOMODIFYVIEW .
if first_time = abap_true.
data : lt_header_block type zcdp_tt_mfte_header.
lt_header_block = WD_COMP_CONTROLLER->MT_HEADER_BLOCK.
DATA :lr_container TYPE REF TO cl_wd_uielement_container,
lr_input TYPE REF TO cl_wd_input_field,
lr_caption type ref to CL_WD_CAPTION,
lr_column type ref to CL_WD_TABLE_COLUMN,
lr_trans_cont TYPE REF TO CL_WD_TRANSPARENT_CONTAINER.
data lr_lbl type ref to CL_WD_TEXT_VIEW.
******to get root element container
lr_container ?= view->get_element( 'ROOTUIELEMENTCONTAINER' ).
lr_trans_cont ?= VIEW->GET_ELEMENT('TRANS_CONT_HEADER_BLOCK').
* Created one transparent container in the view.......
CALL METHOD CL_WD_TEXT_VIEW=>NEW_TEXT_VIEW
EXPORTING
* CONTEXT_MENU_BEHAVIOUR = E_CONTEXT_MENU_BEHAVIOUR-INHERIT
* CONTEXT_MENU_ID =
* DESIGN = E_DESIGN-STANDARD
* ENABLED = 'X'
* H_ALIGN = E_H_ALIGN-AUTO
* ID =
* LAYOUT = E_LAYOUT-NATIVE
* SEMANTIC_COLOR = E_SEMANTIC_COLOR-STANDARD
TEXT = 'TEST'
* TEXT_DIRECTION = E_TEXT_DIRECTION-INHERIT
* TOOLTIP =
* VIEW =
* VISIBLE = E_VISIBLE-VISIBLE
* WIDTH =
* WRAPPING =
RECEIVING
CONTROL = lr_lbl
cl_wd_matrix_head_data=>new_matrix_head_data(
element = lr_lbl ).
lr_trans_cont->ADD_CHILD( lr_lbl ).
CALL METHOD CL_WD_INPUT_FIELD=>NEW_INPUT_FIELD
EXPORTING
BIND_VALUE = 'RESULT.TEST_GROUP'
ENABLED = 'X'
* EXPLANATION =
ID = 'ABCD'
RECEIVING
CONTROL = lr_input.
cl_wd_matrix_data=>new_matrix_data(
element = lr_input ).
lr_trans_cont->ADD_CHILD( lr_input ).
endif.
endmethod.
Pls help me in this.....
Thanks
Aisurya.Hi,
looking at code it seems that you are adding textview and inputfield. please check in debugging if the correct context node/attribute is being created and you are providing its reference while adding UI elements.
Thanks,
Chandra -
Hi,
I am creating dynamically tabs in my tabstrip and that works fine so for. I found some examples in SDN and here for me to learn. Now I try to add a transparent container and some objects to it, but do not know how. This is so far my code in WDDOMODIFYVIEW:
some code here
* Create a new tab:
CONCATENATE 'TAB' wd_this->tot_tabs INTO aux_text.
lr_tab = cl_wd_tab=>new_tab( id = aux_text ).
lr_tabstrip->add_tab( the_tab = lr_tab ).
* Add a transparent container:
CONCATENATE 'TABCONT' wd_this->tot_tabs INTO aux_text.
lr_control = cl_wd_transparent_container=>new_transparent_container( id = aux_text
view = view ).
lr_tab->set_content( lr_control ).
TOT_TABS has the current number of the tab. System compiles the code correctly and activates it but when running the application I get this error message:
The following error text was processed in the system NSP : Access via 'NULL' object reference not possible.
The ABAP call stack was:
Method: CREATE_NW7_BY_VIEW_ELEMENT of program CL_NW7_VIEW_ELEMENT_ADAPTER===CP
Could it be maybe because I am not adding objects ?? I don´t know how anyway.Hi Guillermo,
Welcome to SDN.
You can have dynamic tabs by placing the <htmlb:tabStripItem> in a loop in the layout:
<% loop at tabstrip_tab. %>
<htmlb:tabStripItem index="<%=tabstrip_tab-index%>" etc. />
<% endloop. %>
Where tabstrip_tab contains the details of the tabstrip items.
Regards,
Patrick. -
How to create a roadmap ui element dynamically in webdynpro abap?
Dear team
iam new for webdynpro my question is how to create the road map programme dynamically using webdynpro
could you tell me what are the steps i have to take, what are the elements i have to bind?
and what code & where i have to write the code?
regards
sathyaHi Sathya,
Write the follwing code in WDDOMODIFYVIEW method to create a Dynamic ROADMAP and also create an attribute of
type string to control the selection of steps in road map.
method WDDOMODIFYVIEW .
data : lr_ele type ref to if_wd_view_element.
data : lr_rm type ref to cl_wd_road_map.
data : lr_step type ref to cl_wd_road_map_step.
data: lr_container type ref to cl_wd_transparent_container.
data : lr_flowdata type ref to cl_wd_flow_data.
CALL METHOD view->get_root_element
receiving
root_view_element = lr_ele.
lr_container ?= lr_ele.
CALL METHOD cl_wd_road_map=>new_road_map
EXPORTING
id = 'ROADMAP'
receiving
control = lr_rm.
CALL METHOD lr_rm->bind_selected_step
EXPORTING
path = 'VALUE'.
CALL METHOD cl_wd_flow_data=>new_flow_data
EXPORTING
element = lr_rm
receiving
control = lr_flowdata.
CALL METHOD lr_container->add_child
EXPORTING
index = 1
the_child = lr_rm.
CALL METHOD cl_wd_road_map_step=>new_road_map_step
EXPORTING
id = 'ONE'
name = '1'
receiving
control = lr_step.
CALL METHOD lr_rm->add_step
EXPORTING
index = 1
the_step = lr_step.
CALL METHOD cl_wd_road_map_step=>new_road_map_step
EXPORTING
id = 'TWO'
name = '2'
receiving
control = lr_step.
CALL METHOD lr_rm->add_step
EXPORTING
index = 2
the_step = lr_step.
CALL METHOD cl_wd_road_map_step=>new_road_map_step
EXPORTING
id = 'THREE'
name = '3'
receiving
control = lr_step.
CALL METHOD lr_rm->add_step
EXPORTING
index = 3
the_step = lr_step.
endmethod.
Then you can use the context attribute to navigate between the steps and do respective actions. -
How to set content of a dynamically created tab in a dynamically created tabstrip
Hi All,
I have a requirement where the whole layout is determined in run time according to a ztable values. I have created a tabstrip, inserted tabs to it, created elements (link to action) that has to be inserted into the different tabs created dynamically. BUt I am getting a dump when i try to do so.. the problem is with inserting the container to the tab. I get Null object reference. PFB the code. This has to be done urgently. Help is highly appreciated. TIA.
method wddomodifyview .
data lr_uielement_container type ref to cl_wd_uielement_container.
data lr_tabstrip type ref to cl_wd_tabstrip.
data lrs_tabstrip type ref to cl_wd_tabstrip.
data lr_matrix_head_data type ref to cl_wd_matrix_head_data.
data lr_tab type ref to cl_wd_tab.
data lv_caption type ref to cl_wd_caption.
data it_zps_reports_port type standard table of zps_reports_port.
data wa_zps_reports_port like line of it_zps_reports_port.
data lv_flag type c.
data lv_text type string.
data lv_link_text type string.
data lr_linktoaction type ref to cl_wd_link_to_action.
data lr_lta_element type ref to cl_wd_uielement.
data lr_scroll_container type ref to cl_wd_scroll_container.
data lr_trans_cont type ref to cl_wd_transparent_container.
data lr_id type string value 'LNK'.
data lr_count type num value 0.
data lr_id_d type string.
data lo_nd_link_to_action type ref to if_wd_context_node.
data lo_el_link_to_action type ref to if_wd_context_element.
data ls_link_to_action type wd_this->element_link_to_action.
data lv_textt type string.
data lo_node type ref to if_wd_context_node.
data lo_nd_info type ref to if_wd_context_node_info.
data:lt_valueset type wdr_context_attr_value_list ,
l_value type wdr_context_attr_value.
data ld_tabstrip type ref to cl_wd_tabstrip.
data: ld_container type ref to cl_wd_uielement_container,
ld_vc type ref to cl_wd_view_container_uielement.
if first_time eq abap_true.
select * from zps_reports_port into corresponding fields of table it_zps_reports_port order by tabx.
sort it_zps_reports_port.
************creation of tabstrip dynamically
lr_uielement_container ?= view->get_element( id = 'ROOTUIELEMENTCONTAINER' ).
call method cl_wd_tabstrip=>new_tabstrip
exporting
id = 'TBS'
receiving
control = lr_tabstrip.
lr_matrix_head_data = cl_wd_matrix_head_data=>new_matrix_head_data(
element = lr_tabstrip
lr_tabstrip->set_layout_data( the_layout_data = lr_matrix_head_data ).
lr_uielement_container->add_child(* index = index
the_child = lr_tabstrip
lo_node = wd_context->get_child_node( 'LINK_TO_ACTION' ).
lo_nd_info = lo_node->get_node_info( ).
lo_nd_link_to_action = wd_context->get_child_node( name = wd_this->wdctx_link_to_action ).
lo_el_link_to_action = lo_nd_link_to_action->get_element( ).
loop at it_zps_reports_port into wa_zps_reports_port.
*****addition of tab for every new tab.
at new tabx.
lv_flag = abap_true.
endat.
if lv_flag = abap_true.
if wa_zps_reports_port-tabx = 1.
lv_text = 'Billing reports'.
else.
lv_text = 'Monthly closing reports'.
endif.******Addition of new tab
call method cl_wd_caption=>new_caption
exporting
text = lv_text
receiving
control = lv_caption.
call method cl_wd_tab=>new_tab
exporting
enabled = 'X'
has_content_padding = 'X'
receiving
control = lr_tab.
lr_tab->set_header( lv_caption ).
lr_tabstrip->add_tab( the_tab = lr_tab ).
clear lv_flag.
endif.
lr_count = lr_count + 1.
concatenate lr_id lr_count into lr_id_d.
lv_textt = wa_zps_reports_port-trans_code.
call method cl_wd_link_to_action=>new_link_to_action
exporting
id = lr_id_d
on_action = 'ON_ACTION'
text = lv_textt
receiving
control = lr_linktoaction.
lr_matrix_head_data = cl_wd_matrix_head_data=>new_matrix_head_data(
element = lr_linktoaction
lr_linktoaction->set_layout_data( the_layout_data = lr_matrix_head_data ).
lr_linktoaction->set_layout_data( the_layout_data = lr_matrix_head_data ).** lr_uielement_container->add_child(** index = lr_ind* the_child = lr_linktoaction* ).
call method cl_wd_scroll_container=>new_scroll_container
receiving
control = lr_scroll_container
lr_scroll_container->add_child( lr_linktoaction ).
lr_tab->set_content( lr_trans_cont ). "im getting dump after the looping is done and the end method is executed
endloop.
endif.endmethod.HI SAYAN,
this is the dump i am getting.
Category ABAP Programming Error
Runtime Errors OBJECTS_OBJREF_NOT_ASSIGNED
ABAP Program CL_NW7_VIEW_ELEMENT_ADAPTER===CP
Application Component BC-WD-ABA-REN
Date and Time 18.05.2012 15:44:42
|Short text |
| Access via 'NULL' object reference not possible. |
|What happened? |
| Error in the ABAP Application Program |
| |
| The current ABAP program "CL_NW7_VIEW_ELEMENT_ADAPTER===CP" had to be |
| terminated because it has |
| come across a statement that unfortunately cannot be executed. |
|What can you do? |
| Note down which actions and inputs caused the error. |
| |
| |
| To process the problem further, contact you SAP system |
| administrator. |
| |
| Using Transaction ST22 for ABAP Dump Analysis, you can look |
| at and manage termination messages, and you can also |
| keep them for a long time. |
|Error analysis |
| You attempted to use a 'NULL' object reference (points to 'nothing') |
| access a component (variable: " "). |
| An object reference must point to an object (an instance of a class) |
| before it can be used to access components. |
| Either the reference was never set or it was set to 'NULL' using the |
| CLEAR statement. |
|How to correct the error |
| |
| |
| If the error occures in a non-modified SAP program, you may be able to |
| find an interim solution in an SAP Note. |
| If you have access to SAP Notes, carry out a search with the following |
| keywords: |
| |
| "OBJECTS_OBJREF_NOT_ASSIGNED" " " |
| "CL_NW7_VIEW_ELEMENT_ADAPTER===CP" or "CL_NW7_VIEW_ELEMENT_ADAPTER===CM008" |
| "CREATE_NW7_BY_VIEW_ELEMENT" |
| |
| If you cannot solve the problem yourself and want to send an error |
| notification to SAP, include the following information: |
| |
| 1. The description of the current problem (short dump) |
| |
| To save the description, choose "System->List->Save->Local File |
| (Unconverted)". |
| |
| 2. Corresponding system log |
| |
| Display the system log by calling transaction SM21. |
| Restrict the time interval to 10 minutes before and five minutes |
| after the short dump. Then choose "System->List->Save->Local File |
| (Unconverted)". |
| |
| 3. If the problem occurs in a problem of your own or a modified SAP |
| program: The source code of the program |
| In the editor, choose "Utilities->More |
| Utilities->Upload/Download->Download". |
| |
| 4. Details about the conditions under which the error occurred or which |
| actions and input led to the error. |
| |
|System environment |
| SAP Release..... 702 |
| SAP Basis Level. 0008 |
| |
| Application server... "ISVSAPECCDEV" |
| Network address...... "172.25.105.183" |
| Operating system..... "Windows NT" |
| Release.............. "6.1" |
| Hardware type........ "4x AMD64 Level" |
| Character length.... 16 Bits |
| Pointer length....... 64 Bits |
| Work process number.. 18 |
| Shortdump setting.... "full" |
| |
| Database server... "ISVSAPECCDEV" |
| Database type..... "MSSQL" |
| Database name..... "ECD" |
| Database user ID.. "ecd" |
| |
| Terminal.......... "10.66.113.155" |
| |
| Char.set.... "C" |
| |
| SAP kernel....... 720 |
| created (date)... "Mar 4 2012 23:19:29" |
| create on........ "NT 5.2 3790 S x86 MS VC++ 14.00" |
| Database version. "SQL_Server_9.00 " |
| |
| Patch level. 211 |
| Patch text.. " " |
| |
| Database............. "MSSQL 9.00.2047 or higher" |
| SAP database version. 720 |
| Operating system..... "Windows NT 5.0, Windows NT 5.1, Windows NT 5.2, Windows |
| NT 6.0, Windows NT 6.1, Windows NT 6.2" |
| |
| Memory consumption |
| Roll.... 0 |
| EM...... 4189792 |
| Heap.... 0 |
| Page.... 0 |
| MM Used. 3566480 |
| MM Free. 620640 |
|User and Transaction |
| Client.............. 220 |
| User................ 160072 |
| Language key........ "E" |
| Transaction......... " " |
| Transaction ID...... "38D2A0E14277F14BAD090050569F0165" |
| |
| EPP Whole Context ID.... "0050569F01651EE1A89A470EE848AD09" |
| EPP Connection ID....... "0050569F01651EE1A89A47B05E162D09" |
| EPP Caller Counter...... 1 |
| |
| Program............. "CL_NW7_VIEW_ELEMENT_ADAPTER===CP" |
| Screen.............. "SAPMHTTP 0010" |
| Screen Line......... 2 |
| Debugger Active..... "(TPDA)" |
|Server-Side Connection Information |
| Information on Caller of "HTTP" Connection: |
| Plug-in Type.......... "HTTP" |
| Caller IP............. "10.66.113.155" |
| Caller Port........... 8001 |
| Universal Resource ID. "/sap/bc/webdynpro/sap/z160072_dynamic_view_crea" |
| |
| Program............. "CL_NW7_VIEW_ELEMENT_ADAPTER===CP" |
| Screen.............. "SAPMHTTP 0010" |
| Screen Line......... 2 |
| |
| Information on Caller ofr "HTTP" Connection: |
| Plug-in Type.......... "HTTP" |
| Caller IP............. "10.66.113.155" |
| Caller Port........... 8001 |
| Universal Resource Id. "/sap/bc/webdynpro/sap/z160072_dynamic_view_crea" |
|Information on where terminated |
| Termination occurred in the ABAP program "CL_NW7_VIEW_ELEMENT_ADAPTER===CP" - |
| in "CREATE_NW7_BY_VIEW_ELEMENT". |
| The main program was "SAPMHTTP ". |
| |
| In the source code you have the termination point in line 23 |
| of the (Include) program "CL_NW7_VIEW_ELEMENT_ADAPTER===CM008". |
|Source Code Extract (Source code has changed) |
|Line |SourceCde |
| 1|METHOD create_nw7_by_view_element. |
| 2| |
| 3| TYPES c1 TYPE c LENGTH 1. |
| 4| |
| 5| DATA: mappings TYPE STANDARD TABLE OF wdr_elem_apt_map, |
| 6| mapping TYPE wdr_elem_apt_map, |
| 7| elem_defs TYPE SORTED TABLE OF wdy_ui_elem_def WITH UNIQUE KEY definition|
| 8| elem_def TYPE wdy_ui_elem_def, |
| 9| new_entries TYPE STANDARD TABLE OF t_nw7_class_registry, |
| 10| adapters TYPE SORTED TABLE OF wdr_uiel_adapter WITH UNIQUE KEY library_n|
| 11| adapter_def LIKE LINE OF adapters, |
| 12| id_gen_entity TYPE string, |
| 13| l_adapter_lib_name TYPE string, |
| 14| lr_adapter_lib TYPE REF TO if_nw7_adapter_library, |
| 15| l_current_library TYPE string, |
| 16| l_current_id_gen_entity TYPE c1, |
| 17| lt_mapping TYPE if_nw7_adapter_library=>tt_index_map. |
| 18| |
| 19| |
| 20| FIELD-SYMBOLS: <class_registry_entry> TYPE t_nw7_class_registry, |
| 21| <l_mapping> TYPE if_nw7_adapter_library=>t_index_map. |
| 22| |
|>>>>>| READ TABLE m_nw7_class_registry ASSIGNING <class_registry_entry> |
| 24| WITH TABLE KEY view_element_cid = view_element->_cid. |
| 25| IF sy-subrc <> 0. |
| 26| |
| 27|* If not found, maybe we need to load the library first? |
| 28| READ TABLE m_nw7_class_registry TRANSPORTING NO FIELDS |
| 29| WITH KEY mapping-library_name = view_element->_library_name. |
| 30|* No ViewElementAdapter found for ViewElement |
| 31| ASSERT FIELDS view_element->_library_name CONDITION sy-subrc <> 0. |
| 32| |
| 33| SELECT * FROM wdy_ui_elem_def INTO TABLE elem_defs |
| 34| WHERE library_name = view_element->_library_name |
| 35| AND cid <> ''. |
| 36| SELECT * FROM wdr_elem_apt_map INTO TABLE mappings |
| 37| WHERE library_name = view_element->_library_name. |
| 38| SELECT * FROM wdr_uiel_adapter INTO TABLE adapters |
| 39| WHERE library_name = view_element->_library_name. |
| 40| |
| 41| LOOP AT mappings INTO mapping. |
| 42| APPEND INITIAL LINE TO new_entries ASSIGNING <class_registry_entry>. |
|Contents of system fields |
|Name |Val. |
|SY-SUBRC|0 |
|SY-INDEX|2 |
|SY-TABIX|0 |
|SY-DBCNT|220 |
|SY-FDPOS|0 |
|SY-LSIND|0 |
|SY-PAGNO|0 |
|SY-LINNO|1 |
|SY-COLNO|1 |
|SY-PFKEY| |
|SY-UCOMM| |
|SY-TITLE|HTTP Control |
|SY-MSGTY| |
|SY-MSGID| |
|SY-MSGNO|000 |
|SY-MSGV1| |
|SY-MSGV2| |
|SY-MSGV3| |
|SY-MSGV4| |
|SY-MODNO|0 |
|SY-DATUM|20120518 |
|SY-UZEIT|154425 |
|SY-XPROG| |
|SY-XFORM| |
|Active Calls/Events |
|No. Ty. Program Include Line |
| Name |
| 22 METHOD CL_NW7_VIEW_ELEMENT_ADAPTER===CP CL_NW7_VIEW_ELEMENT_ADAPTER===CM008 23 |
| CL_NW7_VIEW_ELEMENT_ADAPTER=>CREATE_NW7_BY_VIEW_ELEMENT |
| 21 METHOD /1WDA/C7STANDARD==============CP /1WDA/C7STANDARD==============CCIMP 1096 |
| CL_SCROLL_CONTAINER=>IF_NW7_VIEW_ELEMENT_ADAPTER~SET_CONTENT |
| 20 METHOD /1WDA/C9STANDARD==============CP /1WDA/C9STANDARD==============CCIMP 4583 |
| CL_TABSTRIP_ITEM=>IF_NW7_VIEW_ELEMENT_ADAPTER~SET_CONTENT |
| 19 METHOD /1WDA/C9STANDARD==============CP /1WDA/C9STANDARD==============CCIMP 3973 |
| CL_TABSTRIP=>IF_NW7_VIEW_ELEMENT_ADAPTER~SET_CONTENT |
| 18 METHOD /1WDA/C8STANDARD==============CP /1WDA/C8STANDARD==============CCIMP 3165 |
| CL_MATRIX_LAYOUT_CELL=>IF_NW7_VIEW_ELEMENT_ADAPTER~SET_CONTENT |
| 17 METHOD /1WDA/C8STANDARD==============CP /1WDA/C8STANDARD==============CCIMP 3357 |
| CL_MATRIX_LAYOUT_ROW=>IF_NW7_VIEW_ELEMENT_ADAPTER~SET_CONTENT |
| 16 METHOD /1WDA/C8STANDARD==============CP /1WDA/C8STANDARD==============CCIMP 2846 |
| CL_MATRIX_LAYOUT=>IF_NW7_VIEW_ELEMENT_ADAPTER~SET_CONTENT |
| 15 METHOD /1WDA/C7STANDARD==============CP /1WDA/C7STANDARD==============CCIMP 1865 |
| CL_TRANSPARENT_CONTAINER=>IF_NW7_VIEW_ELEMENT_ADAPTER~SET_CONTENT |
| 14 METHOD CL_WDR_VIEW_ADAPTER===========CP CL_WDR_VIEW_ADAPTER===========CM003 72 |
| CL_WDR_VIEW_ADAPTER=>IF_WDR_VIEW_ELEMENT_ADAPTER~SET_CONTENT |
| 13 METHOD CL_WDR_VIEW_ADAPTER===========CP CL_WDR_VIEW_ADAPTER===========CM007 28 |
| CL_WDR_VIEW_ADAPTER=>IF_WDR_NW7_DELTA_RENDERER~CALCULATE_DELTA_BLOCKS |
| 12 METHOD CL_WDR_WINDOW_CONTENT_ADAPTER2CP CL_WDR_WINDOW_CONTENT_ADAPTER2CM004 5 |
| CL_WDR_WINDOW_CONTENT_ADAPTER2=>PROCESS_DELTA_BLOCKS |
| 11 METHOD CL_WDR_WINDOW_CONTENT_ADAPTER2CP CL_WDR_WINDOW_CONTENT_ADAPTER2CM001 27 |
| CL_WDR_WINDOW_CONTENT_ADAPTER2=>IF_WDR_NW7_DELTA_RENDERER~CALCULATE_DELTA_BLOCKS |
| 10 METHOD CL_WDR_NW7_INT_WIN_ADAPTER====CP CL_WDR_NW7_INT_WIN_ADAPTER====CM005 66 |
| CL_WDR_NW7_INT_WIN_ADAPTER=>SET_CONTENT |
| 9 METHOD CL_WDR_NW7_MAIN_WIN_ADAPTER===CP CL_WDR_NW7_MAIN_WIN_ADAPTER===CM002 6 |
| CL_WDR_NW7_MAIN_WIN_ADAPTER=>SET_CONTENT |
| 8 METHOD CL_WDR_CLIENT_SSR_LS==========CP CL_WDR_CLIENT_SSR_LS==========CM001 29 |
| CL_WDR_CLIENT_SSR_LS=>IF_WDR_CLIENT~SEND_RESPONSE |
| 7 METHOD CL_WDR_MAIN_TASK==============CP CL_WDR_MAIN_TASK==============CM00I 118 |
| CL_WDR_MAIN_TASK=>EXECUTE |
| 6 METHOD CL_WDR_MAIN_TASK==============CP CL_WDR_MAIN_TASK==============CM00U 6 |
| CL_WDR_MAIN_TASK=>IF_WDR_RUNTIME~EXECUTE |
| 5 METHOD CL_WDR_CLIENT_ABSTRACT_HTTP===CP CL_WDR_CLIENT_ABSTRACT_HTTP===CM01A 100 |
| CL_WDR_CLIENT_ABSTRACT_HTTP=>HANDLE_REQUEST |
| 4 METHOD CL_WDR_MAIN_TASK==============CP CL_WDR_MAIN_TASK==============CM00J 89 |
| CL_WDR_MAIN_TASK=>IF_HTTP_EXTENSION~HANDLE_REQUEST |
| 3 METHOD CL_HTTP_SERVER================CP CL_HTTP_SERVER================CM017 388 |
| CL_HTTP_SERVER=>EXECUTE_REQUEST_FROM_MEMORY |
| 2 FUNCTION SAPLHTTP_RUNTIME LHTTP_RUNTIMEU02 1155 |
| HTTP_DISPATCH_REQUEST |
| 1 MODULE (PBO) SAPMHTTP SAPMHTTP 13 |
| %_HTTP_START |
|Chosen variables |
|Name |
| Val. |
|No. 22 Ty. METHOD |
|Name CL_NW7_VIEW_ELEMENT_ADAPTER=>CREATE_NW7_BY_VIEW_ELEMENT |
|VIEW_ELEMENT |
| {O:initial} |
| F0000000 |
| F0000000 |
| FF00000000000000 |
|PARENT |
| {O:281*\CLASS-POOL=/1WDA/C7STANDARD\CLASS=CL_SCROLL_CONTAINER} |
| E0001000 |
| 60009100 |
| E600000019010000 |
|IGNORE_LIFETIME_WRAPPER |
| |
| 2 |
| 0 |
| 0 |
| 0 |
| 2000 |
|ADAPTER |
| {O:initial} |
| F0000000 |
| F0000000 |
| FF00000000000000 |
|%_SPACE |
| |
| 2 |
| 0 |
| 0 |
| 0 |
| 2000 |
|SYST-REPID |
| CL_NW7_VIEW_ELEMENT_ADAPTER===CP |
| 4454535544554444445544455453334522222222 |
| 3CFE77F6957F5C5D5E4F1410452DDD3000000000 |
| 0000000000000000000000000000000000000000 |
| 0000000000000000000000000000000000000000 |
| 43004C005F004E00570037005F0056004900450057005F0045004C0045004D0045004E0054005F0041004400410050|
|CL_NW7_VIEW_ELEMENT_ADAPTER=>M_NW7_CLASS_REGISTRY |
| Table IT_627[112x256] |
| \CLASS-POOL=CL_NW7_VIEW_ELEMENT_ADAPTER\DATA=CL_NW7_VIEW_ELEMENT_ADAPTER=>M_NW7_CLASS_REGISTRY|
| Table reference: 318 |
| TABH+ 0(20) = 303E3A00DF070000F03E3A00DF07000000000000 |
| TABH+ 20(20) = 3E010000730200007000000000010000FFFFFFFF |
| TABH+ 40(16) = 04E50000B0D6000010000000A425C000 |
| store = 0x303E3A00DF070000 |
| ext1 = 0xF03E3A00DF070000 |
| shmId = 0 (0x00000000) |
| id = 318 (0x3E010000) |
| label = 627 (0x73020000) |
| fill = 112 (0x70000000) |
| leng = 256 (0x00010000) |
| loop = -1 (0xFFFFFFFF) |
| xtyp = TYPE#000018 |
| occu = 16 (0x10000000) |
| accKind = 4 (ItAccessHashed) |
| idxKind = 0 (ItIndexNone) |
| uniKind = 1 (ItUniYes) |
| keyKind = 3 (user defined) |
| cmpMode = 2 (cmpSingleMcmpR) |
| occu0 = 1 |
| stMode = 0 |
| groupCntl = 0 |
| rfc = 0 |
| unShareable = 0 |
| mightBeShared = 0 |
| sharedWithShmTab = 0 |
| isShmLockId = 0 |
| isUsed = 1 |
| isCtfyAble = 1 |
| hasScndKeys = 0 |
| hasRowId = 0 |
| scndKeysOutdated = 0 |
| scndUniKeysOutdated = 0 |
| ----- Shareable Table Header Data ----- |
| tabi = 0xA0B53A00DF070000 |
| pgHook = 0xC0343A00DF070000 |
| idxPtr = 0x90323A00DF070000 |
| id = 536 (0x18020000) |
| shmTabhSet = 0x0000000000000000 |
| refCount = 0 (0x00000000) |
| tstRefCount = 0 (0x00000000) |
| lineAdmin = 112 (0x70000000) |
| lineAlloc = 112 (0x70000000) |
| shmVersId = 0 (0x00000000) |
| shmRefCount = 1 (0x01000000) |
| rowId = 18446744073709551615 |
| scndKeyAdmin = 0x0000000000000000 |
| ----- 1st level extension part -------- |
| regHook = 0xB0763A00DF070000 |
| collHook = 0x0000000000000000 |
| ext2 = 0x0000000000000000 |
| |
| STANDARD RADIOBUTTON_GROUP_BY_IDX RADI|
| 5544445422222222222222222222225444445554454545554554452222222222222222222222222222222222225444|
| 341E412400000000000000000000002149F2544FEF72F50F29F9480000000000000000000000000000000000002149|
| 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000|
| 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000|
| 5300540041004E00440041005200440020002000200020002000200020002000200020002000200020002000200020|
| |
| STANDARD RADIOBUTTON RADI|
| 5544445422222222222222222222225444445554422222222222222222222222222222222222222222222222225444|
| 341E412400000000000000000000002149F2544FE00000000000000000000000000000000000000000000000002149|
| 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000|
| 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000|
| 5300540041004E00440041005200440020002000200020002000200020002000200020002000200020002000200020|
| -
ABAP: Get parent container
Hello,
In my action handler method I have an ID of the element that triggered this event, lets call it ELEMENT_A.
I need to get UI element (let's call it container_element) that contains ELEMENT_A.
I know that this container_element is type of cl_wd_transparent_container.
How can this be done?
Thank you.Hi Georgy,
You could get reference to the UI element and then use GET_PARENT method to get the container. Ofcourse, you should use VIEW for this.
I have successfully used the following code to get refernce of a dropdown in a table. On similar lines, I guess you could get the container refernce.
data wd_table_cell_editor type ref to cl_Wd_view_element.
data wd_table_column type ref to cl_wd_table_column.
wd_table_cell_editor ?= wd_this->m_view->get_element( ID ).
wd_table_column ?= wd_table_cell_editor->get__parent( ).
DATA: THE_TABLE_CELL_EDITOR type ref to CL_WD_DROPDOWN_BY_KEY,
dropdown_value type string.
THE_TABLE_CELL_EDITOR ?= wd_table_column->GET_TABLE_CELL_EDITOR( ).
CALL METHOD THE_TABLE_CELL_EDITOR->GET_SELECTED_KEY
EXPORTING
CONTEXT_ELEMENT =
CONTEXT_NODE_PATH_NAME =
RECEIVING
VALUE = dropdown_value.
I have declared M_VIEW as an attribute(TYPE REF TO IF_WD_VIEW) in my view and used the following code in WDDOMODIFYVIEW method.
if first_time = abap_true.
wd_this->m_view = view.
endif.
Regards,
Srini. -
Problem in extension of a controller class
Hi all,
I have to make a radio button read only in a standard page. I am not able to set this property using personalisation, because, this bean is being created dynamically. So, I am extending the controller to perform the required function.
Also , there are 2 radioButton beans being created by the same id in the controller using the createWebBean method.
Because of the use of same id's, I am not able to use the findChildRecursive ()method, as this method fetches the 1st bean, while I want to set the property of the second bean.
Kindly help me in resolving this issue.
Thanks.Hi all,
This is that part of the code of processRequest() in which they have created all the items dynamically . This is the class which I plan to extend to set the property of the radiobutton.
The part of the code is as follows:
OATableLayoutBean oatablelayoutbean = (OATableLayoutBean)createWebBean(oapagecontext, "TABLE_LAYOUT");
oatablelayoutbean.setCellSpacing(3);
oawebbean.addIndexedChild(oatablelayoutbean);
OARowLayoutBean oarowlayoutbean = (OARowLayoutBean)createWebBean(oapagecontext, "ROW_LAYOUT");
oatablelayoutbean.addRowLayout(oarowlayoutbean);
OACellFormatBean oacellformatbean = (OACellFormatBean)createWebBean(oapagecontext, "CELL_FORMAT");
oarowlayoutbean.addIndexedChild(oacellformatbean);
oacellformatbean.addIndexedChild(createWebBean(oapagecontext, oawebbean, "ViewLabel"));
OACellFormatBean oacellformatbean1 = (OACellFormatBean)createWebBean(oapagecontext, "CELL_FORMAT");
oarowlayoutbean.addIndexedChild(oacellformatbean1);
OARadioButtonBean oaradiobuttonbean = (OARadioButtonBean)createWebBean(oapagecontext, "RADIO_BUTTON", "VARCHAR2", "costRevSelect");
oacellformatbean1.addIndexedChild(oaradiobuttonbean);
oaradiobuttonbean.setAttributeValue(UIConstants.VALUE_ATTR, "Cost");
oaradiobuttonbean.setText(oapagecontext, oawebbean.findIndexedChildRecursive("CostLabel").getLabel().toString());
OACellFormatBean oacellformatbean2 = (OACellFormatBean)createWebBean(oapagecontext, "CELL_FORMAT");
oarowlayoutbean.addIndexedChild(oacellformatbean2);
OARadioButtonBean oaradiobuttonbean1 = (OARadioButtonBean)createWebBean(oapagecontext, "RADIO_BUTTON", "VARCHAR2", "costRevSelect");
oaradiobuttonbean1.setAttributeValue(UIConstants.VALUE_ATTR, "Revenue");
oaradiobuttonbean1.setText(oapagecontext, oawebbean.findIndexedChildRecursive("RevenueLabel").getLabel().toString());
oacellformatbean2.addIndexedChild(oaradiobuttonbean1);
OACellFormatBean oacellformatbean3 = (OACellFormatBean)createWebBean(oapagecontext, "CELL_FORMAT");
oacellformatbean3.setHAlign("center");
oarowlayoutbean.addIndexedChild(oacellformatbean3);
oacellformatbean3.addIndexedChild(createWebBean(oapagecontext, oawebbean, "PaFinPlanMvSelectGo"));
Kindly go through this code and suggest me way by which I can access the radio button with value 'Revenue'.
Thanks -
Create Radio button dynamically in Table column.
HI All
I have used following code to create radio button dynamically. but it's getting dump saying that Could not find attribute STATUS.
Here STATUS is the attribute of the node in View context. But why this dump is coming.
Please correct me if any thing worng.
DATA: lr_radio TYPE REF TO cl_wd_radiobutton.
DATA: lr_containr TYPE REF TO cl_wd_transparent_container.
DATA: lr_data TYPE REF TO cl_wd_flow_data.
IF first_time = abap_true.
lr_containr ?= view->get_element( 'ROOTUIELEMENTCONTAINER' ).
lr_radio = cl_wd_radiobutton=>new_radiobutton(
view = view
id = 'RADIO'
text = 'Enroll'
bind_selected_key = 'STATUS'
key_to_select = 'STATUS' ).
lr_data = cl_wd_flow_data=>new_flow_data( element = lr_radio ).
lr_radio->set_layout_data( lr_data ).
lr_containr->add_child( lr_radio ).
ENDIF.
Thank you very much
RamHi Rama,
I solved it.check this code.
i think u did mistake in creating radio button you are not passing the
BIND_KEY_TO_SELECT
instead you are passing KEY_TO_SELECT.
data:lr_column2 type ref to cl_wd_table_column,
lr_radio type ref to cl_wd_radiobutton.
lr_column2 = obj_table->get_column(
id = 'TABLE1_PLANETYPE'
* INDEX = INDEX
lr_radio = cl_wd_radiobutton=>new_radiobutton(
* BIND_ENABLED = BIND_ENABLED
BIND_KEY_TO_SELECT = 'STATUS'
* BIND_KEY_VISIBLE = BIND_KEY_VISIBLE
* BIND_READ_ONLY = BIND_READ_ONLY
bind_selected_key = 'STATUS'
* BIND_STATE = BIND_STATE
* BIND_TEXT = BIND_TEXT
* BIND_TEXT_DIRECTION = BIND_TEXT_DIRECTION
* BIND_TOOLTIP = BIND_TOOLTIP
* BIND_VISIBLE = BIND_VISIBLE
* ENABLED = ABAP_TRUE
* EXPLANATION = EXPLANATION
ID = 'RAD1'
* KEY_TO_SELECT = KEY_TO_SELECT
* KEY_VISIBLE = KEY_VISIBLE
* ON_SELECT = ON_SELECT
* READ_ONLY = READ_ONLY
* STATE = E_STATE-NORMAL
TEXT = 'Test'
* TEXT_DIRECTION = E_TEXT_DIRECTION-INHERIT
* TOOLTIP = TOOLTIP
* VIEW = VIEW
* VISIBLE = E_VISIBLE-VISIBLE
lr_column2->set_table_cell_editor( the_table_cell_editor = lr_radio ).
Thanks,
Suman -
Issue with Java Decompiler, please help
I'm using Mocha to decompile a *.class file from the standard OAF. I'd like to reuse some logic which Oracle has previously developed. I'd like to decompile DetailDataInputCO.class but Mocha errors out with "Ignoring field attribute Synthetic".
If anyone has a good decompiler, could you please decompile a class file for me. Please contact me at [email protected] and I can send you the file. It would be greatly appreciated.
Thanks,
-Scott// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name: DetailDataInputCO.java
package oracle.apps.ap.oie.webui;
import com.sun.java.util.collections.HashMap;
import java.io.Serializable;
import java.util.Vector;
import oracle.apps.ap.oie.entry.AttendeeRuleUI;
import oracle.apps.ap.oie.server.DetailAMImpl;
import oracle.apps.ap.oie.utility.OIEConstants;
import oracle.apps.ap.oie.utility.OIEUtil;
import oracle.apps.fnd.common.MessageToken;
import oracle.apps.fnd.common.VersionInfo;
import oracle.apps.fnd.flexj.*;
import oracle.apps.fnd.framework.*;
import oracle.apps.fnd.framework.webui.*;
import oracle.apps.fnd.framework.webui.beans.*;
import oracle.apps.fnd.framework.webui.beans.form.OAChoiceBean;
import oracle.apps.fnd.framework.webui.beans.form.OASubmitButtonBean;
import oracle.apps.fnd.framework.webui.beans.layout.*;
import oracle.apps.fnd.framework.webui.beans.message.*;
import oracle.apps.fnd.framework.webui.beans.nav.OANavigationBarBean;
import oracle.apps.fnd.framework.webui.beans.nav.OAPageButtonBarBean;
import oracle.apps.fnd.framework.webui.beans.table.*;
import oracle.cabo.ui.*;
import oracle.cabo.ui.beans.*;
import oracle.cabo.ui.beans.form.*;
import oracle.cabo.ui.beans.layout.*;
import oracle.cabo.ui.beans.message.MessageStyledTextBean;
import oracle.cabo.ui.beans.message.MessageTextInputBean;
import oracle.cabo.ui.beans.nav.NavigationBarBean;
import oracle.cabo.ui.beans.table.ColumnBean;
import oracle.cabo.ui.beans.table.TableBean;
import oracle.jbo.domain.Number;
// Referenced classes of package oracle.apps.ap.oie.webui:
// ExpensesCO, NavigationUtility
public class DetailDataInputCO extends OAControllerImpl
public void processRequest(OAPageContext oapagecontext, OAWebBean oawebbean)
if(oapagecontext.isLoggingEnabled(2))
oapagecontext.writeDiagnostics(this, "start processRequest", 2);
boolean flag = false;
super.processRequest(oapagecontext, oawebbean);
OAApplicationModule oaapplicationmodule = oapagecontext.getRootApplicationModule();
OAApplicationModule oaapplicationmodule1 = oapagecontext.getApplicationModule(oawebbean);
String s = (String)oaapplicationmodule.invokeMethod("getMultipleCurrenciesFlag");
String s1 = (String)oapagecontext.getTransactionValue("ApWebTaxEnable");
String s2 = (String)oapagecontext.getTransactionValue("PaymentCurrencyCode");
String s3 = (String)oapagecontext.getTransactionValue("ApWebDescFlexName");
String s4 = (String)oapagecontext.getTransactionValue("CCPage");
boolean flag2 = s4 == null || s4.equals("Y");
boolean flag3 = ((String)oapagecontext.getTransactionValue("IsProjectEnabled")).equals("Y") || ((String)oapagecontext.getTransactionValue("IsProjectEnabled")).equals("R");
String s5 = (String)oapagecontext.getTransactionValue("ApWebEnableGrantsAccounting");
boolean flag4 = flag3 && s5 != null && s5.equals("Y");
boolean flag5 = ((Boolean)oaapplicationmodule.invokeMethod("isVATEnabled")).booleanValue();
String _tmp = (String)oapagecontext.getTransactionValue("ApWebEnableLineLevelAccounting");
oapagecontext.getParameter("ButtonLink");
String s6 = "N";
oracle.apps.ap.oie.setup.OIESetup.Setup setup = (oracle.apps.ap.oie.setup.OIESetup.Setup)oaapplicationmodule.invokeMethod("getSetup");
OADescriptiveFlexBean oadescriptiveflexbean = null;
OAStackLayoutBean oastacklayoutbean = (OAStackLayoutBean)createWebBean(oapagecontext, "STACK_LAYOUT");
oawebbean.addIndexedChild(oastacklayoutbean);
OATableLayoutBean oatablelayoutbean = (OATableLayoutBean)createWebBean(oapagecontext, "TABLE_LAYOUT");
oastacklayoutbean.addIndexedChild(oatablelayoutbean);
oatablelayoutbean.setWidth("100%");
OASpacerRowBean oaspacerrowbean = (OASpacerRowBean)createWebBean(oapagecontext, "SPACER_ROW");
if(flag5)
OARowLayoutBean oarowlayoutbean = (OARowLayoutBean)createWebBean(oapagecontext, "ROW_LAYOUT");
oatablelayoutbean.addRowLayout(oarowlayoutbean);
OACellFormatBean oacellformatbean = (OACellFormatBean)createWebBean(oapagecontext, "CELL_FORMAT");
oarowlayoutbean.addIndexedChild(oacellformatbean);
OARawTextBean oarawtextbean = (OARawTextBean)createWebBean(oapagecontext, "RAW_TEXT");
oacellformatbean.addIndexedChild(oarawtextbean);
oacellformatbean.setHAlign("start");
oacellformatbean.setColumnSpan(2);
oarawtextbean.setText(oapagecontext.getMessage("SQLAP", "OIE_MERCHANT_HEADING", new MessageToken[0]));
oarawtextbean.setStyleClass("OraInstructionText");
oatablelayoutbean.addIndexedChild(oaspacerrowbean);
OARowLayoutBean oarowlayoutbean1 = (OARowLayoutBean)createWebBean(oapagecontext, "ROW_LAYOUT");
oatablelayoutbean.addRowLayout(oarowlayoutbean1);
OACellFormatBean oacellformatbean1 = (OACellFormatBean)createWebBean(oapagecontext, "CELL_FORMAT");
oarowlayoutbean1.addIndexedChild(oacellformatbean1);
OATableLayoutBean oatablelayoutbean1 = (OATableLayoutBean)createWebBean(oapagecontext, oawebbean, "DRRequiredIconText");
oacellformatbean1.addIndexedChild(oatablelayoutbean1);
oatablelayoutbean.addIndexedChild(oaspacerrowbean);
OARowLayoutBean oarowlayoutbean2 = (OARowLayoutBean)createWebBean(oapagecontext, "ROW_LAYOUT");
oatablelayoutbean.addRowLayout(oarowlayoutbean2);
OACellFormatBean oacellformatbean2 = (OACellFormatBean)createWebBean(oapagecontext, "CELL_FORMAT");
OACellFormatBean oacellformatbean3 = (OACellFormatBean)createWebBean(oapagecontext, "CELL_FORMAT");
oarowlayoutbean2.addIndexedChild(oacellformatbean2);
oarowlayoutbean2.addIndexedChild(oacellformatbean3);
OATableLayoutBean oatablelayoutbean2 = (OATableLayoutBean)createWebBean(oapagecontext, "TABLE_LAYOUT");
OATableLayoutBean oatablelayoutbean3 = (OATableLayoutBean)createWebBean(oapagecontext, "TABLE_LAYOUT");
oacellformatbean2.addIndexedChild(oatablelayoutbean2);
oacellformatbean2.setVAlign("top");
oacellformatbean3.addIndexedChild(oatablelayoutbean3);
oacellformatbean3.setVAlign("top");
oatablelayoutbean2.addIndexedChild(createWebBean(oapagecontext, oawebbean, "DetailStartDate"));
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
oatablelayoutbean2.addIndexedChild(createWebBean(oapagecontext, oawebbean, "DetailDailyRate"));
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
oatablelayoutbean2.addIndexedChild(createWebBean(oapagecontext, oawebbean, "DetailDays"));
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
if(flag2)
OAMessageStyledTextBean oamessagestyledtextbean = (OAMessageStyledTextBean)createWebBean(oapagecontext, oawebbean, "DetailDisplayReceiptAmount");
oatablelayoutbean2.addIndexedChild(oamessagestyledtextbean);
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
oamessagestyledtextbean.setText(oamessagestyledtextbean.getText(oapagecontext) != null ? oamessagestyledtextbean.getText(oapagecontext) + " " : "");
if(oamessagestyledtextbean.getText(oapagecontext) != null && !oamessagestyledtextbean.getText(oapagecontext).equals(""))
OAStyledTextBean oastyledtextbean = (OAStyledTextBean)createWebBean(oapagecontext, "TEXT");
oastyledtextbean.setViewUsageName("OneReceiptBasedVO");
oastyledtextbean.setViewAttributeName("ReceiptCurrencyCode");
oastyledtextbean.setCSSClass("OraDataText");
oamessagestyledtextbean.setEnd(oastyledtextbean);
} else
OAMessageTextInputBean oamessagetextinputbean = (OAMessageTextInputBean)createWebBean(oapagecontext, oawebbean, "DetailReceiptAmount");
oatablelayoutbean2.addIndexedChild(oamessagetextinputbean);
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
if(s.equals("N"))
OAStyledTextBean oastyledtextbean1 = (OAStyledTextBean)createWebBean(oapagecontext, "TEXT");
oastyledtextbean1.setViewUsageName("OneReceiptBasedVO");
oastyledtextbean1.setViewAttributeName("ReceiptCurrencyCode");
oastyledtextbean1.setCSSClass("OraDataText");
oamessagetextinputbean.setEnd(oastyledtextbean1);
} else
OAChoiceBean oachoicebean = (OAChoiceBean)createWebBean(oapagecontext, "POPLIST", null, "CurrencyPopList");
oachoicebean.setViewUsageName("OneReceiptBasedVO");
oachoicebean.setViewAttributeName("ReceiptCurrencyCode");
oachoicebean.setPickListViewObjectDefinitionName("oracle.apps.ap.oie.server.CurrenciesVO");
oachoicebean.setListValueAttribute("CurrencyCode");
oachoicebean.setListDisplayAttribute("CurrencyCodeName");
OAStaticStyledTextBean oastaticstyledtextbean = (OAStaticStyledTextBean)createWebBean(oapagecontext, oawebbean, "Currency");
oachoicebean.setShortDesc(oastaticstyledtextbean.getLabel());
oamessagetextinputbean.setEnd(oachoicebean);
if(flag2 || s.equals("N"))
OAMessageStyledTextBean oamessagestyledtextbean1 = (OAMessageStyledTextBean)createWebBean(oapagecontext, oawebbean, "DetailDisplayExchRate");
oatablelayoutbean2.addIndexedChild(oamessagestyledtextbean1);
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
} else
OAMessageTextInputBean oamessagetextinputbean1 = (OAMessageTextInputBean)createWebBean(oapagecontext, oawebbean, "DetailExchRate");
oatablelayoutbean2.addIndexedChild(oamessagetextinputbean1);
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
oamessagetextinputbean1.setRequired("yes");
OAMessageStyledTextBean oamessagestyledtextbean2 = (OAMessageStyledTextBean)createWebBean(oapagecontext, oawebbean, "DetailReimbursAmt");
oatablelayoutbean2.addIndexedChild(oamessagestyledtextbean2);
if(oamessagestyledtextbean2.getText(oapagecontext) != null)
oamessagestyledtextbean2.setText(oamessagestyledtextbean2.getText(oapagecontext) + " " + s2);
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
OAMessageCheckBoxBean oamessagecheckboxbean = (OAMessageCheckBoxBean)createWebBean(oapagecontext, oawebbean, "DetailReceiptMissing");
oatablelayoutbean2.addIndexedChild(oamessagecheckboxbean);
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
Integer integer = (Integer)oaapplicationmodule.invokeMethod("getNumberOfTaxCodes");
String s7 = (String)oaapplicationmodule1.invokeMethod("getTaxCodeUpdateable");
OAWebBeanDataAttribute oawebbeandataattribute;
if(s7 == null || s7.equals("Y"))
oawebbeandataattribute = (OAWebBeanDataAttribute)createWebBean(oapagecontext, oawebbean, "DetailTaxCode");
else
oawebbeandataattribute = (OAWebBeanDataAttribute)createWebBean(oapagecontext, oawebbean, "DetailTaxCodeDisplay");
OAMessageCheckBoxBean oamessagecheckboxbean1 = (OAMessageCheckBoxBean)createWebBean(oapagecontext, oawebbean, "DetailAmtInclTax");
if(s1 != null && s1.equals("Y") && integer.intValue() > 0)
oatablelayoutbean2.addIndexedChild(oamessagecheckboxbean1);
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
oatablelayoutbean2.addIndexedChild(oawebbeandataattribute);
oatablelayoutbean2.addIndexedChild(oaspacerrowbean);
String s8 = (String)oaapplicationmodule1.invokeMethod("getExpTypeWebPrompt");
Object obj = null;
Object obj1 = null;
Boolean boolean1 = (Boolean)oaapplicationmodule1.invokeMethod("isExpTypeInPoplist");
if(flag4 && !boolean1.booleanValue())
oaapplicationmodule1.invokeMethod("resetWebParameterId");
String s11 = (String)oaapplicationmodule1.invokeMethod("getAwardNumber");
MessageToken amessagetoken[] = {
new MessageToken("EXP_TYPE", s8), new MessageToken("AWARD_NUM", s11 != null ? s11 : "")
OAException oaexception = new OAException("SQLAP", "OIE_DEFAULT_EXPENDITURE_TYPE", amessagetoken, (byte)1, null);
oaexception.setApplicationModule(oaapplicationmodule1);
oapagecontext.putDialogMessage(oaexception);
OAMessageLovInputBean oamessagelovinputbean = (OAMessageLovInputBean)createWebBean(oapagecontext, oawebbean, "DetailProjectNumber");
OAMessageLovInputBean oamessagelovinputbean1 = (OAMessageLovInputBean)createWebBean(oapagecontext, oawebbean, "DetailTaskNumber");
if(flag3)
oatablelayoutbean3.addIndexedChild(oamessagelovinputbean);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
oatablelayoutbean3.addIndexedChild(oamessagelovinputbean1);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
String s12 = (String)oaapplicationmodule1.invokeMethod("getProjectNumber");
if(s12 != null)
oamessagelovinputbean1.setRequired("yes");
else
oamessagelovinputbean1.setRequired("no");
if(flag4)
OAMessageLovInputBean oamessagelovinputbean2 = (OAMessageLovInputBean)createWebBean(oapagecontext, oawebbean, "DetailAwardNumber");
oatablelayoutbean3.addIndexedChild(oamessagelovinputbean2);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
oatablelayoutbean3.addIndexedChild(createWebBean(oapagecontext, oawebbean, "RBWebParam"));
if(s3 != null && ("Y".equals(s3) || "B".equals(s3)))
oadescriptiveflexbean = (OADescriptiveFlexBean)createWebBean(oapagecontext, oawebbean, "DetailFlex");
oatablelayoutbean3.addIndexedChild(oadescriptiveflexbean);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
if(flag4)
OAStyledTextBean oastyledtextbean2 = (OAStyledTextBean)createWebBean(oapagecontext, "TEXT");
oatablelayoutbean3.addIndexedChild(oastyledtextbean2);
String s9 = oapagecontext.getMessage("SQLAP", "OIE_EXPENDITURE_TYPE_TIP", null);
oastyledtextbean2.setText(oapagecontext, s9);
oastyledtextbean2.setStyleClass("OraInlineInfoText");
OAWebBeanDataAttribute oawebbeandataattribute1 = null;
if(oapagecontext.getParameter("_FORMEVENT") == null || !oapagecontext.getParameter("_FORMEVENT").startsWith("FLEX_CONTEXT_CHANGED"))
if(!boolean1.booleanValue() && s8 != null)
oadescriptiveflexbean.setFlexContext(oapagecontext, null);
Serializable aserializable[] = {
null
oapagecontext.getApplicationModule(oawebbean).invokeMethod("onChangeExpenseDFFContext", aserializable);
} else
oadescriptiveflexbean.setFlexContext(oapagecontext, s8);
oadescriptiveflexbean.processFlex(oapagecontext);
oawebbeandataattribute1 = (OAWebBeanDataAttribute)oadescriptiveflexbean.getIndexedChild(null, 0);
oadescriptiveflexbean.setFlexTableRendered(false);
oatablelayoutbean3.addIndexedChild(oawebbeandataattribute1);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
if(!boolean1.booleanValue() && s8 != null)
oawebbeandataattribute1.setRequired("no");
else
oawebbeandataattribute1.setRequired("yes");
DescriptiveFlexfield descriptiveflexfield = (DescriptiveFlexfield)oadescriptiveflexbean.getAttributeValue(OAWebBeanConstants.FLEXFIELD_REFERENCE);
int i = descriptiveflexfield.indexOfContextSegment();
if(oapagecontext.getParameter("_FORMEVENT") != null && oapagecontext.getParameter("_FORMEVENT").startsWith("FLEX_CONTEXT_CHANGED"))
String s14 = descriptiveflexfield.getSegment(i).getValue().getDisplay();
Serializable aserializable2[] = {
s14
oapagecontext.getApplicationModule(oawebbean).invokeMethod("onChangeExpenseDFFContext", aserializable2);
} else
OAMessageChoiceBean oamessagechoicebean = (OAMessageChoiceBean)createWebBean(oapagecontext, oawebbean, "DetailExpType");
oatablelayoutbean3.addIndexedChild(oamessagechoicebean);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
oamessagechoicebean.setPickListViewUsageName("DetailExpenseTypesVO");
if(flag4)
OAStyledTextBean oastyledtextbean3 = (OAStyledTextBean)createWebBean(oapagecontext, "TEXT");
oatablelayoutbean3.addIndexedChild(oastyledtextbean3);
String s10 = oapagecontext.getMessage("SQLAP", "OIE_EXPENDITURE_TYPE_TIP", null);
oastyledtextbean3.setText(oapagecontext, s10);
oastyledtextbean3.setStyleClass("OraInlineInfoText");
if(flag3)
String s13 = (String)oaapplicationmodule1.invokeMethod("getExpenditureType");
boolean flag7 = ((String)oapagecontext.getTransactionValue("IsProjectEnabled")).equals("R") && s13 != null;
if(flag7)
oamessagelovinputbean.setRequired("yes");
oamessagelovinputbean1.setRequired("yes");
boolean flag6 = ((Boolean)oaapplicationmodule1.invokeMethod("isLocationSchedule")).booleanValue();
boolean flag8 = flag5 || flag6;
if(setup.getReceiptBasedLocation() != null)
flag8 = setup.getReceiptBasedLocation().booleanValue() || flag8;
if(flag8)
if(flag6 || flag5)
OAMessageLovInputBean oamessagelovinputbean3 = (OAMessageLovInputBean)createWebBean(oapagecontext, oawebbean, "LocationName");
oatablelayoutbean3.addIndexedChild(oamessagelovinputbean3);
oamessagelovinputbean3.setRequired("yes");
oatablelayoutbean3.addIndexedChild(createWebBean(oapagecontext, oawebbean, "LocationId"));
} else
OAMessageTextInputBean oamessagetextinputbean2 = (OAMessageTextInputBean)createWebBean(oapagecontext, oawebbean, "RBLocation");
oatablelayoutbean3.addIndexedChild(oamessagetextinputbean2);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
if(flag2)
OAMessageStyledTextBean oamessagestyledtextbean3 = (OAMessageStyledTextBean)createWebBean(oapagecontext, oawebbean, "TransactionLocation");
oatablelayoutbean3.addIndexedChild(oamessagestyledtextbean3);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
Object obj2 = null;
Object obj3 = null;
String s17 = null;
if((OAMessageTextInputBean)oawebbean.findIndexedChildRecursive("RBLocation") != null)
OAMessageTextInputBean oamessagetextinputbean5 = (OAMessageTextInputBean)oawebbean.findIndexedChildRecursive("RBLocation");
s17 = (String)oamessagetextinputbean5.getValue(oapagecontext);
} else
if((OAMessageLovInputBean)oawebbean.findIndexedChildRecursive("LocationName") != null)
OAMessageLovInputBean oamessagelovinputbean4 = (OAMessageLovInputBean)oawebbean.findIndexedChildRecursive("LocationName");
s17 = (String)oamessagelovinputbean4.getValue(oapagecontext);
OAMessageStyledTextBean oamessagestyledtextbean5 = (OAMessageStyledTextBean)oawebbean.findIndexedChildRecursive("TransactionLocation");
String s19 = (String)oaapplicationmodule1.invokeMethod("getTransactionLocation");
if(s19 != null && !s19.equalsIgnoreCase(s17))
oamessagestyledtextbean5.setValue(oapagecontext, s19);
oamessagestyledtextbean3.setRendered(true);
boolean flag1 = true;
} else
oamessagestyledtextbean3.setRendered(false);
if(flag2)
OAMessageStyledTextBean oamessagestyledtextbean4 = (OAMessageStyledTextBean)createWebBean(oapagecontext, oawebbean, "DetailDisplayMerchantName");
oatablelayoutbean3.addIndexedChild(oamessagestyledtextbean4);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
} else
OAMessageTextInputBean oamessagetextinputbean3 = (OAMessageTextInputBean)createWebBean(oapagecontext, oawebbean, "DetailMerchantName");
Serializable aserializable1[] = {
getLocationId(oapagecontext, oawebbean)
Class aclass[] = {
oracle.jbo.domain.Number.class
if(((Boolean)oaapplicationmodule1.invokeMethod("isMerchantRequired", aserializable1, aclass)).booleanValue())
oamessagetextinputbean3.setRequired("yes");
oatablelayoutbean3.addIndexedChild(oamessagetextinputbean3);
oatablelayoutbean3.addIndexedChild(oaspacerrowbean);
} -
How to bind chart type at run time
Hi,
I want to select chart type at run time using a drop down , i know the class name (CL_WD_BUSINESS_GRAPHICS) which
has to be bind. but iam unable to bind the class.
can any one help me.Hi,
**... check view exists
check me->if_salv_wd_view~r_view is bound.
*... get wd root uie for adding graphic control uie
data:
lr_wd_root type ref to cl_wd_transparent_container.
lr_wd_root ?= me->if_salv_wd_view~r_view->get_element( if_salv_wd_comp_table_ui=>c_uie_root ).
check lr_wd_root is bound.
*... use a group container
data:
lr_wd_group type ref to cl_wd_group.
lr_wd_group ?= me->if_salv_wd_view~r_view->get_element( if_salv_wd_comp_table_ui=>c_uie_graphic_container ).
*... if wd uie group container does not exist create group container
if lr_wd_group is not bound.
lr_wd_group = me->if_salv_wd_comp_table_ui~create_graphic_container( ).
endif.
*... get wd uie graphic
value ?= me->if_salv_wd_view~r_view->get_element( if_salv_wd_comp_table_ui=>c_uie_graphic ).
*... if wd uie graphic does not exist create graphic
if value is not bound.
data:
l_source_category type string,
l_source_series type string,
l_source_point type string.
concatenate if_salv_wd_comp_table_data=>c_name_node_graphic '.'
if_salv_wd_comp_table_data=>c_name_node_graphic_category
into l_source_category.
concatenate if_salv_wd_comp_table_data=>c_name_node_graphic '.'
if_salv_wd_comp_table_data=>c_name_node_graphic_series
into l_source_series.
concatenate if_salv_wd_comp_table_data=>c_name_node_graphic '.'
if_salv_wd_comp_table_data=>c_name_node_graphic_series '.'
if_salv_wd_comp_table_data=>c_name_node_graphic_point
into l_source_point.
value = cl_wd_business_graphics=>new_business_graphics(
view = me->if_salv_wd_view~r_view
id = if_salv_wd_comp_table_ui=>c_uie_graphic
bind_category_source = l_source_category
bind_series_source = l_source_series ).
data:
l_bind_value type string.
data:
lr_wd_category type ref to cl_wd_category.
concatenate l_source_category '.' 'LABEL' into l_bind_value.
lr_wd_category = cl_wd_category=>new_category(
view = me->if_salv_wd_view~r_view
bind_description = l_bind_value
bind_tooltip = l_bind_value ).
value->set_category( lr_wd_category ).
data:
lr_wd_series type ref to cl_wd_series.
concatenate l_source_series '.' 'LABEL' into l_bind_value.
lr_wd_series = cl_wd_series=>new_series(
view = me->if_salv_wd_view~r_view
bind_point_source = l_source_point
bind_label = l_bind_value
bind_tooltip = l_bind_value ).
value->add_series( lr_wd_series ).
data:
lr_wd_point type ref to cl_wd_point.
concatenate l_source_point '.' 'LABEL' into l_bind_value.
lr_wd_point = cl_wd_point=>new_point(
view = me->if_salv_wd_view~r_view
bind_value_source = l_source_point
bind_label = l_bind_value
bind_tooltip = l_bind_value ).
lr_wd_series->set_point( lr_wd_point ).
data:
lr_wd_value type ref to cl_wd_numeric_value.
concatenate l_source_point '.' 'VALUE' into l_bind_value.
lr_wd_value = cl_wd_numeric_value=>new_numeric_value(
view = me->if_salv_wd_view~r_view
bind_value = l_bind_value ).
lr_wd_point->add_value( lr_wd_value ).
me->if_salv_wd_comp_table_ui~add_child_to_container(
r_container = lr_wd_group
r_child = value ).
endif.
Maybe you are looking for
-
Dear friends, How i can schedule LSMW to process in background for a particular time. Regards, Praveen Lobo
-
The music player is gone from all my home screens. How do I get it back?
I can't find my music player on my home screen it was there yesterday and now it's gone
-
Re: Bug: Cross Connection Query not working
hello i am using vers. 4 and i cannot get BRIDGE to work i have posted more on this here BRIDGE command in Oracle SQL Developer - Stack Overflow i would be most grateful for any help
-
Using Address Book, distribution list contact does not appear
Using 10.7.4, added a name to an address book distribution list but it does not appear in the email "to" address. Had added to people previously and it worked fine but not with the last entry. Verified that the contact's name, address, etc. all corre
-
10 G Rac reinstall problem,How to unregister VIP manully?
NODE NAME: rac1 rac2 rac3 . I was removed rac3 from the cluster. Now 2 nodes working and i'm trying to re-add the dropped one into the cluster. I check crs_stat ,ifcfg ,olsnodes .There's no rac3 infomation any more. But when i trying to run addNode.s