From 541b623cacd3100ec5a44744a646d4b2336d9528 Mon Sep 17 00:00:00 2001 From: sbcgua Date: Mon, 28 Nov 2016 15:47:22 +0200 Subject: [PATCH] drill down to package #450 --- src/zabapgit_definitions.prog.abap | 1 + src/zabapgit_gui_router.prog.abap | 6 +++++- src/zabapgit_page.prog.abap | 5 ++++- src/zabapgit_services_repo.prog.abap | 16 ++++++++++++++++ 4 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/zabapgit_definitions.prog.abap b/src/zabapgit_definitions.prog.abap index cd8261112..a9cee3b0b 100644 --- a/src/zabapgit_definitions.prog.abap +++ b/src/zabapgit_definitions.prog.abap @@ -207,4 +207,5 @@ CONSTANTS: BEGIN OF gc_action, go_settings TYPE STRING VALUE 'go_settings', go_tutorial TYPE STRING VALUE 'go_tutorial', jump TYPE string VALUE 'jump', + jump_pkg TYPE string VALUE 'jump_pkg', END OF gc_action. \ No newline at end of file diff --git a/src/zabapgit_gui_router.prog.abap b/src/zabapgit_gui_router.prog.abap index 53b641069..8f8f05fdb 100644 --- a/src/zabapgit_gui_router.prog.abap +++ b/src/zabapgit_gui_router.prog.abap @@ -101,13 +101,17 @@ CLASS lcl_gui_router IMPLEMENTATION. ev_state = gc_event_state-re_render. " Assume we are on main page " SAP GUI actions - WHEN gc_action-jump. + WHEN gc_action-jump. " Open object editor lcl_html_action_utils=>jump_decode( EXPORTING iv_string = iv_getdata IMPORTING ev_obj_type = ls_item-obj_type ev_obj_name = ls_item-obj_name ). lcl_objects=>jump( ls_item ). ev_state = gc_event_state-no_more_act. + WHEN gc_action-jump_pkg. " Open SE80 + lcl_services_repo=>open_se80( |{ iv_getdata }| ). + ev_state = gc_event_state-no_more_act. + " DB actions WHEN gc_action-db_display OR gc_action-db_edit. " DB Display/Edit ei_page = get_page_db_by_name( iv_name = iv_action iv_getdata = iv_getdata ). diff --git a/src/zabapgit_page.prog.abap b/src/zabapgit_page.prog.abap index 8d99436c1..0f5d31f6f 100644 --- a/src/zabapgit_page.prog.abap +++ b/src/zabapgit_page.prog.abap @@ -137,7 +137,10 @@ CLASS lcl_gui_page_super IMPLEMENTATION. IF iv_show_package = abap_true. ro_html->add( '' ). - ro_html->add( |{ io_repo->get_package( ) }| ). + ro_html->add( '' ). + ro_html->add_anchor( iv_txt = io_repo->get_package( ) + iv_act = |{ gc_action-jump_pkg }?{ io_repo->get_package( ) }| ). + ro_html->add( '' ). ENDIF. ro_html->add( '' ). diff --git a/src/zabapgit_services_repo.prog.abap b/src/zabapgit_services_repo.prog.abap index eb1e2bfc5..0a4858a85 100644 --- a/src/zabapgit_services_repo.prog.abap +++ b/src/zabapgit_services_repo.prog.abap @@ -43,6 +43,10 @@ CLASS lcl_services_repo DEFINITION FINAL. IMPORTING iv_key TYPE lcl_persistence_repo=>ty_repo-key RAISING lcx_exception. + CLASS-METHODS open_se80 + IMPORTING iv_package TYPE devclass + RAISING lcx_exception. + ENDCLASS. "lcl_services_repo CLASS lcl_services_repo IMPLEMENTATION. @@ -296,4 +300,16 @@ CLASS lcl_services_repo IMPLEMENTATION. ENDMETHOD. " toggle_favorite. + METHOD open_se80. + + CALL FUNCTION 'RS_TOOL_ACCESS' + EXPORTING + OPERATION = 'SHOW' + IN_NEW_WINDOW = 'X' + OBJECT_NAME = iv_package + OBJECT_TYPE = 'DEVC' + WITH_OBJECTLIST = 'X'. + + ENDMETHOD. " open_se80. + ENDCLASS. "lcl_services_repo \ No newline at end of file