Context menu's in Alv Report (Grid)
hello,
what i have done- i have created a ALV report by using the function modlue REUSE_ALV_GRID_DISPLAY.
what i want- When user clicks with Right mouse button on some cell.
context menu should get displayed. a list of menu should appear then user can select one of these options and eventually i'll on user command.
however i know the concept of context menu's and i have created context menu on screen elements in module pool.
but i have no idea whether these menu's can be created on ALV Grid.(simple ALv Grid----not ABAP OOPS)
check the program BCALV_GRID_06, it gives a demo of context menu functionalty,
but it uses cl_gui_alv_grid
Similar Messages
-
Hi,
Im not getting Menu options in ALV report output. Not even default menu options SYSTEM, HELP Its dispalying as <b>????????????????????????????????</b>. Can someone help me regarding this?
Regards,
amalHi Amal,
Check the screen number if you are using a seperate screen and Menu painter.
Thanks and Regards,
Sampath -
hi,
I have written an ABAP report using ALV . We need to add a button to the menu bar of the screen that appears after the report is run, not on the selection screen. And when report is executed user will choose for example STOCK then it has to go to the transaction(QA03).
thanks in advance.
Anu.Hi,
Goto SE41, create a pf-status for your alv report program.
On the next screen, click menu EXTRAS --> click option ADJUST TEMPLATES and select radiobutton LIST VIEWER --> you will get all standard buttons of alv in the pf-status.
Delete the unwanted buttons and also you can add new buttons if reqd.
Activate pf-status --> and apply in alv program.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = v_rep_id " report id
i_callback_pf_status_set = 'PF' " for PF-STATUS
i_callback_user_command = 'USER_COMMAND' " for User-Command
is_layout = wa_layout " for layout
it_fieldcat = it_field " field catalog
it_sort = it_sort " sort info
TABLES
t_outtab = it_final " internal table
EXCEPTIONS
program_error = 1
OTHERS = 2.
*& Form pf
* SUB-ROUTINE PF IS USED TO SET THE PF-STATUS OF THE SCREEN
* ON WHICH THE ALV GRID IS DISPLAYED
* -->RT_EXTAB
FORM pf USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'ZTG_STAT'.
ENDFORM. "pf
*& Form USER_COMMAND
* SUB-ROUTINE USER_COMMAND IS USED TO HANDLE THE USER ACTION
* AND EXECUTE THE APPROPIATE CODE
* -->LV_OKCODE used to capture the function code
* of the user-defined push-buttons
* -->L_SELFIELD text
FORM user_command USING lv_okcode LIKE sy-ucomm l_selfield TYPE slis_selfield.
* assign the function code to variable v_okcode
lv_okcode = sy-ucomm.
* handle the code execution based on the function code encountered
CASE lv_okcode.
* when the function code is STOCK
WHEN 'STOCK'.
SET PARAMETER ID '<param_id>' FIELD '<field_value>'.
CALL TRANSACTION 'QA03' AND SKIP FIRST SCREEN.
ENDCASE.
ENDFORM. "USER_COMMAND
Hope this helps you.
Regards,
Tarun -
Customer defined Context Menu in WD ALV (ABAP)
Hello,
is it possible programming a customer defined context menu for a Web Dynpro ALV (in ABAP)?
The functionality should be as following:
Open Context menu with right mouse click, select something like "display details" and then detail data shall be displayed under the ALV.
Exists a documentation for that?
Thanks and regards,
JosephineWhen you are defining your content attribute at the controller do not try to bring all the value attributes rather provide the dictionary structure and make sure that cordinality is 0...n.
Then as and when you change the dictionary structure you would be able to view the columns corresponding to that.
Make sure that your select stmt is modified accordingly when you are binding it to the context.
Cheers
~ Kumar -
How to Enhance the Context menu in a Web Report
Gurus,
Scenario is to Enhance the Context menu in a Web template with some Custom Values. I found some notes in SAP.HELP but could not get thru it.
If anyone has added some Custom developed menu's in the Context menu, can you let me know as well.
Urgent help would be appreciated as well as rewarded with marks.
Regards
RohitHi Rohit,
I have done this for solution manager with bex integration,
Go TO last part of pdf there it is discussed with screen shot.You need to hav a query go to web template.and use the html tags to insert something into your context menu.
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/ad0a4b07-0301-0010-5095-ef7615676fc0
Please reward points. -
How can I throw the standard function "copy to clipboard"
CL_GUI_ALV_GRID=>MC_FC_LOC_COPY <&LOCAL©>
If I try to throw it with the method
<ref to cl_gui_alv_grid>->set_user_command(
EXPORTING i_ucomm = cl_gui_alv_grid=>mc_fc_loc_copy )
, it doesn't work.
This standard function is a feature of every context menu of an ALV grid control.
It is possible to inactivate it via the method
<ref to cl_gui_alv_grid>->disable_functions
, so it must be the right function code.
I visited that the "application server is working"-logo
(the blue waving-water-picture in the upper right corner of
every SAP GUI window) doesn't move if I use this function via
context menu.
So possibly there is no server-turn-around between the
presentation server an the application server when using this
function. The application server only catches an event
cl_gui_alv_grid_base=>evt_copy_clipboard_failed <34>
on copy malfunction.Hi,
there is a simple method to put something to the clipboad. I have done it a couple of times and it works fine.
Data Definitions:
DATA: BEGIN OF clippboard OCCURS 0,
line(172) TYPE c,
END OF clippboard.
cnt1 type i.
ABAP Example:
refresh clippboard.
append xx_outtab_pos-prodh to clippboard.
CALL METHOD cl_gui_frontend_services=>clipboard_export
IMPORTING
data = clippboard[]
CHANGING
rc = cnt1.
In this example the content of the field xx_outtab_pos-prodh has been put to the clipborad and can be inserted anywhere by pressing Ctrl/V.
If you want to restore it from the clipboard, there is a m
ethod called cl_gui_frontend_services=>clipboard_import. It works the same as the clipboard_export.
Best regards
Peter -
Context Menu in BW Report Iview not opening after upgrade to Portal 7.3
Hi All,
We have a unusual problem that, the Context menu of the BW reports for options like filtering is not opening post Upgrade to Portal 7.3 for End users.
However, with Super Admin role, the Context menu opens for the BW report Iview.
I have tried giving the same permission that the Super Admin Role has on the BW Report Iview to the End users, still no success.
Any idea? Anybody faced same kind of problem?
Please revert for any more info.
BR,
UdayHi Uday,
This is really a shot in the dark since I have not done much with 7.3. Have you checked for UME actions that are assigned to the administrator but not the end user?
Best regards,
Duncan -
Get selected function in a context menu with cl_gui_alv_grid
Hi,
I'm trying to implement a context menu on a alv grid. I defined and implemented a method for the event CONTEXT_MENU_REQUEST to add function codes to context menu. It works ok.
The problem is retrieving the function selected in context menu. I tried to define in the class definition a method for event CONTEXT_MENU_SELECTED (that seems to be the event to use) but i can't implement it because is defined as protected event in CL_GUI_ALV_GRID.
How i can implement a method to catch this event and determine te function code defined in the context menu??
Thanks.
Edited by: Alfredo Pradas on Jan 4, 2008 5:35 PM
Edited by: Alfredo Pradas on Jan 4, 2008 5:36 PM
Edited by: Alfredo Pradas on Jan 4, 2008 5:37 PMThe tool bar isn't the best mechanism to use for selecting Rows etc but should ideally be used for discrete functions like SAVE, UPDATE, DOWNLOAD TO EXCEL etc.
For data manipulation look at ON DATA CHANGED, ON DATA CHANGED FINISHED and DOUBLE CLICK.
Probably the easiest way is to use the double click event
methods on_dubbelklik
for event double_click of cl_gui_alv_grid
importing
!e_row
!e_column
!es_row_no .
methods dubbelklik
importing
!e_row type lvc_s_row
!e_column type lvc_s_col
!es_row_no type lvc_s_roid .
method constructor.
create object grid_container1
exporting
container_name = 'CCONTAINER1'.
create object grid1
exporting
i_parent = grid_container1.
set handler z_object->on_user_command for grid1.
set handler z_object->on_toolbar for grid1.
set handler z_object->handle_data_changed for grid1.
set handler z_object->handle_data_changed_finished for grid1.
set handler z_object->on_dubbelklik for grid1.
call method grid1->register_edit_event
exporting
i_event_id = cl_gui_alv_grid=>mc_evt_enter.
endmethod.
method dubbelklik.
perform dubbelklik in program (caller) if found
using
e_row
e_column
es_row_no.
endmethod.
Now in the application program
when a double click event is done the method calls routine dubbelklik in the calling program
The row / column nr and field name will be passed to your subroutine.
(In my calling class for the grid I make the calling program one of the parameters);
form dubbelklik using
e_row type lvc_s_row
e_column type lvc_s_col
es_row_no type lvc_s_roid.
read table <dyn_table> index e_row into wa_elements.
etc.
where <dyn_table> is my grid data table.
Any comparable method should work.
Cheers
jimbo -
Hi Everyone,
We have done ALV report (grid contains 22 columns which belongs to one ztable) in development and we have transported to production system.
and Now we added one more field i.e. not related to ztable that means external field(23rd field to grid) to Field catalog and sent production,
And that extra column which we added is coming in development and also in test system, When we tried to execute it, the extra field is added in the grid and when come out of the selection screen it is getting short dump(we are getting dump error in standard program) and one more main problem is:
The code has been moved but 'extra field is not showing in ALV grid' in production system what would be the problem? and also when we come out of the selection screen it getting short dump as same in development.
Could anyone help me out in this.
Thanks in Advance,
~Teena.The code has been moved but 'extra field is not showing in ALV grid' in production system what would be the problem?<b> -->No one can say any thing until unless we are not sure of ur Code , may be check ur layouts of that program ? are u using any default varints ?</b>
and also when we come out of the selection screen it getting short dump as same in development.--><b>check ST22 , u will get some idea ? or else paste ST22 here so we can get some idea , IN ST222 search for point from where DUMP OCCURS ( means search for arrow mark</b>
Regards
Prabhu -
Control overlapping and context menu
hi guys,
I have this layout with a Panel, a Tab Container and a Datagrid. Basically the Panel is the parent of the Tab Container, and Tab Container is the parent of the Datagrid. My Datagrid has a context menu on it. But what happened was I can't get the context menu to show up because if I do right-click on the grid, the context menu from the Panel is what I'm getting, not the context menu I setup on the grid, but If I move the grid outside the panel its working good. Anyone encountered same thing? How will I surpass this overlapping?
Best Regards!Hey Flex, thanks a lot! I should have known this is a bug on Flex 4 Panel right? Thanks for the tip, got it by setting the mouseEnabled=true on the Panel and on the custom Panel Skin as well.
Best Regards! -
Hello ABAP experts,
I have developed a program which shows some output in ALV grid (CL_GUI_ALV_GRID). I don't want the user to play with columns and rows of grid, so I have removed toolbar using following:
LVC_S_LAYO-NO_TOOLBAR
I have noticed, still user can hide or show columns and delete rows by right clicking on the grid. I want to disable right click or context menu. I am unable to get any hint so far.
I appreciate for some good solution.
Thanks,
Waqas RashidHi,
Just as stated by Max you can use the event 'CONTEXT_MENU_REQUEST' in the class 'CL_GUI_ALV_GRID'. In fact I just tried out calling the event. I set the handler for the event 'CONTEXT_MENU_REQUEST'. And then in the implementation I just called the clear method. Example is below.
class lcl_events_split definition.
public section.
methods:
CONTEXT_MENU_REQUEST for event CONTEXT_MENU_REQUEST
of cl_gui_alv_grid importing E_OBJECT.
endclass. "lcl_events_split DEFINITION
class lcl_events_split implementation.
method CONTEXT_MENU_REQUEST.
e_object->CLEAR( ). "THIS SHOULD STOP THE RIGHT CLICK MENU BAR
endmethod.
endclass.
CREATE OBJECT O_CC
EXPORTING CONTAINER_NAME = 'CC_ALV'.
CREATE OBJECT O_ALV
EXPORTING I_PARENT = O_CC.
And before you call you grid for display below code is required.
data: ls_spl_events type ref to lcl_events_split. "Event Handler class
set handler ls_spl_events->CONTEXT_MENU_REQUEST for O_ALV.
CALL METHOD O_ALV->SET_TABLE_FOR_FIRST_DISPLAY
CHANGING
IT_OUTTAB = T_MARA
IT_FIELDCATALOG = LS_FIELDCATALOG.
Hope this helps ......
Regards,
Imran,
Edited by: Mujtaba Imran on Sep 11, 2011 7:34 PM -
ALV: Right Button Click and Context Menu
Hi Experts,
I have to implement an ALV which should act on a right button click and show a context menu.
Is this possible? I found only events for "on_double_click" or "on_link_click" and is it possible to show a context menu?
Thanks in advanced.
Best regards,
MarkusHello Markus
The relevant events are:
CONTEXT_MENU_REQUEST
USER_COMMAND
Have a look at my sample report ZUS_SDN_ALV_CONTEXT_MENU_1.
*& Report ZUS_SDN_ALV_CONTEXT_MENU_1
*& <a class="jive_macro jive_macro_thread" href="" __jive_macro_name="thread" modifiedtitle="true" __default_attr="910750"></a>
*& Thread: ALV: Right Button Click and Context Menu
*& Flow logic of screen 100 (no screen elements; ok_code = GD_OKCODE)
*& PROCESS BEFORE OUTPUT.
*& MODULE STATUS_0100.
*& PROCESS AFTER INPUT.
*& MODULE USER_COMMAND_0100.
REPORT zus_sdn_alv_context_menu_1.
DATA:
gd_okcode TYPE ui_func,
go_docking TYPE REF TO cl_gui_docking_container,
go_splitter TYPE REF TO cl_gui_splitter_container,
go_cell_top TYPE REF TO cl_gui_container,
go_cell_bottom TYPE REF TO cl_gui_container,
go_grid1 TYPE REF TO cl_gui_alv_grid,
go_grid2 TYPE REF TO cl_gui_alv_grid,
gs_layout TYPE lvc_s_layo.
DATA:
gt_knb1 TYPE STANDARD TABLE OF knb1,
gt_knvv TYPE STANDARD TABLE OF knvv.
* CLASS lcl_eventhandler DEFINITION
CLASS lcl_eventhandler DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
handle_double_click FOR EVENT double_click OF cl_gui_alv_grid
IMPORTING
e_row
e_column
es_row_no
sender,
handle_context_menu_request FOR EVENT context_menu_request
OF cl_gui_alv_grid
IMPORTING
e_object
sender,
handle_user_command FOR EVENT user_command OF cl_gui_alv_grid
IMPORTING
e_ucomm
sender.
ENDCLASS. "lcl_eventhandler DEFINITION
* CLASS lcl_eventhandler IMPLEMENTATION
CLASS lcl_eventhandler IMPLEMENTATION.
METHOD handle_double_click.
* define local data
DATA:
ls_knb1 TYPE knb1.
CHECK ( sender = go_grid1 ).
READ TABLE gt_knb1 INTO ls_knb1 INDEX e_row-index.
CHECK ( ls_knb1-kunnr IS NOT INITIAL ).
CALL METHOD go_grid1->set_current_cell_via_id
EXPORTING
* IS_ROW_ID =
* IS_COLUMN_ID =
is_row_no = es_row_no.
* Triggers PAI of the dynpro with the specified ok-code
CALL METHOD cl_gui_cfw=>set_new_ok_code( 'DETAIL' ).
ENDMETHOD. "handle_double_click
METHOD handle_context_menu_request.
* define local data
DATA: lt_fcodes TYPE ui_funcattr,
ls_fcode TYPE uiattentry,
ls_func TYPE ui_func,
lt_func TYPE ui_functions.
" Inactivate all standard functions
CALL METHOD e_object->get_functions
IMPORTING
fcodes = lt_fcodes.
LOOP AT lt_fcodes INTO ls_fcode.
ls_func = ls_fcode-fcode.
APPEND ls_func TO lt_func.
ENDLOOP.
e_object->disable_functions( lt_func ).
" Add new functions
e_object->add_separator( ).
CALL METHOD e_object->add_function
EXPORTING
fcode = 'XD03'
text = 'Call Transaction'.
CALL METHOD e_object->add_function
EXPORTING
fcode = 'DETAILS'
text = 'Display Details'.
ENDMETHOD. "handle_context_menu_request
METHOD handle_user_command.
* define local data
DATA:
ls_knb1 TYPE knb1,
ls_row TYPE lvc_s_row,
ls_col TYPE lvc_s_col.
" NOTE: in case of CL_GUI_ALV_GRID the functions of a context menu
" are handled in method USER_COMMAND.
CHECK ( e_ucomm = 'XD03' OR
e_ucomm = 'DETAILS' ).
CALL METHOD sender->get_current_cell
IMPORTING
es_row_id = ls_row
es_col_id = ls_col.
CASE e_ucomm.
WHEN 'XD03'.
READ TABLE gt_knb1 INTO ls_knb1 INDEX ls_row-index.
SET PARAMETER ID 'BUK' FIELD ls_knb1-bukrs.
SET PARAMETER ID 'KUN' FIELD ls_knb1-kunnr.
CALL TRANSACTION 'XD03' AND SKIP FIRST SCREEN.
WHEN 'DETAILS'.
" NOTE: only for the sake of simplicity the event handler method
" is called
CALL METHOD lcl_eventhandler=>handle_double_click
EXPORTING
e_row = ls_row
sender = go_grid1.
WHEN OTHERS.
ENDCASE.
ENDMETHOD. "handle_user_command
ENDCLASS. "lcl_eventhandler IMPLEMENTATION
START-OF-SELECTION.
SELECT * FROM knb1 INTO TABLE gt_knb1
WHERE bukrs = '1000'.
* Create docking container
CREATE OBJECT go_docking
EXPORTING
parent = cl_gui_container=>screen0
ratio = 90
EXCEPTIONS
OTHERS = 6.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Create splitter container
CREATE OBJECT go_splitter
EXPORTING
parent = go_docking
rows = 2
columns = 1
* NO_AUTODEF_PROGID_DYNNR =
* NAME =
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Get cell container
CALL METHOD go_splitter->get_container
EXPORTING
row = 1
column = 1
RECEIVING
container = go_cell_top.
CALL METHOD go_splitter->get_container
EXPORTING
row = 2
column = 1
RECEIVING
container = go_cell_bottom.
* Create ALV grids
CREATE OBJECT go_grid1
EXPORTING
i_parent = go_cell_top
EXCEPTIONS
OTHERS = 5.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Set event handler
SET HANDLER:
lcl_eventhandler=>handle_double_click FOR go_grid1,
lcl_eventhandler=>handle_context_menu_request FOR go_grid1,
lcl_eventhandler=>handle_user_command FOR go_grid1.
CREATE OBJECT go_grid2
EXPORTING
i_parent = go_cell_bottom
EXCEPTIONS
OTHERS = 5.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Display data
gs_layout-grid_title = 'Customers'.
CALL METHOD go_grid1->set_table_for_first_display
EXPORTING
i_structure_name = 'KNB1'
is_layout = gs_layout
CHANGING
it_outtab = gt_knb1
EXCEPTIONS
OTHERS = 4.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
gs_layout-grid_title = 'Customers Details (Sales Areas)'.
CALL METHOD go_grid2->set_table_for_first_display
EXPORTING
i_structure_name = 'KNVV'
is_layout = gs_layout
CHANGING
it_outtab = gt_knvv " empty !!!
EXCEPTIONS
OTHERS = 4.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Link the docking container to the target dynpro
CALL METHOD go_docking->link
EXPORTING
repid = syst-repid
dynnr = '0100'
* CONTAINER =
EXCEPTIONS
OTHERS = 4.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* NOTE: dynpro does not contain any elements
CALL SCREEN '0100'.
* Flow logic of dynpro (does not contain any dynpro elements):
*PROCESS BEFORE OUTPUT.
* MODULE STATUS_0100.
*PROCESS AFTER INPUT.
* MODULE USER_COMMAND_0100.
END-OF-SELECTION.
*& Module STATUS_0100 OUTPUT
* text
MODULE status_0100 OUTPUT.
SET PF-STATUS 'STATUS_0100'. " contains push button "DETAIL"
* SET TITLEBAR 'xxx'.
* Refresh display of detail ALV list
CALL METHOD go_grid2->refresh_table_display
* EXPORTING
* IS_STABLE =
* I_SOFT_REFRESH =
EXCEPTIONS
OTHERS = 2.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
* text
MODULE user_command_0100 INPUT.
CASE gd_okcode.
WHEN 'BACK' OR
'END' OR
'CANC'.
SET SCREEN 0. LEAVE SCREEN.
* User has pushed button "Display Details"
WHEN 'DETAIL'.
PERFORM entry_show_details.
WHEN OTHERS.
ENDCASE.
CLEAR: gd_okcode.
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Form ENTRY_SHOW_DETAILS
* text
* --> p1 text
* <-- p2 text
FORM entry_show_details .
* define local data
DATA:
ld_row TYPE i,
ls_knb1 TYPE knb1.
CALL METHOD go_grid1->get_current_cell
IMPORTING
e_row = ld_row.
READ TABLE gt_knb1 INTO ls_knb1 INDEX ld_row.
CHECK ( syst-subrc = 0 ).
SELECT * FROM knvv INTO TABLE gt_knvv
WHERE kunnr = ls_knb1-kunnr.
ENDFORM. " ENTRY_SHOW_DETAILS
Regards
Uwe -
Hi,
Does anyone know how to create a context menu (right click on line or field) in the new ALV object model (class CL_SALV_TABLE)?
Thanks in advance
Keld Gregersen
PS: In the past we could use event CONTEXT_MENU_REQUEST in class CL_GUI_ALV_GRID, so it must be possibleI don't think there's "any such animal" in the new class. I'm not 100% certain however but the new class is only useful for fairly simple display only type grids.
There's no edit capability either.
I'd stick with cl_gui_alv_grid until there's some decent extra functionality in the cl_salv_table class.
It's fine for quick "bog standard" displays as it doesn't need a field catalog or any screens to be created by the user or developer - but you pay a price for that in limited fnctionality.
Cheers
jimbo -
How to create Context Menu for Full Screen ALV
Dear Experts,
Please tell me the procedure to create Context Menu for ALV Grid (full screen ALV using SLIS ).
Regards
ArnabHi,
Check the demo program BCALV_GRID_06 -
2.1.1 Problem with User Defined Reports with actions on the context menu
I use the User Defined Reports quite a lot, and export and publish these to other members of the team as Shared Reports. I'm also quite disappointed that there seems to be no further development in this area of SQL Developer.
One of the totally undocumented features of User Defined Reports is the ability to attach actions to a context menu, and pass data from the grid to a procedure, for example. Copying, then exporting the sessions report (from All Reports -> Data Dictionary Reports -> Database Administration -> Sessions) exposes the XML for adding actions to the context menu. The snippet for killing a session looks like this:
<item reload="true" reloadparent="false" removeFromParent="false">
<title>Kill Session</title>
<prompt type="confirm" >
<label>Kill Session?</label>
<default><![CDATA[]]></default>
<value><![CDATA[]]></value>
</prompt>
<sql><![CDATA[ALTER SYSTEM KILL SESSION '#SID#, #SERIAL#' IMMEDIATE]]></sql>
<help>Kill the selected session.</help>
</item>So to add this type of functionality to your own user defined reports, you need to export the report, edit the XML, and import it again. It seems to work fine to add this to the master reports, but if you add an <item> element to the child reports, the context menu items appear on the master report too, and they are duplicated many times. I'm not sure if the action of exporting the report adds to the number of times the context menu appears.
Warning - if you edit a report using SQL Developer, all the <item> tags are removed. Once you've added actions to a context menu, you can only edit the report by exporting it, modifying the XML and importing it again.
Has anyone else seen this behavior? Have you found a work-around?
To the SQL Developer team: Are there any plans to allow the adding of user defined context menu items to reports using the GUI in the near future?You're right the context menu needs a GUI desperately. You can request this at the SQL Developer Exchange, so other users can vote and add weight for possible future implementation.
Regards,
K.
Maybe you are looking for
-
Add new field infotype "z" in logical database selection screen pnp
Can add new field infotype "z" in logical database selection screen pnp I could explain how to realize Thanks
-
I can't read the notes/edits/etc. in reader
I have a Mac with the latest acrobat reader. My brother was editing my work. He edited my work and sent me back the pdf with his comments and edits. He left messages in there. I can't see them. What gives?
-
FRM-10221: Cannot read file MAIN_MENU
FRM-10221: Cannot read file MAIN_MENU
-
Dear friends, My PC crashed before i could check-in an activity.Now when i login from another system i am unable to check out the same DC .It said due to writeability of some objects and i unchecked the "read only "property also.But it was directly g
-
I have a request to create a Function Module that will be assigned to an Action Box, which when executed will copy long text for Quality Notification tasks. I have the module created and working, but after my code is executed a runtime error happens