Docking container like in se80

Hi, i have create a docking container like in the left side of se80. the next way is to fill the docking container of my dynpro, can someone give me a example how to handle?

Hello Muhammet
In almost all of my ZUS_SDN... sample report I use docking container, e.g.
alv
I think this report give you an idea how to work with a docking container.
Regards
  Uwe

Similar Messages

  • How can I pass a docking container to a program in a non-simple context?

    Dear colleagues,
    I want to pass a docking container like the one in SE80 to another program.
    The following code works fine:
    REPORT z_moving_dock.
    DATA: cl_docker type REF TO cl_gui_docking_container.
    PARAMETERS: test.
    INITIALIZATION.
      CREATE OBJECT cl_docker EXPORTING no_autodef_progid_dynnr = 'X'.
    END-OF-SELECTION.
      WRITE:/ test.
    But I cannot extend this to my current program. There I sourced out anything related to the GUI into a function group to obey the MVC paradigma. (That's maybe the error in reasoning, but I'm following the book Design Patterns in Object-Oriented ABAP from SAP Press and -- of course -- good and healthy programming style.)
    So it's a function group which knows the dynpros and controls, the main program knows only the data.
    Now I have a docking container like the one in SE80. We have many working older programs and I want to switch to them carrying the docking container with me. I have searched the Demos in SAP, the Online Help, the SAP Library, Books, the Web, this Forum, but none of them goes beyond the simpler examples that always work.
    I tried the LINK method on the docking container. I tried it before calling the new program (btw. by SUBMIT). I tried it afterwards from the called program (via a function module from the aforementioned group -- but the group is tied to the old program context and therefore I am in a new "instance" of it). I tried different values for REPID and DYNNR in LINK. I debugged SE80 -- too complicated!
    If it works well I get the container back when I return to the calling program. If it works badly the container is completely lost.
    Perhaps I should export something to memory?
    But I strongly would prefer not to alter the called programs: In the future I might also want to call a SAP standard program.
    I also didn't find some documentation explaining what is going on in the background so I could figure out in which direction to "think".
    I also tested the following code on SAP R/3 4.7 and SAP ERP 2005 with the same results.
    In the meantime I also created a minimal example. First the triggering report:
    REPORT z_moving_docking_container.
    DATA: g_example TYPE REF TO zcl_moving_docking_container.
    CREATE OBJECT g_example.
    This obviously calls the main class ZCL_MOVING_DOCKING_CONTAINER which has only this constructor:
    METHOD constructor.
      CALL FUNCTION 'Z_SHOW_DYNPRO'.
    ENDMETHOD.
    Normally this class should handle the business logic. Here it only calls this function module. In the appropriate function group, say Z_MOVING_DOCKING_CONTAINER, I have these declarations in the TOP-Include:
    FUNCTION-POOL z_moving_docking_container.
    DATA:
      gv_okcode TYPE ui_func,
      go_docker TYPE REF TO cl_gui_docking_container.
    The function group also contains a dynpro 9000 with this flow logic:
    PROCESS BEFORE OUTPUT.
      MODULE status_9000.
    PROCESS AFTER INPUT.
      MODULE user_command_9000.
    The modules are straightforward:
    MODULE status_9000 OUTPUT.
      SET PF-STATUS '9000'.
      IF go_docker IS INITIAL.
        CREATE OBJECT go_docker
               EXPORTING no_autodef_progid_dynnr = 'X'.
      ENDIF.
    ENDMODULE.
    with at least the function code ONLI defined in PF-status 9000 and
    MODULE user_command_9000 INPUT.
      IF gv_okcode = 'ONLI'.
        SUBMIT z_sample_report AND RETURN.
      ELSE.
        LEAVE PROGRAM.
      ENDIF.
    ENDMODULE.
    The report Z_SAMPLE_REPORT can be any report you like.
    At last the function module contains the following code:
    FUNCTION z_show_dynpro.
    *"*"Lokale Schnittstelle:
      CALL SCREEN 9000.
    ENDFUNCTION.
    As I see this, this is a straightforward application of the working example at the top and the principles of MVC and encapsulation of the dynpro logic (to "avoid" global variables as best as possible).
    Clearly in some sense this is an academic question, but I have built a fairly big application like that up to now ...
    </edit>
    Thanks for reading and contemplating,
    Thomas
    Edited by: Thomas Geiß on Feb 4, 2009 11:03 AM
    Edited by: Thomas Geiß on Feb 4, 2009 11:59 AM
    Edited by: Thomas Geiß on Feb 4, 2009 12:01 PM

    You'll either have to pass the data in as parameters in the applet tags or create a JavaScript tag and have the JavaScript pass it in. If the array is very large then you open a connection between the Applet and a servlet and pass the data that way.

  • Place a Tabstrips Inside Docking Container

    All,
    I have a docking container like the following
    i need to place a tabstrip in the bottom container. I have the following code
    if gc_docking_t is initial.
        create object gc_docking_t
           exporting
             repid     = sy-repid
             dynnr     = '0300'
             extension = 75
             style     = style
             side      = cl_gui_docking_container=>dock_at_top
             metric    = cl_gui_docking_container=>metric_pixel.
      endif.
      if gc_docking_l is initial.
        create object gc_docking_l
          exporting repid = sy-repid
          dynnr = '0300'
          extension = 9999
          side = cl_gui_docking_container=>dock_at_bottom.
      endif.
    I have created a screen 310 with tabstrips inside, how can i call this screen inside this docking container
    Any Info ?

    Hi,
    SCN -Wiki->My Home->Code Gallery->Community Code Gallery->TabStrip in ALV(OOPS)
    Please refer http://wiki.sdn.sap.com/wiki/display/Snippets/TabStripinALV(OOPS)

  • Embedding a screen in a docking container - Is it possible at all??

    I am working on a screen design similar to SE80, where I will be required to display a tree structure in screen say '0100' to the left of the screen and upon node_double_click event, I should be able to bring up another screen '0200' on to the right side with out navigating away from the screen 0100.
    I have a custom control in my initial screen 0100, covering the full area, and I am instantiating the docking container object in the node_double_click handler method of the tree control. I have passed sy-repid and dynpro number '0200' but to no avail.
    The following is the code sample.
          IF docking_right IS INITIAL.
            CREATE OBJECT docking_right
              EXPORTING
                repid     = g_repid
                dynnr     = '0200'
                side      = cl_gui_docking_container=>dock_at_right
                extension = 900.
          ENDIF.
    I have gone through many posts in this forum but none of them have a definitive indication if that can be possible, that is why I had to create this new thread. I will be glad if any of you could let me know if there is way accomplishing this.
    Thanks in advance,
    Raghu.

    Hi Raghu,
    I was specifically interested in exploring the option (if any) of combining conventional controls and the new GUI controls because I am trying to get to a scenario where I should be able create conventional controls like list boxes and buttons dynamically based on user actions. .
    For GUI controls you always need some container which is a "bridge" b/w control created in program and the screen. For standard dialogs you don't need such container. You just place them on the screen. Therefore you can combine these techniques by simply placing a container (which you already have and will use for tree control). The rest of the screen area can be used by standard controls (listoboxes, i/o fields etc). This way standard controls would be statically set, whereas container would store GUI control assinged dynamically in program.
    If, on the other hand, you want both controls and GUI controls be dynamically determined, just keep you container (for GUI control) and create a subscreen area where you dynamically swap different screens. These screen must be set as subscreens and must have statically defined layout, thus only determination of the screen to be displayed is dynamic here.
    Anyhow, there is no way to dynamically set standard controls on the screen. You could, however in turn switch them on/off in PBO (based on certain conditions) but this would require placing all the possible controls and just hiding/showing them. No replacment is then possible, so image empty gaps which this approach would produce.
    Ironically the constructor of docking container supports repid and dynpro for no apparent utility.
    As I said, container is used only to place some GUI control in it and then send this entire package (container+ GUI control) to appropriate place on the screen. That's why in container's constructor there is both repid and dynpro. These only determine where this container should be attached.
    Regards
    Marcin

  • Creating Input Field inside Docking Container bar

    Hello.
    Does anyone know how I can put an input field inside a docking container object ? Just like it appears in SE80.
    I have created a docking container bar, and in one of those bars i want to put a text field.
    Anyone please ?
    Thank you
    EDIT----
    I found how to do this with cl_gui_container_bar_2 and with dynamic documents.
    Edited by: Ricardo Monteiro on Aug 25, 2010 1:30 PM

    Hi,
    Check Program SAPSIMPLE_TREE_CONTEXT_MEN_DEM and check event node_context_menu_request
    Hope this helps you.
    Thanks,
    Prashanth
    Edited by: Prashanth KR on Jun 2, 2009 7:50 AM

  • How to set background color in a docking container?

    Hi guys!
    Is it possible to set a background color for a docking container?
    I don't find any appropriate method to do that.
    Is there actually a way?

    Hi,
    Please refer the below program as a reference for Color using Docking Container Concept.
    REPORT zcuitest_alv_07.
    * Use of colours in ALV grid (cell, line and column)            *
    * Table
    TABLES : mara.
    * Type
    TYPES : BEGIN OF ty_mara,
              matnr         LIKE mara-matnr,
              matkl         LIKE mara-matkl,
              counter(4)    TYPE n,
              free_text(15) TYPE c,
              color_line(4) TYPE c,           " Line color
              color_cell    TYPE lvc_t_scol,  " Cell color
    END OF ty_mara.
    * Structures
    DATA  : wa_mara     TYPE ty_mara,
            wa_fieldcat TYPE lvc_s_fcat,
            is_layout   TYPE lvc_s_layo,
            wa_color    TYPE lvc_s_scol.
    * Internal table
    DATA : it_mara     TYPE STANDARD TABLE OF ty_mara,
           it_fieldcat TYPE STANDARD TABLE OF lvc_s_fcat,
           it_color    TYPE TABLE          OF lvc_s_scol.
    * Variables
    DATA : okcode LIKE sy-ucomm,
           w_alv_grid          TYPE REF TO cl_gui_alv_grid,
           w_docking_container TYPE REF TO cl_gui_docking_container.
    PARAMETERS : p_column AS CHECKBOX,
                 p_line   AS CHECKBOX,
                 p_cell   AS CHECKBOX.
    START-OF-SELECTION.
      PERFORM get_data.
    END-OF-SELECTION.
      PERFORM fill_catalog.
      PERFORM fill_layout.
      CALL SCREEN 2000.
    *&      Module  status_2000  OUTPUT
    *       text
    MODULE status_2000 OUTPUT.
      SET PF-STATUS '2000'.
    ENDMODULE.                 " status_2000  OUTPUT
    *&      Module  user_command_2000  INPUT
    *       text
    MODULE user_command_2000 INPUT.
      DATA : w_okcode LIKE sy-ucomm.
      MOVE okcode TO w_okcode.
      CLEAR okcode.
      CASE w_okcode.
        WHEN 'BACK'.
          LEAVE TO SCREEN 0.
      ENDCASE.
    ENDMODULE.                 " user_command_2000  INPUT
    *&      Module  alv_grid  OUTPUT
    *       text
    MODULE alv_grid OUTPUT.
      IF w_docking_container IS INITIAL.
        PERFORM create_objects.
        PERFORM display_alv_grid.
      ENDIF.
    ENDMODULE.                 " alv_grid  OUTPUT
    *&      Form  create_objects
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM create_objects.
    * Ratio must be included in [5..95]
      CREATE OBJECT w_docking_container
        EXPORTING
          ratio                       = 95
        EXCEPTIONS
          cntl_error                  = 1
          cntl_system_error           = 2
          create_error                = 3
          lifetime_error              = 4
          lifetime_dynpro_dynpro_link = 5
          others                      = 6.
      CREATE OBJECT w_alv_grid
        EXPORTING
          i_parent          = w_docking_container.
    ENDFORM.                    " create_objects
    *&      Form  display_alv_grid
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM display_alv_grid.
      CALL METHOD w_alv_grid->set_table_for_first_display
        EXPORTING
          is_layout                     = is_layout
        CHANGING
          it_outtab                     = it_mara
          it_fieldcatalog               = it_fieldcat
        EXCEPTIONS
          invalid_parameter_combination = 1
          program_error                 = 2
          too_many_lines                = 3
          OTHERS                        = 4.
    ENDFORM.                    " display_alv_grid
    *&      Form  get_data
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM get_data.
      SELECT * FROM mara UP TO 5 ROWS.
        CLEAR : wa_mara-color_line, wa_mara-color_cell.
        MOVE-CORRESPONDING mara TO wa_mara.
        ADD 1                   TO wa_mara-counter.
        MOVE 'Blabla'           TO wa_mara-free_text.
        IF wa_mara-counter = '0002'
        AND p_line = 'X'.
    * Color line
          MOVE 'C410' TO wa_mara-color_line.
        ELSEIF wa_mara-counter = '0004'
        AND p_cell = 'X'.
    * Color cell
          MOVE 'FREE_TEXT' TO wa_color-fname.
          MOVE '5'         TO wa_color-color-col.
          MOVE '1'         TO wa_color-color-int.
          MOVE '1'         TO wa_color-color-inv.
          APPEND wa_color TO it_color.
          wa_mara-color_cell[] = it_color[].
        ENDIF.
        APPEND wa_mara TO it_mara.
      ENDSELECT.
    ENDFORM.                    " get_data
    *&      Form  fill_catalog
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM fill_catalog.
    * Colour code :                                                 *
    * Colour is a 4-char field where :                              *
    *              - 1st char = C (color property)                  *
    *              - 2nd char = color code (from 0 to 7)            *
    *                                  0 = background color         *
    *                                  1 = blue                     *
    *                                  2 = gray                     *
    *                                  3 = yellow                   *
    *                                  4 = blue/gray                *
    *                                  5 = green                    *
    *                                  6 = red                      *
    *                                  7 = orange                   *
    *              - 3rd char = intensified (0=off, 1=on)           *
    *              - 4th char = inverse display (0=off, 1=on)       *
    * Colour overwriting priority :                                 *
    *   1. Line                                                     *
    *   2. Cell                                                     *
    *   3. Column                                                   *
      DATA : w_position TYPE i VALUE '1'.
      CLEAR wa_fieldcat.
      MOVE w_position TO wa_fieldcat-col_pos.
      MOVE 'MATNR'    TO wa_fieldcat-fieldname.
      MOVE 'MARA'     TO wa_fieldcat-ref_table.
      MOVE 'MATNR'    TO wa_fieldcat-ref_field.
      APPEND wa_fieldcat TO it_fieldcat.
      ADD 1 TO w_position.
      CLEAR wa_fieldcat.
      MOVE w_position TO wa_fieldcat-col_pos.
      MOVE 'MATKL'    TO wa_fieldcat-fieldname.
      MOVE 'MARA'     TO wa_fieldcat-ref_table.
      MOVE 'MATKL'    TO wa_fieldcat-ref_field.
    * Color column
      IF p_column = 'X'.
        MOVE 'C610'     TO wa_fieldcat-emphasize.
      ENDIF.
      APPEND wa_fieldcat TO it_fieldcat.
      ADD 1 TO w_position.
      CLEAR wa_fieldcat.
      MOVE w_position TO wa_fieldcat-col_pos.
      MOVE 'COUNTER'  TO wa_fieldcat-fieldname.
      MOVE 'N'        TO wa_fieldcat-inttype.
      MOVE '4'        TO wa_fieldcat-intlen.
      MOVE 'Counter'  TO wa_fieldcat-coltext.
      APPEND wa_fieldcat TO it_fieldcat.
      ADD 1 TO w_position.
      CLEAR wa_fieldcat.
      MOVE w_position  TO wa_fieldcat-col_pos.
      MOVE 'FREE_TEXT' TO wa_fieldcat-fieldname.
      MOVE 'C'         TO wa_fieldcat-inttype.
      MOVE '20'        TO wa_fieldcat-intlen.
      MOVE 'Text'      TO wa_fieldcat-coltext.
      APPEND wa_fieldcat TO it_fieldcat.
    ENDFORM.                    " fill_catalog
    *&      Form  fill_layout
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM fill_layout.
    * Field that identify color line in internal table
      MOVE 'COLOR_LINE' TO is_layout-info_fname.
    * Field that identify cell color in inetrnal table
      MOVE 'COLOR_CELL' TO is_layout-ctab_fname.
    ENDFORM.                    " fill_layout

  • Docking container in a subscreeen

    hy gurus, got an issue on the putting a docking container in a subscreen.
    the subscreen doesn't display.
    I've created a dynpro 202 as subscreen ,
    i've  created a custom container( GO_CONTAINER_OBJECT)  in the dynpro 202.
    in the main dynpro (200)
    i have in the pbo and pai
    pbo
    CALL SUBSCREEN sub_202 INCLUDING 'SAPMZPMCMO' '0202'.
    pai.
    CALL SUBSCREEN sub_202.
    in the pbo of 202 i have.
      MODULE  tree_and_docking.
      MODULE alv_display.
    module tree_and_docking.
    * container for alv-tree
      CREATE OBJECT:
       go_container_object
        EXPORTING
          side      = cl_gui_docking_container=>dock_at_bottom
          repid     = sy-repid
          ratio = '40'
          extension = 250
          dynnr     = '0202',
       go_splitter
          EXPORTING parent = go_container_object
                rows = 1
              columns = 2.
      CALL METHOD:
      go_splitter->set_border
      EXPORTING border = space,
      go_splitter->get_container
      EXPORTING row = 1
      column = 1
      RECEIVING container = dock_sub_cont1,
      go_splitter->set_row_height
      EXPORTING id = 1
      height = '30',
    go_splitter->set_column_width
      EXPORTING id = 1
        width = '20',
      go_splitter->get_container
          EXPORTING row = 1
                column = 2
      RECEIVING container = dock_sub_cont2,
      go_splitter->set_column_width
      EXPORTING id = 2
        width = '100'.
    etc...
    but nothing is displaying when i call the screen.
    Did i miss something?
    Edited by: EBONGUE ANDRE on Oct 5, 2010 5:59 PM

    I guess you can't mix docking container with subscreen. How would that look like (docked at bottom of subscreen's?). No this can't be used like that. Use custom container instead.
    @Uwe
    I got used to this little yellow sign next to your name. How that happens that their take it away from you? I thought SAP Mentor honor is granted forever.
    Regards
    Marcin

  • Docking container and SAP standard transaction

    Hello,
    in one screen I have a tree control container and a docking container. With the tree control container everything is perfect. If the user does a click on a node on the tree in the docking container there should be shown a SAP standard transaction (QA03) with the corresponding data.
    I have not found a possibility to show QA03 or QM03 in a docking container. I also tried it in a splitter container, but I do not know how.
    Can anybody help me?
    Greetings
    Corinna

    Hello Corinna
    There is a simple answer to your question: it is not possible.
    Container can only hold other containers or controls.
    Do not be fooled by the ABAP workbench where we apparently can switch between different transactions (e.g. display a class [SE24], show method coding [SE80], double-click on a DDIC structure [SE11]). The ABAP workbench simply changes the control to be displayed but NOT the transaction (remains always the same).
    Regards
      Uwe

  • Docking container in a screen with others elements.

    Hy yall,
    i'm trying to add a docking container at the bottom of a screen where i have already others elements like subscreen etc...
    The add is ok but the dockingcontainer is pushing on the right all the elements in the dynpro.
    How can i control where the docking starts ( his distance from the top) in other to keep it under the others elements?
    P.s: it's a docking_left.

    Hello Andre
    If you have already elements on the screen I would recommend to use a resizable CUSTOM_CONTROL element on the screen to which you link your docking container.
    Furthermore, if the docking container should dock from the bottom why don't you use DOCKING_BOTTOM and make the width of the docking container huge (to fill the entire screen to the right side)?
    Regards
      Uwe

  • Different screens in docking container...?

    Hi gurus,
    I'll try to explain what I'd like to do....
    I have a dynpro with a docking container, on the left I have a tree where I can choose an activity (e.g.: go to se11, go to se38, go to se16, and so on).
    I would like to run those transaction inside the docking container, without leaving to another screen, is it possible?
    Thank you very much!!!

    Hi,
    I think it is not possible, although your idea is interesting. You must think that we must use Call Transaction XXXX and that means that we´re leaving our current programme in order to execute the called programmed and screen behind transaction XXXX. We cannot use Submit since the instruction is for executable reports only.
    When using the SAP´s main menu, we have to leave the main programme (SAPLSMTR_NAVIGATION, screen 0100) when double clicking a node in the tree. When using a docking container, you must insert either screens or subscreens for displaying your information. You cannot enbed a transaction into this screens since it happens what I´ve explained in my first paragraph.
    If you find a way, let us know.

  • Dock container

    what is dock container in a class?how to create it in a report.

    hi, plz check the following code.wht i have to give in the exporting parameter parent in the below dock container o_docking?and to display the values of this sample internal table?urgent plz.thanx in advance
    code:
    tables:mara.
    DATA:pav1 TYPE REF TO cl_gui_alv_grid.
    data : o_docking type ref to cl_gui_docking_container.
    DATA:BEGIN OF itab OCCURS 0,
         matnr LIKE mara-matnr,
         mtart LIKE mara-mtart,
         matkl LIKE mara-matkl,
    END OF itab.
    PARAMETERS: s_matnr LIKE mara-matnr.
    SELECT matnr mtart matkl FROM mara INTO CORRESPONDING FIELDS OF TABLE
    itab WHERE matnr = s_matnr.
    CREATE OBJECT o_docking
    EXPORTING
       PARENT                      =
       REPID                       =
       DYNNR                       =
       SIDE                        = DOCK_AT_LEFT
       EXTENSION                   = 50
       STYLE                       =
       LIFETIME                    = lifetime_default
       CAPTION                     =
       METRIC                      = 0
       RATIO                       =
       NO_AUTODEF_PROGID_DYNNR     =
       NAME                        =
    EXCEPTIONS
       CNTL_ERROR                  = 1
       CNTL_SYSTEM_ERROR           = 2
       CREATE_ERROR                = 3
       LIFETIME_ERROR              = 4
       LIFETIME_DYNPRO_DYNPRO_LINK = 5
       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 object pav1 exporting i_parent = o_docking.
    CALL METHOD pav1->set_table_for_first_display
      EXPORTING
       I_BUFFER_ACTIVE               =
       I_BYPASSING_BUFFER            =
       I_CONSISTENCY_CHECK           =
        I_STRUCTURE_NAME               = 'mara'
       IS_VARIANT                    =
       I_SAVE                        =
       I_DEFAULT                     = 'X'
       IS_LAYOUT                     =
       IS_PRINT                      =
       IT_SPECIAL_GROUPS             =
       IT_TOOLBAR_EXCLUDING          =
       IT_HYPERLINK                  =
       IT_ALV_GRAPHICS               =
       IT_EXCEPT_QINFO               =
      CHANGING
        it_outtab                     =  itab[]
       IT_FIELDCATALOG               =
       IT_SORT                       =
       IT_FILTER                     =
    EXCEPTIONS
       INVALID_PARAMETER_COMBINATION = 1
       PROGRAM_ERROR                 = 2
       TOO_MANY_LINES                = 3
       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.

  • I/O Field in a Docking Container

    Hii Experts,
    I have created a Docking Container, which i have splitted into two containers. First one should contain ALV, second one should have a couple of i/o fields and pushbuttons placed on it. I have placed the Pushbuttons using Toolbar Class (cl_gui_toolbar). I want to know how to place an i/o field in this container.
    Thanks in Advance,
    rama

    Hi all,
    i have the same problem. I have to create a closing cockpit for FI and i use 4 docking containers, in the upper container (header) i like to place dynamicaly some input fields.
    While sitting in the bathroom i had the idea to load a 2 column (or more) editable ALV into the container.
    In the first line and the first (non editable) column is the field label, in second (editable) column the data can be entered. The changed values i get back via events.
    If i need more paramters, i append more lines in the ALV tables.
    if i need more parameters as i can place in one colum in the upper container, i use 1. col for field label, 2. col for input, 3. col as colored filler, 4. col as field label, 5. col as input value and so on.
      col 1       col 2       col 3  col 4  col 5
      label       value      filler   label   value
    BUKRS
    DE19
    KORKS
    DE01
    PERIO
    005.2009
    RLDNR
    I0
    I will give feetback if my bathroom solution is useabel.
    Kind regards,
    Wolfgang
    Edited by: Wolfgang Boehm on May 15, 2009 11:53 PM

  • Help or tutorials about ABAP UI programming such as Tree and dock container

    Hi,
    I'm looking for help, tutorials or any ressources I can explore to undertsand how to work in ABAP with controls, containers, tree and so on.
    Each time I do a search on help.sap.com, I found help on a detailed object such as tree or docking container but I never found a global view. I would like to understand the big picture, have an averview of all involved concept. For example, if I want the user screen to be splitted in 2 parts, one that will display a tree, the other one that will display "simple" screen painter trees that will change depending on what user choose using the tree on the left. How do I need to proceed ?
    I'm sorry if I have not a more precise question because I don't found where to begin.
    Thanks for help
    Regards
    Morgan

    Hi Morgan,
    You can start going thorugh the concepts from help.sap.com. Have a look at the following link:
    http://help.sap.com/erp2005_ehp_04/helpdata/EN/1b/337930a63011d2bd6b080009b4534c/frameset.htm
    You will get the entire set of Example codes in the Transaction Code : ABAPDOCU.
    You can also look for examples for Dialog Programing in SE38 using the DEMODYNPRO*.
    Have a look at the Package : SLIS. This is a one point of all examples and demo of SAP Control Framework and ALV Functionality.
    Hope this helps.
    Thanks,
    Samantak.

  • I/p parameter field in docking container

    How to get the field parameters in a docking container that shud be able to fetch data from Database ? for eg., in se80 tcode(in left container) we have an i/p field for program/class and another i/p field for their name.....

    Hi,
       You can use the following class cl_gui_textedit, and an object for the same can be created in the docking container.
    data : text type ref to cl_gui_textedit.
    * create the docking container
        CREATE OBJECT docking
                      EXPORTING repid     = repid
                                dynnr     = dynnr
                                side      = docking->dock_at_left
                                extension = 180.
    * create the text container
        CREATE OBJECT text
                      EXPORTING parent = docking.
    for further options look for the class CL_GUI_TEXTEDIT.
    also for reference you can see the BC example RSDEMO_DOCKING_CONTROL.
    Hope this helps.
    Regards,
    Kinshuk

  • Docking container in splitter container?

    Hi forum,
    i would like to generate a view (dynpro) with is seperated in 3 vertical (resizable) areas. I have solved this with the splitter container.
    Now i would like to fill the 3 areas with dynamic content, i. e. different table views. These different contents should be nested in containers, so i can push my predefined containers into the splitter areas. (just the contents the user would like to see...)
    In my opinion, the docking container is the right choise, because i have not to carry about positioning the container at all.
    Now theres a problem in adapting the docking container to the splitter container and i am not sure if it is possible at all?!?
    I try to create the docking object with the splitter object as parent, but the debugger calls a run time error?!?
    CREATE OBJECT docking_container
      EXPORTING
        parent                      = splitter_container
    *    repid                       =
    *    dynnr                       =
    *    side                        = docking_container->dock_at_left
    *    extension                   = 50
    *    style                       =
    *    lifetime                    = lifetime_default
        caption                     = 'MyDock'
    *    metric                      = 0
    *    ratio                       =
    *    no_autodef_progid_dynnr     =
    *    name                        =
      EXCEPTIONS
        cntl_error                  = 1
        cntl_system_error           = 2
        create_error                = 3
        lifetime_error              = 4
        lifetime_dynpro_dynpro_link = 5
        others.
    Can anyone help? Different solutions are also welcome...
    Thanks in advance,
    Dennis

    Jose, thank you.
    Here is my complete code and I cannot find any differences to your example...
    DATA: custom_container TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
            splitter_container TYPE REF TO CL_GUI_SPLITTER_CONTAINER,
            splitter_cont1 type ref to cl_gui_container,
            dock_container TYPE REF TO CL_GUI_DOCKING_CONTAINER.
    * custom container
    * the name 'CUSTOM_CONTROL_BASE' references to the
    * custom control on the main dynpro 100!!!
      CREATE OBJECT custom_container
        EXPORTING
          container_name              = 'CUSTOM_CONTROL_BASE'
        EXCEPTIONS
          cntl_error                  = 1
          cntl_system_error           = 2
          create_error                = 3
          lifetime_error              = 4
          lifetime_dynpro_dynpro_link = 5
          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.
        exit.
      ENDIF.
    * set splitscreen container
      CREATE OBJECT splitter_container
        EXPORTING
          parent            = custom_container
          rows              = 1
          columns           = 3
        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.
        exit.
      ENDIF.
      CALL METHOD splitter_container->GET_CONTAINER
        EXPORTING
          ROW       = 1
          COLUMN    = 1
        RECEIVING
          CONTAINER = splitter_cont1.
    CREATE OBJECT dock_container
      EXPORTING
        parent                      = splitter_cont1
      EXCEPTIONS
        cntl_error                  = 1
        cntl_system_error           = 2
        create_error                = 3
        lifetime_error              = 4
        lifetime_dynpro_dynpro_link = 5
        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.
    In debug - mode I can see, that 'splitter_cont' is initalized... The code only breakes when a parent is set to dock_container.
    The error comes from CL_GUI_CONTAINER->GET_FRAME_CONTAINER where the compiler runs into 'RAISE CNTL_ERROR'...
    METHOD GET_FRAME_CONTAINER.
        DATA: PARENTID TYPE I.
    *    CALL 'DY_GET_MODAL_LEVEL' ID 'MOD_LEV' FIELD PARENTID.
    *    CALL 'DY_GET_MODAL_LEVEL' ID 'MOD_LEV_UI' FIELD PARENTID.
    *    CALL 'DY_GET_MODAL_LEVEL' ID 'ACT_UI_MOD_LEV' FIELD PARENTID.
        IF CONTAINER IS INITIAL.
            CALL 'DY_GET_MODAL_LEVEL' ID 'ACT_UI_MOD_LEV' FIELD PARENTID.
        ELSEIF CONTAINER->H_CONTROL-SHELLID = -1.
            CALL 'DY_GET_MODAL_LEVEL' ID 'ACT_UI_MOD_LEV' FIELD PARENTID.
        ELSE.
            PARENTID = CONTAINER->H_CONTROL-SHELLID.
        ENDIF.
        IF PARENTID BETWEEN 10 AND 19.    " this are the dynpro areas
            PARENTID = PARENTID - 10.     " now its the corresponding frame
        ENDIF.
        data: new_dummy_parent_container type ref to CL_GUI_CONTAINER.
        IF PARENTID BETWEEN 0 AND 9.
        "    CREATE OBJECT DUMMY_PARENT_CONTAINER
        "        EXPORTING CLSID = SPACE.
        "    DUMMY_PARENT_CONTAINER->H_CONTROL-SHELLID = PARENTID.
        "    FRAME_CONTAINER = DUMMY_PARENT_CONTAINER.
            CREATE OBJECT NEW_DUMMY_PARENT_CONTAINER
                EXPORTING CLSID = SPACE.
            NEW_DUMMY_PARENT_CONTAINER->H_CONTROL-SHELLID = PARENTID.
            FRAME_CONTAINER = NEW_DUMMY_PARENT_CONTAINER.
        ELSEIF PARENTID = 99.
            FRAME_CONTAINER = CONTAINER.
        ELSE.
            IF CONTAINER_MUST_BE_TOPLEVEL = 0.
                FRAME_CONTAINER = CONTAINER.
            ELSE.
                RAISE CNTL_ERROR.
            ENDIF.
        ENDIF.
    ENDMETHOD.
    I have found further solutions like yours on the web, so it seems to be right. I cannot understand why the compiler runs into error?!?
    Thanks a lot!

Maybe you are looking for

  • Opening links on an iPad

    We are trying to sever our portal on the iPad.  I have pdf, doc, ppt and xls files with hyperlinks in them.  I can open the files in Safari and Terra but the links don't work.  I have spoken to Apple support and they said there must be a permissions

  • Nested tables and Inheritance

    Hi there, Im a bit new to SQL and am doing it for my degree at the moment. We have been set an assignment to create a database from a conceptual schema, and as far as I can tell, i need to implement nested cells into a table that has inheritance both

  • My trash can won't open up

    When I click on my little trash can icon, Finder becomes the active application but it doesn't open. It just started doing this randomly. Anybody have any suggestions?

  • Where are the  downloaded movie files for iTunes stored?

    Im trying to find the files on my time machine to restore some movies I had in Itunes.  I can't download them again from itunes for some reason so I am trying to restore the files from the time machine. I need to know where on my mac the movies and t

  • Need support person for help with loading the adobe reader

    We purchased Adobe reader but it will not load onto my computer and per my boss I need to get help from you. my phone number is 813-445-7295 ext 104