Explaination of UI elements in a view
Hi gurus,
I want to create a Pane in the webpage just like we have in BSP...when i was gng through the UI elements in the view i was bit confused what to select...
is there any doc which explains about the UI elements in detail...
or please suggest me how do i start creating the pane ...
the pane shld be in left side of the webpage and shld contain something like menu etc...
Regards
Harika
Hi,
Please refer to this link: http://help.sap.com/saphelp_nw70ehp1/helpdata/en/df/da8b412bb5b35fe10000000a1550b0/frameset.htm
I hope it helps.
Regards
Arjun
Similar Messages
-
ABAP webdynpro how to give spacing between the UI Elements in a view
Hi Expert,
I am very new to webdynproapplication development. I am stuck in changing the look of the ui elements of the view.
Cud anyone explain how to set the spaces between the UI Elements on a View is there any method ?
I have set the Layout property to Matrix layout. But here I am unable to set the spacing between the deffernet elements as it is taking it automaticaaly and I am not able to allign all the Elements.
Need your help!.............thank you
Moderator message: wrong forum, please have a look in the dedicated "Web Dynpro ABAP" forum.
Edited by: Thomas Zloch on Apr 15, 2011 10:17 PMHi anushree.,
If u are using matrix layout:
In Layout Data select MatrixHeadData to display UI in next line.,
If u want to give space between UI elements in the width enter 50, 60, 70 or what ever space u want.
Also in the vGutter u can select medium , large , medium with rule to give space between UI elements.
n if u want to give space between lines ., in the height enter 30 40 or whatever spacing between lines u want.,
Matrix layout is a good layout., and u can play with colspan , hAlign, vAlign, vGutter, width and height options.,
If u dont like the layout with these options then use Grid layout., where u can give custom spacing., with the help of Left Padding, Right Padding, Top Padding, Bottom Padding.
reply if u need some more clarifications.,
Thanks & Regards
Kiran -
Need to add new UI elements in HAP_PMP_OVERALL_APPRAISAL view VW_MAIN
Hi,
how to add new UI elements (input field, read only field and button) on VW_MAIN view of HAP_PMP_OVERALL_APPRAISAL .
This is about ESS MSS Performance Mgmt.
I am checking for enhancement modifications, enhacement spots, dynamic programming to add new UI elements etc.
kindly provide inputs
thanks
BHi,
The following procedure explains how to add UI elements in the view of the standard component.
1. Create an Enhancement Implementation.
2. Create a new node on Component controller context.
3. Create a new method on component controller as the supply function of the new node.
4. Create new node on the view context by binding it from the controller context.
5. Create the UI elements on view.
6. Create post-exit on view method DoModifyView.--> In order to handle the events of UI element newly added.
7. Create a pre-exit on component method(Ex: SAVEAPPRAISALDATA) --> to get the static attributes of node.
Hope, the above steps will be useful .
Regards,
Abi -
How to Return the Index of a Mouse-Selected Array Element in the View Interface of Diadem
Hello,
Does anybody have an idea of how to obtain the index of a mouse-selected array element in the View interface of Diadem??
Thanks!Hi Ovidius,
Keep explaining. The only way I know of to trap a selected cell value in VIEW is to embed into the desired VIEW area a second non-modal SUDialog that has a Table control or an XTable control displaying the values of certain data channels. There are callbacks in both table controls for cell selection, and you can configure the table control to allow only single cell selection if that's what you want. The regular table control will be easier to program, but the XTable control will perform much better for larger channels.
But what happens with that value the user selected? Is it used for a calculation? Is it added to a report? Why would the user select that cell in a table rather than selecting the corresponding feature in a graph with the crosshair cursor?
Brad Turpin
DIAdem Product Support Engineer
National Instruments -
Dear All,
I am enhancing a standard web dynpro component HAP_DOCUMENT_BODY, view VW_TABS_VIEW where I would have to add an Image on the first tab of the tab strip.
So i have Imported a MIME object inside the standard application and have bouned it to a an IMage container. Now the fixed image is appearing in all tabs of the tab strip. Hence i want to hide the image in different tabs strip through code.
Also my requirement is to display different image for different login languages too.
Basically i have two questions here.
i) I would want to know how to hide Image object or the transparent container which holds the IMAGE object, dynamically through the code inside the MODIFYVIEW method of the view
ii) Is there an option to dynamically specify diffent image based on the login language with the IMage container?
require you kind help.
Thanks,
SridharanHi ,
This is a Webdynpro related question. you would have got many repsonses if you posted in webdynpro forum.
i) I would want to know how to hide Image object or the transparent container which holds the IMAGE object, dynamically through the code inside the MODIFYVIEW method of the view
You can do a post_exit enhancement in the MODIFYVIEW method. Get the UI element object from view and There are methods to set the visibility at runtime.
Is there an option to dynamically specify diffent image based on the login language with the IMage container?
i think yes, same procedure as first question's answer. Based on condition you can change the source path of the mime object . -
How can i hide elements of a view?
Hi,, i've got a question about, how can i hide an element of a view?, this element colud be a group, a label, an input field, any element that i can put in the view layout.
My view has an ALV, an inputfield and a Table with a button, so when i click on a line of the alv, it shows data in the table and in the inputfield, and when i click on the button of the table, i want to hide the table and the inputfield, until i clik on the alv again to make appear the table and the inputfield.
how can i hide those element?,,,,,,,,thanksHi Luis Garcia,
It can be done easily by <b>context binding</b> the visibility property of the table and input field UI element to a node attribute whose type would be WDY_BOOLEAN.
1. Initially the node attributes default value would be 'X'.
2. When you click the button in the ALV, in the event handler of that button change the binded node attribute value to ' '.
3. When on lead selection of the table again change the binded node attribute field value to 'X'.
4. Below is the sample code to read the binded node attribute and toggle the visiblity attribute to 'X' if it is ' ' and vice versa.
data:
Node_If type ref to If_Wd_Context_Node,
Elem_If type ref to If_Wd_Context_Element,
Stru_If type If_Main=>Element_If ,
Item_VISIBILITY like Stru_If-VISIBILITY.
* navigate from <CONTEXT> to <IF> via lead selection
Node_If = wd_Context->get_Child_Node( Name = IF_MAIN=>wdctx_If ).
* get element via lead selection
Elem_If = Node_If->get_Element( ).
* get single attribute
Elem_If->get_Attribute(
exporting
Name = `VISIBILITY`
importing
Value = Item_Visibility ).
if Item_visibility is initial.
item_visibility = 'X'.
else.
item_visibility = ' '.
endif.
Elem_If->set_Attribute(
Name = `VISIBILITY`
Value = Item_Visibility ).
endmethod.
Hope it helps.
Regards,
Maheswaran.B -
Dreamweaver CC automatically deletes code in code view and elements in design view
When I open a file in Dreamweaver, it automatically shows a * next to the filename - showing it has been edited.
Then often when I select some code in code view, or an element in design view (such as a table, an image, some text) it is suddenly deleted.
The problem is especially bad (happens without fail) if I am switching between programs. But also happens when I'm not switching.
I do not have this problem on a different user account.
I have reinstalled Dreamweaver three times now. Also renamed preference and configuration folders. Tried with a wired mouse and keyboard. Nothing has worked.
I can't think what I did to cause this. I installed MAMP recently - but have uninstalled it correctly I think.
I had an issue with one file in which there were about 30 Spry collapsible panels. I kept getting this warning:
"A script in file Macintosh HD:Applications:Adobe Dreamweaver CC:Configuration:Shared:Spry:DesignTime:EditingUtils.js has been running for a long time. Do you want to continue?"
I have to click 'yes' many times to get into the file, and the warning keeps coming up while the file is open.
However, my big issue of DW CC deleting code and elements happens whether or not this particular file is open.
So this may have nothing to do with it.
Any ideas anyone?
Adobe's customer service has not helped. In fact, I have not even been able to get through to anyone on the phone - having waited literally hours listening to music, and getting shunted from person to person. And then their promised 'call backs' never happen.
Thanks,
- GregI do not have this problem on a different user account.
You've got a bad/corrupted user account. Create a new one with Admin level priveleges and delete your old user.
Nancy O. -
Dynamic tree UI element in the view
Dear All,
Can anyone provide me with the code snippet for Dynamic Tree UI element in the view. I need to show the tree which should be generated dynamically.
Thanks alot in advance!
Points will be rewarded, Please its urgent!
Cheers,
Darshna.Hi ,
sorry for the late reply... here is the code for onActionLoadchildren .. i am sure you wont understand this.. but lets try...
DATA:
element_parent TYPE REF TO if_wd_context_element,
lv_object_key1 type string,
lv_object_type type string.
DATA:
node_root_entry TYPE REF TO if_wd_context_node,
elem_root_entry TYPE REF TO if_wd_context_element,
stru_root_entry TYPE if_structure_view_new=>element_root_entry ,
item_valid_from LIKE stru_root_entry-valid_from,
item_plant LIKE stru_root_entry-plant,
item_equi_key LIKE stru_root_entry-equi_key,
item_object_key LIKE stru_root_entry-object_key,
item_object_type TYPE string,
item_path TYPE string,
item_parent_path TYPE string,
context_node TYPE REF TO if_wd_context_node,
root_entry TYPE if_structure_view_new=>element_selected_entry.
l_ref_componentcontroller TYPE REF TO ig_componentcontroller.
DATA:
node_root_info TYPE REF TO if_wd_context_node,
elem_root_info TYPE REF TO if_wd_context_element,
stru_root_info TYPE if_structure_view_new=>element_root_info .
DATA:
element TYPE REF TO if_wd_context_element,
node_selected_entry TYPE REF TO if_wd_context_node,
elem_selected_entry TYPE REF TO if_wd_context_element.
DATA:
ls_hier_return TYPE rplm_ts_struc_elements,
lt_hier_return TYPE TABLE OF rplm_ts_struc_elements,
ls_hier_return_temp TYPE rplm_ts_struc_elements,
lt_hier_return_temp TYPE TABLE OF rplm_ts_struc_elements,
ls_hier_level TYPE rplm_ts_hier_level,
lt_hier_level TYPE TABLE OF rplm_ts_hier_level,
ls_hier_return_sort TYPE rplm_mt_ts_hier,
lt_hier_return_sort TYPE TABLE OF rplm_mt_ts_hier.
DATA:
temp_hier_level TYPE if_structure_view_new=>element_hier_level,
lt_hier_temp TYPE TABLE OF if_structure_view_new=>element_hier_level,
lt_temp TYPE TABLE OF if_structure_view_new=>element_hier_level.
DATA:
lc_path TYPE string,
lv_object_key TYPE string.
DATA:
lv_hier_lines TYPE i.
DATA:
node_entries TYPE REF TO if_wd_context_node,
node_sub_entries TYPE REF TO if_wd_context_node,
elem_sub_entries TYPE REF TO if_wd_context_element,
stru_sub_entries TYPE if_structure_view_new=>element_sub_entries .
TYPES: BEGIN OF ls_hier_type, "structure for Hierarchy table
object(31) TYPE c, "Objectkey
predecessor(31) TYPE c, "Objectkey Predecessor
data(2000) TYPE c, "Data container
level TYPE i, "level of object in tree
successors(1) TYPE c, "Object has successors: YES/NO/U
display(1) TYPE c, "Object is displayed: YES/NO
selected(1) TYPE c, "Object is selected/marked: YES/NO
index_predec LIKE sy-tabix, "Index predecessor
strno TYPE ilom_strno,"External number for func. loc.
"in BOMs used for top object
END OF ls_hier_type.
DATA:
ls_hier TYPE ls_hier_type,
lt_hier TYPE TABLE OF ls_hier_type WITH DEFAULT KEY,
lt_mat_hier TYPE TABLE OF ls_hier_type WITH DEFAULT KEY.
" For retrieving Material Data Heirarchy
DATA:
lh_stpo_tab TYPE TABLE OF rihstpx ,
lwa_stpo_tab LIKE LINE OF lh_stpo_tab,
check_menge TYPE string ,
check_meins TYPE string ,
lwa_mat_hier LIKE LINE OF lt_mat_hier ,
lt_dup_mat_hier LIKE lt_mat_hier,
lv_len TYPE i,
lv_len_temp TYPE i .
DATA:
lv_equnr TYPE equi-equnr,
lv_tplnr TYPE iflo-tplnr,
lv_matnr TYPE mast-matnr.
DATA:
lv_cnt TYPE i,
lv_index TYPE i.
DATA:
lv_path TYPE string,
lv_parent_path TYPE string,
pos TYPE string,
separator TYPE c VALUE '.',
max_level TYPE i,
temp_level TYPE i,
counter TYPE i VALUE 1.
TYPES: BEGIN OF ls_pred_type, "structure for Hierarchy table
parent(31) TYPE c, "Objectkey Predecessor
path(2000) TYPE c, "Data container
index_predec LIKE sy-tabix, "Index predecessor
END OF ls_pred_type.
DATA:
ls_pred TYPE ls_pred_type,
lt_pred TYPE TABLE OF ls_pred_type WITH DEFAULT KEY.
DATA:
lv_int_obj_key TYPE string,
obj_len TYPE i,
lv_funcloc_ext TYPE ilom_strno,
lv_funcloc TYPE itob-tplnr.
DATA:
lv_level TYPE i,
lv_temp TYPE i,
lt_path_entries TYPE string_table.
DATA:
node_general TYPE REF TO if_wd_context_node,
elem_general TYPE REF TO if_wd_context_element,
stru_general TYPE if_structure_view_new=>element_general ,
item_collapse_visibility LIKE stru_general-collapse_visibility.
DATA:
elem_context TYPE REF TO if_wd_context_element,
stru_context TYPE if_structure_view_new=>element_context ,
item_expand_all LIKE stru_context-expand_all.
lv_path = path.
Get Element whose children shall be loaded
element_parent = wd_context->path_get_element( lv_path ).
element_parent->get_attribute(
EXPORTING
name = `OBJECT_KEY`
IMPORTING
value = LV_object_key ).
element_parent->get_attribute(
EXPORTING
name = `OBJECT_TYPE`
IMPORTING
value = lv_object_type ).
node_root_entry = wd_context->get_child_node( name = wd_this->wdctx_root_entry ).
get element via lead selection
elem_root_entry = node_root_entry->get_element( ).
get single attribute
elem_root_entry->get_attribute(
EXPORTING
name = `VALID_FROM`
IMPORTING
value = item_valid_from ).
elem_root_entry->get_attribute(
EXPORTING
name = `PLANT`
IMPORTING
value = item_plant ).
item_object_type = lv_object_type.
if lv_object_type eq 'EQUI'.
item_object_key = ''.
item_equi_key = lv_object_key.
elseif lv_object_type eq 'FUNCLOC'.
item_object_key = lv_object_key.
item_equi_key = ''.
ELSE.
lv_matnr = lv_object_key.
For BOM, material and Assembly
endif.
IF item_object_type EQ 'EQUI'.
lv_equnr = lv_object_key.
ELSEif item_object_type eq 'FUNCLOC'.
lv_tplnr = lv_object_key.
ELSE.
LV_MATNR = lv_object_key.
exit.
ENDIF.
CALL FUNCTION 'PM_HIERARCHY_CALL'
EXPORTING
datum = item_valid_from
equnr = lv_equnr
tplnr = lv_tplnr
matnr = lv_matnr
levdo = '99'
levup = '00'
sanin = 'X'
select_equi = 'X'
select_iflo = 'X'
select_stpo = 'X'
selmod = 'D'
stkkz = ''
werks = item_plant
with_equi = 'X'
with_equi_hier = 'X'
with_iflo_hier = 'X'
with_btyp = 'X'
with_mara = 'X'
with_ibase_hier = ''
capid = ''
emeng = 0
IMPORTING
et_hier = lt_hier
EXCEPTIONS
no_hierarchy = 1
no_object_defined = 2
no_selection = 3
no_valid_equnr = 4
no_valid_matnr = 5
no_valid_selmod = 6
no_valid_tplnr = 7
OTHERS = 8.
LOOP AT lt_hier INTO ls_hier.
ls_hier_return-object_key = ls_hier-object.
ls_hier_level-object_key = ls_hier-object.
ls_hier_level-predecessor = ls_hier-predecessor.
lv_len = strlen( ls_hier-object ).
IF lv_len GT 1.
lv_len_temp = lv_len - 1.
ELSEIF
lv_len_temp = lv_len.
ENDIF.
ls_hier_level-level = ls_hier-level.
IF ls_hier-object(1) = 'T'.
ls_hier_return-icon = 'ICON_TECHNICAL_PLACE'.
ls_hier_return-object_type = 'FUNCLOC'.
IF ls_hier-successors = 'Y'.
ls_hier_return-is_leaf = abap_false.
ls_hier_return-is_expanded = abap_false.
ls_hier_return-children_loaded = abap_true.
ELSE.
ls_hier_return-is_leaf = abap_true.
ls_hier_return-is_expanded = abap_true.
ls_hier_return-children_loaded = abap_true.
ENDIF.
ELSEIF ls_hier-object(1) = 'E'.
ls_hier_return-icon = 'ICON_EQUIPMENT'.
ls_hier_return-object_type = 'EQUI'.
IF ls_hier-successors = 'Y'.
ls_hier_return-is_leaf = abap_false.
ls_hier_return-is_expanded = abap_false.
ls_hier_return-children_loaded = abap_true.
ELSE.
ls_hier_return-is_leaf = abap_true.
ls_hier_return-is_expanded = abap_true.
ls_hier_return-children_loaded = abap_true.
ENDIF.
ELSEIF ls_hier-object+lv_len_temp(1) = 'M'.
ls_hier_return-icon = 'ICON_MATERIAL'.
ls_hier_return-object_type = 'MATERIAL'.
IF ls_hier-successors = 'Y'.
ls_hier_return-is_leaf = abap_false.
ls_hier_return-is_expanded = abap_false.
ls_hier_return-children_loaded = abap_false.
ELSE.
ls_hier_return-is_leaf = abap_true.
ls_hier_return-is_expanded = abap_true.
ls_hier_return-children_loaded = abap_true.
ENDIF.
ELSEIF ls_hier-object+lv_len_temp(1) = 'X'.
ls_hier_return-icon = 'ICON_SUPPLY_AREA'.
ls_hier_return-object_type = 'MATBOM'.
IF ls_hier-successors = 'Y'.
ls_hier_return-is_leaf = abap_false.
ls_hier_return-is_expanded = abap_false.
ls_hier_return-children_loaded = abap_false.
ELSE.
ls_hier_return-is_leaf = abap_true.
ls_hier_return-is_expanded = abap_true.
ls_hier_return-children_loaded = abap_true.
ENDIF.
ELSEIF ls_hier-object+lv_len_temp(1) = 'A'.
ls_hier_return-icon = 'ICON_MATERIAL_REVISION'.
ls_hier_return-object_type = 'MATERIAL'.
IF ls_hier-successors = 'Y'.
ls_hier_return-is_leaf = abap_false.
ls_hier_return-is_expanded = abap_false.
ls_hier_return-children_loaded = abap_false.
ELSE.
ls_hier_return-is_leaf = abap_true.
ls_hier_return-is_expanded = abap_true.
ls_hier_return-children_loaded = abap_true.
ENDIF.
ENDIF.
*IF ls_hier-predecessor EQ item_object_key OR ls_hier-object EQ item_object_key.
APPEND ls_hier_return TO lt_hier_return.
APPEND ls_hier_level TO lt_hier_level.
*ENDIF.
CLEAR lv_len.
CLEAR lv_len_temp.
ENDLOOP.
lt_hier_return_temp = lt_hier_return.
DESCRIBE TABLE lt_hier LINES lv_hier_lines.
IF lv_hier_lines EQ 0.
elem_selected_entry = wd_context->path_get_element( '1.ENTRIES.1' ).
Get children node
elem_selected_entry->set_attribute(
value = abap_true
name = 'IS_LEAF' ).
ENDIF.
*************************************Deleting Now***********
SORT lt_hier_level BY level DESCENDING.
LOOP AT lt_hier_level INTO ls_hier_level.
max_level = ls_hier_level-level.
EXIT.
ENDLOOP.
SORT lt_hier_level BY level ASCENDING.
LOOP AT lt_hier_level INTO ls_hier_level WHERE level EQ 0.
ls_hier_level-path = '1.ENTRIES.1'.
ls_hier_level-parent_path = '1.ENTRIES.1'.
MODIFY lt_hier_level FROM ls_hier_level.
ENDLOOP.
************************New design to Generate Path and Parent path
lv_cnt = 0.
temp_level = 1.
SORT lt_hier_level BY object_key ASCENDING.
LOOP AT lt_hier_level INTO ls_hier_level WHERE level EQ 1.
lv_cnt = lv_cnt + 1.
lv_parent_path = '1.ENTRIES.1'.
ls_hier_level-parent_path = lv_parent_path.
pos = lv_cnt.
CONCATENATE lv_parent_path separator 'SUB_ENTRIES' separator pos INTO lv_path.
ls_hier_level-path = lv_path.
MODIFY lt_hier_level FROM ls_hier_level.
ENDLOOP.
temp_level = 1.
lv_cnt = 0.
*********************Need to call this for each level ***************************
WHILE temp_level LT max_level.
CLEAR lt_pred.
CLEAR ls_pred.
LOOP AT lt_hier_level INTO ls_hier_level WHERE level EQ temp_level.
ls_pred-parent = ls_hier_level-object_key.
ls_pred-path = ls_hier_level-path.
APPEND ls_pred TO lt_pred.
ENDLOOP.
SORT lt_pred BY parent.
DELETE ADJACENT DUPLICATES FROM lt_pred.
LOOP AT lt_pred INTO ls_pred.
lv_cnt = 0.
LOOP AT lt_hier_level INTO ls_hier_level WHERE predecessor EQ ls_pred-parent.
lv_cnt = lv_cnt + 1.
lv_parent_path = ls_pred-path.
ls_hier_level-parent_path = lv_parent_path.
lv_path = ''.
pos = lv_cnt.
CONCATENATE lv_parent_path separator 'SUB_ENTRIES' separator pos INTO lv_path.
ls_hier_level-path = lv_path.
MODIFY lt_hier_level FROM ls_hier_level.
ENDLOOP.
ENDLOOP.
temp_level = temp_level + 1.
ENDWHILE.
LOOP AT lt_hier_level INTO ls_hier_level.
LOOP AT lt_hier_return INTO ls_hier_return.
IF ls_hier_level-object_key = ls_hier_return-object_key.
MOVE-CORRESPONDING ls_hier_level TO ls_hier_return.
MODIFY lt_hier_return FROM ls_hier_return.
ENDIF.
ENDLOOP.
ENDLOOP.
SORT lt_hier_return BY path ASCENDING.
**************************Delete the extra first character returned by PM_HIERARCHY_CALL******
LOOP AT lt_hier_return INTO ls_hier_return.
IF ls_hier_return-object_key(1) = 'T'.
SHIFT ls_hier_return-object_key BY 1 PLACES.
lv_object_key = ls_hier_return-object_key.
lv_funcloc_ext = lv_object_key.
CALL FUNCTION 'CONVERSION_EXIT_TPLNR_OUTPUT'
EXPORTING
input = lv_funcloc_ext
IMPORTING
output = lv_funcloc.
lv_int_obj_key = lv_funcloc.
ls_hier_return-object_key = lv_int_obj_key.
ELSEIF ls_hier_return-object_key(1) = 'E'.
SHIFT ls_hier_return-object_key BY 1 PLACES.
lv_object_key = ls_hier_return-object_key.
obj_len = strlen( lv_object_key ).
IF obj_len GE 18.
lv_object_key = lv_object_key+0(18).
ENDIF.
wd_comp_controller->conv_ext_2_int(
EXPORTING
iv_object_key_ext = lv_object_key " String
iv_object_type = 'EQUI' " String
IMPORTING
ev_object_key = lv_int_obj_key " String
SHIFT lv_int_obj_key LEFT DELETING LEADING '0'.
ls_hier_return-object_key = lv_int_obj_key.
ELSE.
SHIFT ls_hier_return-object_key BY 1 PLACES.
lv_object_key = ls_hier_return-object_key.
obj_len = strlen( lv_object_key ).
IF obj_len GE 18.
lv_object_key = lv_object_key+0(18).
ENDIF.
SHIFT lv_object_key LEFT DELETING LEADING '0'.
ls_hier_return-object_key = lv_object_key.
ENDIF.
MODIFY lt_hier_return FROM ls_hier_return TRANSPORTING object_key object_key.
ENDLOOP.
LOOP AT lt_hier_level INTO ls_hier_level.
IF ls_hier_level-object_key(1) = 'T'.
SHIFT ls_hier_level-object_key BY 1 PLACES.
lv_object_key = ls_hier_level-object_key.
lv_funcloc_ext = lv_object_key.
CALL FUNCTION 'CONVERSION_EXIT_TPLNR_OUTPUT'
EXPORTING
input = lv_funcloc_ext
IMPORTING
output = lv_funcloc.
lv_int_obj_key = lv_funcloc.
ls_hier_level-object_key = lv_int_obj_key.
ELSEIF ls_hier_level-object_key(1) = 'E'.
SHIFT ls_hier_level-object_key BY 1 PLACES.
lv_int_obj_key = ls_hier_level-object_key.
obj_len = strlen( lv_int_obj_key ).
IF obj_len GE 18.
lv_int_obj_key = lv_int_obj_key+0(18).
ENDIF.
wd_comp_controller->conv_ext_2_int(
EXPORTING
iv_object_key_ext = lv_int_obj_key " String
iv_object_type = 'EQUI' " String
IMPORTING
ev_object_key = lv_int_obj_key " String
SHIFT lv_int_obj_key LEFT DELETING LEADING '0'.
ls_hier_level-object_key = lv_int_obj_key.
ELSE.
SHIFT ls_hier_level-object_key BY 1 PLACES.
lv_int_obj_key = ls_hier_level-object_key.
obj_len = strlen( lv_int_obj_key ).
IF obj_len GE 18.
lv_int_obj_key = lv_int_obj_key+0(18).
ENDIF.
SHIFT lv_int_obj_key LEFT DELETING LEADING '0'.
ls_hier_level-object_key = lv_int_obj_key.
ENDIF.
MODIFY lt_hier_level FROM ls_hier_level TRANSPORTING object_key object_key.
ENDLOOP.
*********************Getinfo if root node else call Get_Children_Info to generate the structure as well*******
IF lv_path EQ '1.ENTRIES.1'.
element = wd_context->path_get_element( lv_path ).
navigate from <ENTRIES> to <SUB_ENTRIES> via lead selection
node_sub_entries = element->get_child_node( name = 'SUB_ENTRIES' ).
element->get_attribute( EXPORTING name = 'OBJECT_KEY'
IMPORTING value = item_object_key ).
element->get_attribute( EXPORTING name = `OBJECT_TYPE`
IMPORTING value = item_object_type ).
****************Get Info of Technical Objects*************
wd_comp_controller->get_children_info(
EXPORTING
iv_lt_list = lt_hier_return " Rplm_Tt_Mt_Struc
iv_path = ''
iv_hier_level = lt_hier_level
IMPORTING
ev_lt_full = lt_hier_return " Rplm_Tt_Mt_Struc
Create the strcuture by binding the entries to Node which is bound to the table
element = wd_context->path_get_element( lc_path ).
Get children node
node_sub_entries = element->get_child_node( 'SUB_ENTRIES' ).
CALL METHOD node_sub_entries->bind_table
EXPORTING
new_items = lt_hier_return
set_initial_elements = abap_true.
@TODO handle not set lead selection
IF ( node_entries IS INITIAL ).
ENDIF.
lv_temp = 1.
***************Sort the LT_HIER_TABLE appropriately ******
LOOP AT lt_hier_return INTO ls_hier_return .
MOVE-CORRESPONDING ls_hier_return TO ls_hier_return_sort.
ls_hier_return_sort-path_length = strlen( ls_hier_return_sort-path ).
APPEND ls_hier_return_sort TO lt_hier_return_sort.
ENDLOOP.
SORT lt_hier_return_sort BY path_length ASCENDING path ASCENDING.
CLEAR lt_hier_return.
LOOP AT lt_hier_return_sort INTO ls_hier_return_sort.
MOVE-CORRESPONDING ls_hier_return_sort TO ls_hier_return.
APPEND ls_hier_return TO lt_hier_return.
ENDLOOP.
*wd_comp_controller->gv_master_data = lt_hier_return.
LOOP AT lt_hier_return INTO ls_hier_return.
lv_path = ls_hier_return-path.
lc_path = ls_hier_return-parent_path.
IF lv_path NE '1.ENTRIES.1'.
element = wd_context->path_get_element( lc_path ).
Get children node
node_sub_entries = element->get_child_node( 'SUB_ENTRIES' ).
Now, create the children elements
element->get_attribute( EXPORTING name = 'OBJECT_KEY'
IMPORTING value = ls_hier_level-predecessor ).
Create the strcuture by binding the entries to Node which is bound to the table
CALL METHOD node_sub_entries->bind_structure
EXPORTING
new_item = ls_hier_return
set_initial_elements = abap_false.
ENDIF.
ENDLOOP.
Only when a new level is reached we create one more child node
else we attach our elements to same child node
element = wd_context->path_get_element( item_path ).
Get children node
element->set_attribute(
value = abap_false
name = 'IS_EXPANDED' ).
ENDIF.
navigate from <CONTEXT> to <GENERAL> via lead selection
node_general = wd_context->get_child_node( name = wd_this->wdctx_general ).
get element via lead selection
elem_general = node_general->get_element( ).
get single attribute
elem_general->set_attribute(
name = `COLLAPSE_VISIBILITY`
value = abap_false ).
node_selected_entry = wd_context->get_child_node( name = if_structure_view_new=>wdctx_selected_entry ).
get element via lead selection
elem_selected_entry = node_selected_entry->get_element( ).
get single attribute
elem_selected_entry->set_attribute(
name = `OBJECT_KEY`
value = '' ).
elem_selected_entry->set_attribute(
name = `OBJECT_TYPE`
value = '' ).
get element via lead selection
elem_context = wd_context->get_element( ).
get single attribute
elem_context->set_attribute(
name = `EXPAND_ALL`
value = abap_false ).
wd_this->enable_buttons(
endmethod. -
Is it possible to access elements of a view in implementation class?
Hi,
In the BSP component workbench, is it possible to manipulate elements of a view (listbox, inputfields etc., hardcoded using htmlb tags) in the methods of view implementation class. For example, I have a inputfield which is initially invisible. I want to make it visible when a particular event is triggered. I wish to code this directly in the event handler method. Can anybody provide some pointers?Arun,
As the UI elements (tags) do only exist during rendering phase a direct access from the view controller is not possible - especially not in the forward-oriented way from within an event handler as indicated from you in the posting.
However, it is of course possible to hard-code view layouts; for this approach you can use the BSP view corresponding to the view and code there whatever you like. BSP views can also contain code snippets to achieve dynamic effects. In your example it doesn't look like that you need code at all - you need to preserve the status (visible/ invisible) in a value attribute of a context node and use this value to bind visibility of the input field on the layout.
In CRM 2007, there are two main tag libraries (aka BSP extensions) being used:
- THTMLB (single tags, like input field, button, table, ...)
- CHTMLB (configuration tags; these are available for forms, tables and trees)
You should always use these tag libraries in the first place to assure common look and feel and avoid rendering issues.
Best regards
Peter -
Floated element breaks Design view in Dreamweaver CS3
I've tried searching for this issue but haven't found a fix yet and could use some help.
I am redesigning a site and am adding a fluid box to the page. This floated element breaks Design View in Dreamweaver CS3 but appears correctly in the Firefox, Chrome, and IE. I can get the element to appear correctly in Design View after I make minor changes to the page's HTML or CSS, however it always breaks when I save the file.
I've tried many work-arounds including adding an absoutely defined container div, altering the various div sizes, adding <div class="clear"> before and after the element, to no avail.
Ideally, I would like to have page appear correctly in Design View so that others in my lab can easily update the page (and not come to me with repeated questions!).
I've included screen prints of how it looks in Design View and how it look in Chrome.
THANKS! J
Design Time error:
Web Browser - correct view:I'll try CS4; however my main reason for finding a fix is so that others updating the page (w/ CS3) will be able to do so w/ the WYSIWYG editor that we purchased. We will not be upgrading to CS4 anytime soon either.
Thanks -
List/Enumeration of Elements in a View (WD for Java)
Hello,
How do I get a complete list of all elements in a view at runtime?
I want to dynamically modify 30+ elements, but I don't want to have to code each of them. Is there a way to do this?
Thanks,
MartinMartin,
Try something like this:
static interface IAction
abstract public void execute(IWDUIElement el);
static class CollectElements implements IAction
final private Map _result = new TreeMap();
public Map result() { return Collections.unmodifiableMap(_result); }
public void execute(final IWDUIElement el)
_result.put( el.getId(), el );
void traverse(final IWDView view, final IAction action)
traverse( (IWDUIElementContainer)view.getRootElement(), action );
void traverse(final IWDUIElementContainer container, final IAction action)
action.execute(container);
for (final Iterator i = container.iterateChildren(); i.hasNext(); )
final IWDUIElement el = (IWDUIElement)i.next();
if ( el instanceof IWDUIElementContainer )
traverse( (IWDUIElementContainer)el, action );
else
action.execute( el );
Sample:
final CollectElements selectAll = new CollectElements();
traverse(wdView, selectAll);
/* Now selectAll.result() contains id->element mapping */
This will not collect Table columns, or Tabs in TabStrib, however you can create "dispatching" IAction implementation, that delegates to some custom methods like traverse(IWDTable) or traverse(IWDTabStrip)
Valery Silaev
EPAM Systems
http://www.NetWeaverTeam.com -
Iterate through UI elements in a view
Hi,
I would like to iterate through the UI elements in a view, to read their 'id' values, and populate an arraylist. Could you please suggest how to accomplish this ?
Thanks !Hi,
If ur requirement is just to get the ID's Noufal 's solution should be sufficient.
IWDTransparentContainer t = (IWDTransparentContainer)view.getElement("RootUIElementContainer");
IWDUIElement a[] = t.getChildren();
for(int i =0;i<a.length;i++){
wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess(a<i>.getId());
IWDUIElement i1 = (IWDUIElement)view.getElement(a<i>.getId());
wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess(""+i1.getClass());
If all the elements are created in design time you will know the element IDs and types. So further processing for manipulation of the UI properites will be easy.
But if elements are added dynamically you will be able to get their ID s and the class type. But i wonder if u will be able to proceed further.
Regards
Bharathwaj -
Update the schema for data foundation, business element and business view
Hi All
I am using oracle 11g as backend to develop using crystal reports and I am using Business View Manager as the connection in crystal reports.
Now my issue here is I have created the DC, DF, BE and BV using abc schema but as the request has changed I need to update the schema to xyz as table structure is same in both the schemas.
I was able to successfully update the schema in DC but that is not reflecting in DF, BE and BV as a result of that when I use the updated BV in report report is not run as there was abc.tablename for all tables.
I have searched google but unfortunately unable to find any useful solution for the problem.
Experts please help me to update the new schema connection to DF, BE and BV
I am using Crystal Reports 2008 SP3 and Business Objects 3.1
Thanks for your time.Thanks for your continous assistance Mantu Sahu.....
Unfortunately I can't paste the screenshot aswell... but will try to explain in detail what I am doing...
to the left most part there will be datafoundation name... below that there are tables so what I have done is right click on the table in those options there is no change qualifier or ownere but there is option Set table location. Is this option you are discussing about?
To add more information I am working on Business Objects 2.1 SP0... will this have any impact on the options that are displaying.
Regards
Siva -
The UI element of the view will be desplaying in desable mode
Hi,
I have developed an application which is in the SAP Help Creating an Email Client Using Web Dynpro and Web Services.
Followed as it is steps in that example.
it has deployed without any errors,
but when we run the application its displaying all the UI Elements in disable mode.
could any one help on this,
Thanks & Regards,
Ravinder Jilla.Hi
In supply function you are itself creating an element of node. no need to create it again.
By writing only following code you can create a node element which can enable all UI elements.
// In Supply function
node.addElement(node.create<your node>Element());
Other wise you can also do this in wdDoInit() of view controller
IPrivateView<your View>.I<your node>Element() element = wdContext.create<your node> element();
wdContext.node<your node>().addElement ( element );
this will create an element of your node and enable UI element bound to it.
Try the latter one and let me know the status
Mandeep Virk -
PS elements 6 (folder view)
In PS elemenents 5 I was able to view pictures by folder name. I was unable to do the same in PS elements 6.
Is it possible to organize/view pictures by folder name in PS elements 6? If yes, how?
Thanks
baktooDo Display > Folder Location.
Maybe you are looking for
-
FlexPMD maven plugin no longer useable with Maven due to imcompatible binaries?
I am using Maven 2.2.1 with FlexPMD 1.2 and Flexmojos 3.7.1, with the maven-site-plugin 3.0 I get the following error: [INFO] [site:site {execution: default-site}] [FATAL ERROR] org.apache.maven.plugins.site.SiteMojo#execute() caused a linkage error
-
Retaining Variable Value for Scenario Restart
I have a slave-package where i use many variables for JDBC connection/url/login/passwd and Target File Path - all have been defined as type HISTORIZE My packages are as follows (1) There are many odiSqlUnload steps in the slave-package which uses the
-
DMS (Document Management System) scanning Hardware and Software
Dear everyone We are locking for a DMS system. Requirements are: 1. Document Scanning Hardware and OCR Software. Automated metadata detection. (Documents should automatically be assigned in Sharepoint) 2. Workflow management with Sharepoint and bindi
-
Regd Attachment Download...
Hi All, We are using SAP Integrated ITS 640, basis patch level 18 . We are able to download the attachment by clicking on export button in Display PO (ME23N)transaction.When we directly try to open the attachment by clicking on the file , we are prom
-
I have two different type objects, one refer another, using one to one mapping. At first, I get the parent object, and then I also get the child object, using session.executeQuery, as you know, toplink will get the child object from the cache, as my