TREE REPORT with CHECKBOX

Hi
I want a report in which the report should have tree structure and along with check box
Regards
Sneha

HI
Check this standard report
SAPCOLUMN_TREE_CONTROL_DEMO
*& Report  ZTREE                                                       *
REPORT  ZTREE                                   .
DATA: BEGIN OF ITEMS OCCURS 100,
         ID(10),
         PARENT_ID(10),
         TEXT(20),
         SYMBOL,
      END OF ITEMS,
      TABIX_STACK LIKE SY-TABIX OCCURS 10 WITH HEADER LINE,
      ITEMS_SHOW LIKE ITEMS OCCURS 100 WITH HEADER LINE.
INCLUDE <SYMBOL>.
\* append sample items (mixed order)
PERFORM APPEND_ITEM USING:
    '1'  ''        'Food',
    '2'  ''        'Drinks',
    '12' '9'       'Pavan Praveen',
    '17' '11'      'company',
    '3'  ''        'Tools',
    '4'  '1'       'Dairy milk',
    '16' '11'      'Music',
    '5'  '1'       'Chocolate',
    '6'  '2'       'Alcoholic',
    '8'  '4'       'Megastar',
    '10' '5'       'Milk',
    '11' '3'       'Boost',
    '13' '9'       'Sachin ',
    '7'  '4'       'Cricket',
    '14' '2'       'Non-alcholic',
    '35' '31'      'Pepsi',
    '9'  '6'       'Thumsup',
    '15' '14'      'Coca-cola',
    '18' '6'       'Win',
    '28' '18'      'Ganguly ',
    '33' '28'      'INDIA',
    '34' '28'      'Gujarat',
    '29' '18'      'State',
    '30' '29'      'congrats',
    '19' '33'      'chiranjeevi',
    '20' '33'      'kalyan',
    '22' '19'      'here comes',
    '23' '19'      'Chandra',
    '24' '20'      'chat',
    '32' '31'      'Marvelous',
    '25' '20'      'Memorable',
    '31' '34'      'guess'.
\* show initial list (items with level 0 - parentless items)
LOOP AT ITEMS WHERE PARENT_ID = ''.
  MOVE-CORRESPONDING ITEMS TO ITEMS_SHOW.
  ITEMS_SHOW-SYMBOL = '+'.
  APPEND ITEMS_SHOW.
ENDLOOP.
PERFORM PRINT_TREE TABLES ITEMS_SHOW.
\* at line-selection - when the node is opened/closed or item double-clk
AT LINE-SELECTION.
  READ TABLE ITEMS WITH KEY PARENT_ID = ITEMS_SHOW-ID. "see 'hide'
  IF SY-SUBRC = 0. "item has children - expand or collapse
    SY-LSIND = 0.
    PERFORM EXPAND_COLLAPSE USING ITEMS_SHOW-ID.
    PERFORM PRINT_TREE TABLES ITEMS_SHOW.
  ELSE.            "item has NO children - perform some action
    READ TABLE ITEMS WITH KEY ID = ITEMS_SHOW-ID.
    WRITE: 'Action performed on item "' NO-GAP, ITEMS-TEXT NO-GAP,
           '", id.', ITEMS-ID.
  ENDIF.
\* form print_tree
FORM PRINT_TREE TABLES ITEMS STRUCTURE ITEMS.
  DATA: V_TABIX LIKE SY-TABIX,
        START_TABIX LIKE SY-TABIX,
        V_LEVEL LIKE SY-TFILL,
        V_OFFSET TYPE I,
        V_ID LIKE ITEMS-ID,
        V_PARENT_ID LIKE ITEMS-PARENT_ID,
        V_PARENT_ID_FOR_VLINE LIKE ITEMS-PARENT_ID,
        V_PREV_LEVEL TYPE I,
        V_ITEMS_COUNT LIKE SY-TFILL,
        V_VLINES_STRING(200).
  CHECK NOT ITEMS[] IS INITIAL.
  SORT ITEMS BY PARENT_ID ID.
  READ TABLE ITEMS INDEX 1.
  V_PARENT_ID = ITEMS-PARENT_ID.
  START_TABIX = 1.
  REFRESH TABIX_STACK.
  DO.
    LOOP AT ITEMS FROM START_TABIX.
      V_TABIX = START_TABIX = SY-TABIX."remember current index
      V_ID = ITEMS-ID.
      V_PARENT_ID_FOR_VLINE = ITEMS-PARENT_ID.
\*     decrease level and exit loop if parent not the same as previous
      IF ITEMS-PARENT_ID NE V_PARENT_ID.
        PERFORM READ_FROM_STACK CHANGING START_TABIX. "level = NoOfRecs
        READ TABLE ITEMS INDEX START_TABIX.
        V_PARENT_ID = ITEMS-PARENT_ID.
        ADD 1 TO START_TABIX.   "next loop starts from parent index + 1
\*        clear vline
        IF V_LEVEL > 1.
          V_OFFSET = 2 + ( V_LEVEL - 2 ) * 3.
          IF V_LEVEL = 1. V_OFFSET = 1. ENDIF.
          V_VLINES_STRING+V_OFFSET = ' '.
        ENDIF.
        EXIT.
      ENDIF.
      V_PARENT_ID = ITEMS-PARENT_ID.
\*     write item
      FORMAT COLOR OFF.
DESCRIBE TABLE TABIX_STACK LINES V_LEVEL."level is no of StackRecs
      WRITE: / V_VLINES_STRING.
      V_OFFSET = V_LEVEL * 3.
      IF V_LEVEL NE 0.
        IF V_PREV_LEVEL < V_LEVEL.
          WRITE: AT V_OFFSET '|', / ''.
          WRITE: / V_VLINES_STRING.
        ENDIF.
        V_OFFSET = V_LEVEL * 3.
        WRITE AT V_OFFSET '|--'.
      ENDIF.
      V_OFFSET = V_OFFSET + 3.
      CASE ITEMS-SYMBOL.
        WHEN '+'.
          WRITE AT V_OFFSET SYM_PLUS_FOLDER AS SYMBOL
                COLOR 4 INTENSIFIED HOTSPOT.
        WHEN '-'.
          WRITE AT V_OFFSET SYM_MINUS_FOLDER AS SYMBOL
                COLOR 4 INTENSIFIED HOTSPOT.
        WHEN OTHERS. FORMAT COLOR 5.
      ENDCASE.
      WRITE: ITEMS-TEXT.
      V_PREV_LEVEL = V_LEVEL.
      HIDE: ITEMS-ID.
      ADD 1 TO V_ITEMS_COUNT.
      READ TABLE ITEMS WITH KEY PARENT_ID = ITEMS-ID.
\*     increase level and exit loop if item has children
      IF SY-SUBRC = 0.
        START_TABIX = SY-TABIX.
        APPEND V_TABIX TO TABIX_STACK. "level is no of recs in stack
        V_PARENT_ID = ITEMS-PARENT_ID.
\*        set vline
        V_TABIX = V_TABIX + 1.
        READ TABLE ITEMS INDEX V_TABIX.
        V_OFFSET = 2 + ( V_LEVEL - 1 ) * 3.
        IF V_LEVEL > 0.
          IF ITEMS-PARENT_ID = V_PARENT_ID_FOR_VLINE AND SY-SUBRC = 0.
            V_VLINES_STRING+V_OFFSET = '|'.
          ELSE.
            V_VLINES_STRING+V_OFFSET = ' '.
          ENDIF.
        ENDIF.
        EXIT.
      ENDIF.
\*     at last - decrease level
      AT LAST.
\*        clear vline
        IF V_LEVEL > 1.
          V_OFFSET = 2 + ( V_LEVEL - 2 ) * 3.
          IF V_LEVEL = 1. V_OFFSET = 1. ENDIF.
          V_VLINES_STRING+V_OFFSET = ' '.
        ENDIF.
        " next loop starts from parent index, not parent index + 1
        " because of different parents level will decrease anyway
        PERFORM READ_FROM_STACK CHANGING START_TABIX.
        APPEND START_TABIX TO TABIX_STACK. "must return index to stack
      ENDAT.
    ENDLOOP.
    DESCRIBE TABLE ITEMS.
    IF START_TABIX > SY-TFILL OR V_ITEMS_COUNT >= SY-TFILL.
      EXIT.
    ENDIF.
  ENDDO.
ENDFORM.
\* form expand_collapse
FORM EXPAND_COLLAPSE USING VALUE(V_ID).
  DATA: V_NO_MORE_ORPHANS,
        ITEMS_TEMP LIKE ITEMS OCCURS 100 WITH HEADER LINE.
  DELETE ITEMS_SHOW WHERE PARENT_ID = V_ID. "try to collapse
  IF SY-SUBRC = 0.                     "succesfull first collapse
    DO.            "cascade collapse - delete 'orphans' that are left
      REFRESH ITEMS_TEMP.
      MOVE ITEMS_SHOW\[] TO ITEMS_TEMP[].
      SORT ITEMS_TEMP BY ID.
      V_NO_MORE_ORPHANS = 'X'.
      LOOP AT ITEMS_SHOW WHERE PARENT_ID NE ''.
        READ TABLE ITEMS_TEMP WITH KEY ID = ITEMS_SHOW-PARENT_ID
                               BINARY SEARCH TRANSPORTING NO FIELDS.
        IF SY-SUBRC NE 0.              "no parent - it's an orphan
          CLEAR V_NO_MORE_ORPHANS.
          DELETE ITEMS_SHOW.
        ENDIF.
      ENDLOOP.
      IF V_NO_MORE_ORPHANS = 'X'. EXIT. ENDIF.
    ENDDO.
    ITEMS_SHOW-SYMBOL = '+'.
    MODIFY ITEMS_SHOW TRANSPORTING SYMBOL WHERE ID = V_ID.
  ELSE.                                "unsuccessfull collapse - expand
    ITEMS_SHOW-SYMBOL = '-'.
    MODIFY ITEMS_SHOW TRANSPORTING SYMBOL WHERE ID = V_ID.
    LOOP AT ITEMS WHERE PARENT_ID = V_ID.      "show children
      APPEND ITEMS TO ITEMS_SHOW.
    ENDLOOP.
    LOOP AT ITEMS_SHOW WHERE PARENT_ID = V_ID. "check grandchildren
      READ TABLE ITEMS WITH KEY PARENT_ID = ITEMS_SHOW-ID.
      IF SY-SUBRC = 0.
        ITEMS_SHOW-SYMBOL = '+'.
      ELSE.
        ITEMS_SHOW-SYMBOL = ''.
      ENDIF.
      MODIFY ITEMS_SHOW.
    ENDLOOP.
  ENDIF.
ENDFORM.
\* form append_item
FORM APPEND_ITEM USING VALUE(ID) VALUE(PARENT_ID) VALUE(TEXT).
  ITEMS-ID = ID.
  ITEMS-PARENT_ID = PARENT_ID.
  ITEMS-TEXT = TEXT.
  APPEND ITEMS.
ENDFORM.
\* form read_from_stack
FORM READ_FROM_STACK CHANGING TABIX LIKE SY-TABIX.
  DESCRIBE TABLE TABIX_STACK.
  CHECK SY-TFILL NE 0.
  READ TABLE TABIX_STACK INDEX SY-TFILL.
  TABIX = TABIX_STACK.
  DELETE TABIX_STACK INDEX SY-TFILL.
ENDFORM.
Or use this FM RS_TREE_SET_CURRENT_LAYOUT
*& Report  ZTREESTRUC                                                  *
REPORT  ZTREESTRUC                              .
Type-pools : fibs,stree.
data : t_node type snodetext.
data : node_tab like t_node occurs 0 with header line.
clear : node_tab, node_tab[].
node_tab-type = 'T'.
node_tab-name = 'Earth'.
node_tab-tlevel = '01'.
node_tab-nlength = '5'.
node_tab-color = '4'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.
node_tab-type = 'P'.
node_tab-name = 'Europe'.
node_tab-tlevel = '02'.
node_tab-nlength = '6'.
node_tab-color = '1'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 4.
append node_tab.
clear node_tab.
node_tab-type = 'P'.
node_tab-name = 'Germany'.
node_tab-tlevel = '03'.
node_tab-nlength = '7'.
node_tab-color = '4'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 4.
append node_tab.
clear node_tab.
node_tab-type = 'P'.
node_tab-name = 'Berlin'.
node_tab-tlevel = '04'.
node_tab-nlength = '6'.
node_tab-color = '4'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.
node_tab-type = 'P'.
node_tab-name = 'Asia'.
node_tab-tlevel = '02'.
node_tab-nlength = '4'.
node_tab-color = '1'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.
node_tab-type = 'P'.
node_tab-name = 'India'.
node_tab-tlevel = '03-'.
node_tab-nlength = '5'.
node_tab-color = '1'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.
node_tab-type = 'P'.
node_tab-name = 'Bombay'.
node_tab-tlevel = '04-'.
node_tab-nlength = '6'.
node_tab-color = '1'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.
CALL FUNCTION 'RS_TREE_CONSTRUCT'
\* EXPORTING
  INSERT_ID                = '000000'
  RELATIONSHIP             = ' '
  LOG                      =
  TABLES
    NODETAB                  = node_tab
\* EXCEPTIONS
  TREE_FAILURE             = 1
  ID_NOT_FOUND             = 2
  WRONG_RELATIONSHIP       = 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.
  DATA: type_mapping TYPE stree_ctl_type_mapping_tab.
  DATA: wa_type TYPE stree_ctl_type_mapping.
  CLEAR: type_mapping[].
    wa_type-type = 'A'.
    wa_type-icon = '@BL@'.
    APPEND wa_type TO type_mapping.
*CALL FUNCTION 'RS_TREE_CONTROL_PREPARE'
\* EXPORTING
  CONTROL_PATTERN             = STREE_CTL_GENERIC
   CONTROL_PATTERN             = 'PH'
\**   HIERARCHY_HEADER            =
  INITIAL_HEADER_WIDTH        =
  LIST_ITEM_HEADER            =
  MULTIPLE_SELECTION          = 'X'
  ITEM_SELECTION              = STREE_FALSE
  SUPPRESS_NODE_ICON          = STREE_FALSE
  SUPPRESS_FOLDER_ICON        = STREE_FALSE
  CALLBACK_PROGRAM            =
  CALLBACK_ITEM_DISPLAY       =
  COLOR_MAPPING               =
    TYPE_MAPPING                = type_mapping
IMPORTING
  SUBSCREEN_PROGRAM           =
  SUBSCREEN_DYNNR             =
EXCEPTIONS
  NOT_AVAILABLE               = 1
  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.
*CALL FUNCTION 'RS_TREE_SET_CURRENT_LAYOUT'
\** EXPORTING
  CURSOR_COLUMN             = 3
  CURSOR_LINE               = 2
  FIRST_NODE                = 1
  FIRST_NODE_TYPE           = ' '
  LIST_COLUMN               = 1
  LIST_LINE                 = 1
  LAYOUT_MODE               = STREE_LAYOUT_NORMAL
IMPORTING
  INCONSISTENT_LAYOUT       =
TABLES
  LAYOUT                    =
CALL FUNCTION 'RS_TREE_LIST_DISPLAY'
EXPORTING
\*   CALLBACK_PROGRAM                =
  CALLBACK_USER_COMMAND           =
  CALLBACK_TEXT_DISPLAY           =
  CALLBACK_MOREINFO_DISPLAY       =
  CALLBACK_COLOR_DISPLAY          =
  CALLBACK_TOP_OF_PAGE            =
  CALLBACK_GUI_STATUS             =
  CALLBACK_CONTEXT_MENU           =
  STATUS                          = 'IMPLICIT'
  CHECK_DUPLICATE_NAME            = '1'
  COLOR_OF_NODE                   = '4'
  COLOR_OF_MARK                   = '3'
  COLOR_OF_LINK                   = '1'
  COLOR_OF_MATCH                  = '5'
  LOWER_CASE_SENSITIVE            = ' '
  MODIFICATION_LOG                = ' '
  NODE_LENGTH                     = 30
  TEXT_LENGTH                     = 75
  TEXT_LENGTH1                    = 0
  TEXT_LENGTH2                    = 0
  RETURN_MARKED_SUBTREE           = ' '
  SCREEN_START_COLUMN             = 0
  SCREEN_START_LINE               = 0
  SCREEN_END_COLUMN               = 0
  SCREEN_END_LINE                 = 0
  SUPPRESS_NODE_OUTPUT            = ' '
  LAYOUT_MODE                     = ' '
  USE_CONTROL                     = STREE_USE_LIST
   USE_CONTROL                     = 'L'.
\* IMPORTING
  F15                             =
**********end of program
For Tree structure in alv
Check this
*& Report  ZALVTREE                                                    *
REPORT  ZALVTREE                                .
*Data Declaration
TABLES:     ekko.
TYPE-POOLS: slis.                                 "ALV Declarations
TYPES: BEGIN OF t_ekko,
  ebeln TYPE ekpo-ebeln,
  ebelp TYPE ekpo-ebelp,
  statu TYPE ekpo-statu,
  aedat TYPE ekpo-aedat,
  matnr TYPE ekpo-matnr,
  menge TYPE ekpo-menge,
  meins TYPE ekpo-meins,
  netpr TYPE ekpo-netpr,
  peinh TYPE ekpo-peinh,
END OF t_ekko.
DATA: it_ekko     TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
      it_ekpo     TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
      it_emptytab TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
      wa_ekko     TYPE t_ekko,
      wa_ekpo     TYPE t_ekko.
DATA: ok_code like sy-ucomm,           "OK-Code
      save_ok like sy-ucomm.
*ALV data declarations
DATA: fieldcatalog  TYPE lvc_t_fcat WITH HEADER LINE.
DATA: gd_fieldcat   TYPE lvc_t_fcat,
      gd_tab_group  TYPE slis_t_sp_group_alv,
      gd_layout     TYPE slis_layout_alv.
*ALVtree data declarations
CLASS cl_gui_column_tree DEFINITION LOAD.
CLASS cl_gui_cfw DEFINITION LOAD.
DATA: gd_tree             TYPE REF TO cl_gui_alv_tree,
      gd_hierarchy_header TYPE treev_hhdr,
      gd_report_title     TYPE slis_t_listheader,
      gd_logo             TYPE sdydo_value,
      gd_variant          TYPE disvariant.
*Create container for alv-tree
DATA: l_tree_container_name(30) TYPE c,
      l_custom_container        TYPE REF TO cl_gui_custom_container.
*Includes
*INCLUDE ZDEMO_ALVTREEO01. "Screen PBO Modules
*INCLUDE ZDEMO_ALVTREEI01. "Screen PAI Modules
*INCLUDE ZDEMO_ALVTREEF01. "ABAP Subroutines(FORMS)
*Start-of-selection.
START-OF-SELECTION.
\* ALVtree setup data
    PERFORM data_retrieval.
    PERFORM build_fieldcatalog.
    PERFORM build_layout.
    PERFORM build_hierarchy_header CHANGING gd_hierarchy_header.
    PERFORM build_report_title USING gd_report_title gd_logo.
    PERFORM build_variant.
\* Display ALVtree report
  call screen 100.
*&      Form  DATA_RETRIEVAL
\*       Retrieve data into Internal tables
FORM data_retrieval.
  SELECT ebeln
   UP TO 10 ROWS
    FROM ekko
    INTO corresponding fields of TABLE it_ekko.
  loop at it_ekko into wa_ekko.
    SELECT ebeln ebelp statu aedat matnr menge meins netpr peinh
      FROM ekpo
      appending TABLE it_ekpo
     where ebeln eq wa_ekko-ebeln.
  endloop.
ENDFORM.                    " DATA_RETRIEVAL
*&      Form  BUILD_FIELDCATALOG
\*       Build Fieldcatalog for ALV Report
FORM build_fieldcatalog.
\* Please not there are a number of differences between the structure of
ALVtree fieldcatalogs and ALVgrid fieldcatalogs.
For example the field seltext_m is replace by scrtext_m in ALVtree.
  fieldcatalog-fieldname   = 'EBELN'.           "Field name in itab
  fieldcatalog-scrtext_m   = 'Purchase Order'.  "Column text
  fieldcatalog-col_pos     = 0.                 "Column position
  fieldcatalog-outputlen   = 15.                "Column width
  fieldcatalog-emphasize   = 'X'.               "Emphasize  (X or SPACE)
  fieldcatalog-key         = 'X'.               "Key Field? (X or SPACE)
\*  fieldcatalog-do_sum      = 'X'.              "Sum Column?
fieldcatalog-no_zero     = 'X'.              "Don't display if zero
  APPEND fieldcatalog TO gd_fieldcat.
  CLEAR  fieldcatalog.
  fieldcatalog-fieldname   = 'EBELP'.
  fieldcatalog-scrtext_m   = 'PO Iten'.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-col_pos     = 1.
  APPEND fieldcatalog TO gd_fieldcat..
  CLEAR  fieldcatalog.
  fieldcatalog-fieldname   = 'STATU'.
  fieldcatalog-scrtext_m   = 'Status'.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-col_pos     = 2.
  APPEND fieldcatalog TO gd_fieldcat..
  CLEAR  fieldcatalog.
  fieldcatalog-fieldname   = 'AEDAT'.
  fieldcatalog-scrtext_m   = 'Item change date'.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-col_pos     = 3.
  APPEND fieldcatalog TO gd_fieldcat..
  CLEAR  fieldcatalog.
  fieldcatalog-fieldname   = 'MATNR'.
  fieldcatalog-scrtext_m   = 'Material Number'.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-col_pos     = 4.
  APPEND fieldcatalog TO gd_fieldcat..
  CLEAR  fieldcatalog.
  fieldcatalog-fieldname   = 'MENGE'.
  fieldcatalog-scrtext_m   = 'PO quantity'.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-col_pos     = 5.
  APPEND fieldcatalog TO gd_fieldcat..
  CLEAR  fieldcatalog.
  fieldcatalog-fieldname   = 'MEINS'.
  fieldcatalog-scrtext_m   = 'Order Unit'.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-col_pos     = 6.
  APPEND fieldcatalog TO gd_fieldcat..
  CLEAR  fieldcatalog.
  fieldcatalog-fieldname   = 'NETPR'.
  fieldcatalog-scrtext_m   = 'Net Price'.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-col_pos     = 7.
  fieldcatalog-datatype     = 'CURR'.
  APPEND fieldcatalog TO gd_fieldcat..
  CLEAR  fieldcatalog.
  fieldcatalog-fieldname   = 'PEINH'.
  fieldcatalog-scrtext_m   = 'Price Unit'.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-col_pos     = 8.
  APPEND fieldcatalog TO gd_fieldcat..
  CLEAR  fieldcatalog.
ENDFORM.                    " BUILD_FIELDCATALOG
*&      Form  BUILD_LAYOUT
\*       Build layout for ALV grid report
FORM build_layout.
  gd_layout-no_input          = 'X'.
  gd_layout-colwidth_optimize = 'X'.
  gd_layout-totals_text       = 'Totals'(201).
\*  gd_layout-totals_only        = 'X'.
gd_layout-f2code            = 'DISP'.  "Sets fcode for when double
                                        "click(press f2)
gd_layout-zebra             = 'X'.
gd_layout-group_change_edit = 'X'.
gd_layout-header_text       = 'helllllo'.
ENDFORM.                    " BUILD_LAYOUT
*&      Form  build_hierarchy_header
\*       build hierarchy-header-information
\*      -->P_L_HIERARCHY_HEADER  structure for hierarchy-header
FORM build_hierarchy_header CHANGING
                               p_hierarchy_header TYPE treev_hhdr.
  p_hierarchy_header-heading = 'Hierarchy Header'(013).
  p_hierarchy_header-tooltip = 'This is the Hierarchy Header !'(014).
  p_hierarchy_header-width = 30.
  p_hierarchy_header-width_pix = ''.
ENDFORM.                               " build_hierarchy_header
*&      Form  BUILD_REPORT_TITLE
\*       Build table for ALVtree header
\*  <->  p1        Header details
<->  p2        Logo value
FORM build_report_title CHANGING
      pt_report_title  TYPE slis_t_listheader
      pa_logo             TYPE sdydo_value.
  DATA: ls_line TYPE slis_listheader,
        ld_date(10) TYPE c.
\* List Heading Line(TYPE H)
  CLEAR ls_line.
  ls_line-typ  = 'H'.
\* ls_line-key     "Not Used For This Type(H)
  ls_line-info = 'PO ALVTree Display'.
  APPEND ls_line TO pt_report_title.
\* Status Line(TYPE S)
  ld_date(2) = sy-datum+6(2).
  ld_date+2(1) = '/'.
  ld_date3(2) = sy-datum4(2).
  ld_date+5(1) = '/'.
  ld_date+6(4) = sy-datum(4).
  ls_line-typ  = 'S'.
  ls_line-key  = 'Date'.
  ls_line-info = ld_date.
  APPEND ls_line TO pt_report_title.
\* Action Line(TYPE A)
  CLEAR ls_line.
  ls_line-typ  = 'A'.
  CONCATENATE 'Report: ' sy-repid INTO ls_line-info  SEPARATED BY space.
  APPEND ls_line TO pt_report_title.
ENDFORM.
*&      Form  BUILD_VARIANT
\*       Build variant
form build_variant.
\* Set repid for storing variants
  gd_variant-report = sy-repid.
endform.                    " BUILD_VARIANT 
Regards
Pavan

Similar Messages

  • Creating TREE REPORT with CHECKBOX against each row

    Hi Friends,
    I need to create a <b>TREE REPORT with  CHECK BOX</b> against each row. when the user selects a row and clicks on a custom button then those should get populated into an internal table. <b>This is HIGH priority</b> one and I have tried my best but couldnt find any solution. Please advise me some sol.
    thanks in advance for your valuable time and help.
    Regards
    srithan
    Message edited by me for easyness
            Reddy

    Hi
    Following code is to add checkboxes in ALV tree:
    FORM add_root_request USING pls_data_ TYPE csg_gs_outtab_p_key__l_is_sub_node_ TYPE c
    CHANGING pl_carrid_key._node = nodes->add_node( related_node = p_key
    relationship = cl_gui_column_tree=>relat_last_child ).
    ... §0.2 if information should be displayed at
    the hierarchy column set the carrid as text for this node
    text = p_ls_data-object.
    node->set_text( text ).
    ... §0.3 set the data for the nes node
    node->set_data_row( p_ls_data ).
    item = node->get_hierarchy_item( ).
    item = node->get_item( 'FCHECKBOX' ). "FCHECKBOX is my radio button field in internal table which I am using to populate the ALV
    item->set_type( if_salv_c_item_type=>checkbox ).
    pl_carrid_key = node->get_key( )._
    CATCH cx_salv_msg.
    ENDFORM_._Following code is for handling checbox_change event
    PERFORM application_action_events.
    FORM application_action_events .
    data: lr_events type ref to cl_salv_events_tree.
    *data gr_events type ref to lcl_handle_events.
    lr_events = gr_tree->get_event( ).
    create object gr_events.
    set handler gr_events->check for lr_events.
    set handler gr_events->on_link_click for lr_events.
    set handler gr_events->on_before_user_command for lr_events.
    set handler gr_events->on_after_user_command for lr_events.
    set handler gr_events->on_keypress for lr_events.
    endform. " application_action_events----
    CLASS lcl_handle_events DEFINITION.
    PUBLIC SECTION.
    METHODS:
    check FOR EVENT checkbox_change OF cl_salv_events_tree IMPORTING node_key columnname checked. "Here node_key is the row number
    ENDCLASS. "lcl_handle_events DEFINITION
    CLASS lcl_handle_events IMPLEMENTATION
    §4.2 implement the events for handling the events of cl_salv_table
    CLASS lcl_handle_events IMPLEMENTATION_._
    METHOD check_._
    WRITE 'hello'_._
    DATA lwa_modify_check_ TYPE REF TO csg_gs_outtab.
    node_key = node_key - 1_._
    READ TABLE csg_gt_list INDEX node_key REFERENCE INTO lwa_modify_check._
    if columnname = 'FCHECKBOX'_._
    IF checked = 'X'_._
    If the value in internal table is set to X, then it is deselct
    lwa_modify_check->fcheckbox =_ ' '_._
    ELSE_._
    lwa_modify_check->fcheckbox =_ 'X'_._
    ENDIF_._
    ENDIF_._
    if columnname = 'CHECKBOX_READ'_._
    IF checked = 'X'_._
    If the value in internal table is set to X, then it is deselct
    lwa_modify_check->checkbox_read =_ ' '_._
    ELSE_._
    lwa_modify_check->checkbox_read =_ 'X'_._
    ENDIF_._
    ENDIF_._
    *MODIFY TABLE csg_gt_list from l_wa_modify_check.
    flag_test = flag_test + 1_._
    ENDMETHOD_._ "check
    ENDCLASS_._ "lcl_handle_events IMPLEMENTATION
    Please give me reward points

  • Report with Checkbox

    I am trying to follow the example shown at the below link but it is not working. I am modifying some of the code since I am using version 1.6. Any ideas as to what I may be doing wrong. The checkbox appears and I can select and deselect items but I cannot get P6_HOLDER to hold any of the values of the selected items. Thanks!
    http://apex-smb.blogspot.com/2009/01/apex-report-with-checkboxes-advanced.html
    First I created a page item called P6_HOLDER.
    Next I created a report region (sequence 40) with the below code.
    select htmldb_item.checkbox (1, dev_obj_id, 'onchange="spCheckChange(this);"',
    :P6_HOLDER, ':') checkbox, dev_id, dev_obj_desc from edm_dev_obj where
    dev_id = :P6_TEMP_DEV_ID
    **I then created a html region (sequence 1) with the below code**
    <SCRIPT src="http://www.google.com/jsapi"></SCRIPT>
    <SCRIPT>
    // Load jQuery
    google.load("jquery", "1.2.6", {uncompressed:true});
    function spCheckChange(pThis){
    var get = new htmldb_Get(null,$v('pFlowId'),'APPLICATION_PROCESS=CHECKBOX_CHANGE',$v('pFlowStepId'));
    get.addParam('f01',pThis.value); //Value that was checked
    get.addParam('f02',pThis.checked ? 'Y':'N'); // Checked Flag
    gReturn = get.get();
    $f('checkListDisp').innerHTML=gReturn;
    </SCRIPT>
    CHECKBOX List:
    <DIV id=checkListDisp>&P6_HOLDER.</DIV>
    I then created an application process on Demand called CHECKBOX_CHANGE with the below code
    DECLARE
    v_item_val NUMBER := htmldb_application.g_f01;
    v_checked_flag VARCHAR2 (1) := htmldb_application.g_f02;
    BEGIN
    IF v_checked_flag = 'Y' THEN
    -- Add to the list
    IF :P6_HOLDER IS NULL THEN
    :P6_HOLDER := ':' || v_item_val || ':';
    ELSE
    :P6_HOLDER := :P6_HOLDER || v_item_val || ':';
    END IF;
    ELSE
    -- Remove from the list
    :P6_HOLDER := REPLACE (:P6_HOLDER, ':' || v_item_val || ':', ':');
    END IF;
    -- Just for testing
    HTP.p (:P6_HOLDER);
    END;

    Hi
    Create a page level validation (fucntion returning boolean) and write code similar to following
    DECLARE
    v_count NUMBER := 0;
    BEGIN
    FOR i IN 1..APEX_APPLICATION.G_F01.COUNT LOOP
    IF APEX_APPLICATION.G_F01(i) IS NOT NULL THEN
    v_count := v_count + 1;
    END IF;
    END LOOP;
    IF v_count = 0 THEN
    RETURN TRUE;
    ELSE
    RETURN FALSE;
    END IF;
    END;I take it your report query is similar to following
    select apex_item.checkbox(1,"PK_CLMN") Tick, col2, col3 FROM tbl_nameCheers,
    Hari

  • Report with checkboxes

    Hi all,
    I have a report with checkboxes getting the empno in return
    I have
    select apex_item.checkbox(1, empno) cbox,a.empno, a.ename,a.mgr,a.deptno from emp a
    in the report....
    I do have a dummy hidden field(P2_EMPNOS) which stores the empno's into it with comma concatenated(for which i wrote a page process)
    DECLARE
    vRow BINARY_INTEGER;
    BEGIN
    :P2_EMPNOS := NULL;
    :P2_EMPNOS :=apex_application.g_f01(1);
    FOR i IN 2 .. apex_application.g_f01.COUNT
    LOOP
    :P2_EMPNUMS :=
    :P2_EMPNOS
    || ','
    || apex_application.g_f01(i);
    END LOOP;
    END;
    in my next page I want the records that I have selected like this
    select a.empno, a.ename,a.mgr,a.deptno
    from emp a
    where empno in :P2_EMPNOS
    I did tried (:P2_EMPNOS),':P2_EMPNOS'
    The problem is if I select one checkbox, then in the next page I'm getting that one record....
    but If I select multiple, then starts trouble...it says "no data found"...but still the values can be viewed in the next page with comma separated
    Can some body help me in this please.
    Thanks in advance.
    Gora

    Hello Varad,
    Thankyou for the quick response.
    The problem here is....my item is getting the selected values as a string(i guess ;) )
    i think we have to figure out how we could break it and send those as single values.
    Any more guesses please...
    Regards,
    Gora

  • Issues with report with checkbox

    Hi friends,
    i have created a report with checkbox.
    the query is
    > select apex_item.checkbox(1,person_id,'unchecked') "select",
    person_id,
    AVAIL_SAL_CERTIFICATE,
    OCCURANCE,
    LAST_AVAILED_DATE,
    REASON,
    EFFECTIVE_START_DATE,
    EFFECTIVE_END_DATE
    from YY_SALARY_CERTIFICATEnow am having one button in my report region. suppose if i checked the particular row in report and clicked that button it should redirect to next page which is a form page it contains all the fields what report page had and it should display the value of corresponding report row which i checked.
    how i can achevie this?
    pls someone help me...

    <li>On Submit PLSQL
    DECLARE
      lc_colln_name VARCHAr2(100) := 'MY_COLLN';
    BEGIN
      APEX_COLLECTION.CREATE_COLLECTION(lc_colln_name);
    FOR i IN 1..APEX_APPLICATION.G_F01.COUNT --use the checkboxes array index used in query
    LOOP
       --Add each checked record id to collection
       APEX_COLLECTION.ADD_MEMBER
                p_collection_name => lc_colln_name
               ,p_c001 => APEX_APPLICATION.G_F01(i)  --Now c001 column of collection has this id
    END LOOP;
    END;<li>SQL Query of report in Page 2
    select person_id,
    AVAIL_SAL_CERTIFICATE,
    OCCURANCE,
    LAST_AVAILED_DATE,
    REASON,
    EFFECTIVE_START_DATE,
    EFFECTIVE_END_DATE
    from YY_SALARY_CERTIFICATE
             ,apex_collections AC
    where AC.collection_name = 'MY_COLLN' --use the name of the collection created previously
    AND    person_id = AC.c001

  • Tree Report and Checkboxes

    Has anyone tried using the HTMLDB_ITMEM.CHECKBOX with a tree report?
    I am hoping to be able to have a checkbox at the end of the node that can be used to copy and paste selected item and bulk delete.
    Thanks
    Simon

    Here you go:
    select id,
           pid,
           name,
           null link,
           htmldb_item.checkbox(1,id,<my desired checkstate>) a1,
           a2
    from   <my table>
    where  <my condition>
    order by namethen reference A1 in the Node Text Templates, as in
    <tr valign="top">#INDENT#
    <td colspan="#COLSPAN#" class="#A2#" style="padding:2px;width:100%;">
    #A1# #NAME##DRILL_UP#
    </td>Have fun,
    John D

  • ALV Tree Problem with Checkboxes

    Hello,
    i've got a problem.
    I have an ALV-Tree and die ALV-Detaillist of the tree are type checkbox.
    That's working correct.
    But i want to fill initial data in the checkboxes but the checkbox isnt set.
    i've done as followed:
      CALL METHOD go_alv_tree->set_table_for_first_display
        EXPORTING
         I_STRUCTURE_NAME     =
         IS_VARIANT           =
         I_SAVE               =
          i_default            = abap_false
          is_hierarchy_header  = ls_header
         IS_EXCEPTION_FIELD   =
         IT_SPECIAL_GROUPS    =
         IT_LIST_COMMENTARY   =
         I_LOGO               =
         I_BACKGROUND_ID      =
         IT_TOOLBAR_EXCLUDING =
        CHANGING
          it_outtab            = <go_data_tab>
         IT_FILTER            =
          it_fieldcatalog      = lt_fcat.
    fieldcat are several fields all as checkbox.
    Then i get a component of the output structure and set a X.
    ASSIGN COMPONENT lv_help_arbpl OF STRUCTURE <go_data_struc>
                           TO <fs_arbl>.
          IF <fs_arbl> IS ASSIGNED.
            <fs_arbl> = lc_xfeld.
          ENDIF.
            CALL METHOD go_alv_tree->add_node
              EXPORTING
                i_relat_node_key     = lv_matnr
                i_relationship       = cl_gui_column_tree=>relat_last_child
                is_outtab_line       = <go_data_struc>
                is_node_layout       = ls_layout
             IT_ITEM_LAYOUT       =
                i_node_text          = lv_node_text
              IMPORTING
                e_new_node_key       = lv_period
              EXCEPTIONS
                relat_node_not_found = 1
                node_not_found       = 2
                OTHERS               = 3.
    in <go_data_struc> the fields which should be set, are set with X.
    But after i add all of my nodes and do CALL METHOD p_go_alv_tree->frontend_update, the checkbox is empty but there is an X in the field beside the checkbox.
    Thanks in advance.
    best regards,
    Dennis

    Ok i solved the problem.
    best regards,
    Dennis

  • Filter report with checkbox

    I have a report (select A, B, C from TABLE1) on PAGE1
    I also added a little form on PAGE1. this form contains a list of checkbox generated dynamically with another query.
    I would like to filter my report with the values of the checked items in the form (so we get something like that : select A, B, C from TABLE1 where A in (checkbox1, checkbox4))
    Im using Apex 4
    Any idea how to achieve this ?
    thanks

    Hello quiqui42,
    You haven't given enough specific information about your situation, so I'll have to make some assumptions.
    I'm assuming that by "this form contains a list of checkbox generated dynamically with another query", you mean that you have a checkbox item that is based on a dynamic LOV. If this is the case, let's pretend that if checkbox 1 and checkbox 4 are checked, the value of the checkbox item (let's call it P1_FILTER) is "1:4".
    Now, there's probably lots of ways to do what you need to do, but I'll give you two. One is very easy, but could come at the cost of performance; the other is a little more involved but will execute much better on a large table, as long as what you're filtering on is indexed.
    Easy but potentially slow one:
    SELECT   a, b, c
      FROM   table1
    WHERE   INSTR(':' || :P1_FILTER || ':', ':' || a || ':') > 0;This could be a performance dog because it will not matter if column "a" is indexed - since you're running it thru a function the database will not use the index. Depending on the size of this table, this may or may not be a concern.
    Here is the more involved but better-performing one:
    1) Create a type:
    CREATE TYPE filter_vals AS TABLE OF VARCHAR2(10);      // replace varchar2(10) based on the size/type of your filter values2) Create a function:
    CREATE FUNCTION get_filter_vals(vals IN VARCHAR2)
       RETURN filter_vals
       PIPELINED
    IS
       arr  apex_application_global.vc_arr2 := apex_util.string_to_table(vals);
    BEGIN
       FOR i IN 1 .. arr.COUNT LOOP
          PIPE ROW (arr(i));
       END LOOP;
       RETURN;
    END get_filter_vals;3) Put this in the SQL for your report:
    SELECT   a, b, c
      FROM   table1
    WHERE   a IN (SELECT   COLUMN_VALUE FROM table(get_filter_vals(:P1_FILTER)));Step 1 creates a table type that is used by the function created in step 2. Step 2 is a pipelined function that turns a colon-delimited string (such as what is typically held in a list of checkboxes based on an LOV) into something that can be select-ed on just like a table. Finally, step 3 shows the query that uses the function in a way that allows a where-in clause, which will take advantage of an index on column "a" in a large table.
    Hope this helps,
    John

  • Reports with checkbox

    Hello Friends,
    I have one interactive report in which it displays 20 records with checkboxes for each.
    From 20 i have randomly selected 6 checkboxes.
    Now i want to display those 6 records in my first seconday screen.
    How to display it? Please give some example.
    Thanks in advance.
    Regards,
    n.i.m.z.

    hi
       the requirement can be done using the READ LINE command...just set the pf-status GUI in the program with a button CLIC
    report zsathish.
    DATA: BEGIN OF ITAB OCCURS 0,
         FLAG(1),
          MATNR LIKE MARA-MATNR,
          END OF ITAB.
    DATA: MLINE TYPE I, MPAGE LIKE SY-PAGNO.
    START-OF-SELECTION.
      SET PF-STATUS 'GUI'.
      SELECT MATNR FROM MARA INTO CORRESPONDING FIELDS OF TABLE ITAB UP TO 20 ROWS.
      LOOP AT ITAB.
        WRITE : / ITAB-FLAG AS CHECKBOX, ITAB-MATNR.
       Hide : itab-matnr.
      ENDLOOP.
    MPAGE = SY-PAGNO.
    MLINE = MPAGE * 72.
    AT user-command.
    case sy-ucomm.
      when 'CLIC'.
      DO MLINE TIMES.
        READ LINE SY-INDEX FIELD VALUE ITAB-FLAG.
        IF ITAB-FLAG NE SPACE.
          WRITE : / ITAB-MATNR.
        ENDIF.
      ENDDO.
    if helpful, reward
    Sathish. R

  • Christmas Tree Table with checkboxes

    I am using the JTable (CTTable, CTTableCellRenderer, and VisibleTableModelEvent) found at http://java.sun.com/products/jfc/tsc/articles/ChristmasTree/.
    The problem that I am having is that I inserted a column with checkboxes. In that column, it shows the text value (true/false) instead of the checkbox. When I click on a cell in the column, it shows the checkbox while the mouse button is depressed. After clicking on the cell, the checkbox disappears and the value changes (example: if it was false before clicking, it becomes true after clicking).
    Also, I have tried using my table with the standard JTable class and the checkboxes work correctly.

    Thanks Frank.
    You are correct I am setting the Bind variable via client method dropped as default activity in TF.
    I tried to utilize ensureVariableManager method in VOImpl and setting the Variable Value but when I try accessing the value of bind variable via get<BindVariableName>
    I end up in stackOverFlow error.
    Then I tried to override execute query by putting this lines before super.executeQuery();
    ensureVariableManager().setVariableValue("BindVariableName", value);
    but I guess this is not setting the Bind Variable too..
    What am I doing wrong ?
    Amit

  • Interactive report with checkbox and editable field

    Hi,
    For a project I'm working on I need to create a interactive report in Apex 3.2 with the ability to select lines and to modify one of the columns in the report.
    To do this, I started off by adding these two fields to the selection query of my IR:
    apex_item.checkbox(1, product_number) cb
    and
    apex_item.text (2,QTY_TO_ORDER) QTY_TO_ORDER
    cb is the checkbox files, and QTY_TO_ORDER is the editable field.
    That worked like a charm and I got my two fields in the report.
    To process the values, I added this page process, wich for now should only store the "product number" and "QTY_TO_ORDER" fields in a table.
    BEGIN
    FOR i in 1..APEX_APPLICATION.G_F01.count LOOP
    insert into mytmptable values (APEX_APPLICATION.G_F01(i),APEX_APPLICATION.G_F02(i));
    END LOOP;
    commit;
    end;
    However, this doesn’t work the way I want it to work. When I check the checkboxes of two rows, it will store two rows with the right product numbers, but it will take the top two QTY_TO_ORDER field of the table regardless of which ones are checked. I was able to solve this problem, by adding a rownum to the query and using the rownum as the value for the checkbox. Since I still need the product_number and qty_to order fields I made them both text fields.
    I changed my page process to:
    BEGIN
    FOR i in 1..APEX_APPLICATION.G_F01.count LOOP
    insert into mytmptable values (APEX_APPLICATION.G_F02(APEX_APPLICATION.G_F01(i)),
    APEX_APPLICATION.G_F03(APEX_APPLICATION.G_F01(i)));
    END LOOP;
    commit;
    end;
    This seemed to solve the problem, and I now got the right values in the table, unless I used sorting in the report... As soon as I sorted the report in a way different than by rownum, I got the wrong values in the table. The reason for this is of course that my insert just selects the nTh row from the table, and my rownums aren't dynamic.
    I've found a lot of examples on the internet using '#ROWNUM#' in the selection, which should dynamically generate a rownum in the report. This seems to work in normal report, but in a interactive reports, the literal values '#ROWNUM#' shows up.
    Is there any way to solve this issue?

    Hi,
    Try with 3 fields:
    apex_item.checkbox(1, product_number) cb,
    apex_item.text (2,QTY_TO_ORDER) QTY_TO_ORDER,
    apex_item.hidden(3, product_number) prod_no
    The hidden field should be display as a hidden column.
    Then your process can be:
    BEGIN
    FOR i in 1..APEX_APPLICATION.G_F01.count LOOP
    FOR j in 1..APEX_APPLICATION.G_F03.count LOOP
    IF APEX_APPLICATION.G_F01(i) = APEX_APPLICATION.G_F03(j)) THEN
    insert into mytmptable values (APEX_APPLICATION.G_F01(i),APEX_APPLICATION.G_F02(j));
    exit;
    END IF;
    END LOOP;
    END LOOP;

  • Report with checkbox and collection

    Hi all
    I need to manage an interactive report to filtering and selecting rows by checkboxes and then use a collection to manage the selected records.
    I used a first collection to create the source record set by a On-Load Before-Header Process:
    DECLARE
    v_id NUMBER;
    var1 Varchar2(8);
    var2 Varchar2(10);
    var3 VARCHAR2(50);
    var4 VARCHAR2(10);
    var5 VARCHAR2(100);
    var6 VARCHAR2(5);
    cursor c_Populate is
    SELECT
    dep.chassis_code AS chassis_code,
    dep.model_code AS model_code,
    m.model_description AS model_description,
    dep.acc_doc_number AS acc_doc_number,
    dest.description AS destination_descr,
    (trunc(sysdate) - dep.entry_date) Anzianita
    FROM deposit_chassis dep, warehouses w, warehouse_map map, models m, site s,
    destinations dest, T_SUB_DESTIN_DEALERS sdd
    WHERE
    dep.status = 5 AND
    w.ware_code = map.ware_code AND
    dep.DEALER_CODE = sdd.DELIVERY_POINT AND
    dep.DESTINATION_CODE = sdd.DESTINATION_CODE AND
    map.map_code = dep.map_code AND
    m.model_code = dep.model_code AND
    DEP.UNLOADING_SITE = S.SITE_CODE AND
    DEP.destination_code = dest.destination_code And
    dep.unloading_site = 'S0000074' and w.site_code = 'S0000074';
    i NUMBER;
    BEGIN
    APEX_COLLECTION.CREATE_OR_TRUNCATE_COLLECTION(p_collection_name => 'MY_COLLECTION');
    OPEN c_Populate;
    LOOP
    FETCH c_Populate into var1, var2, var3, var4, var5, var6;
    EXIT WHEN c_Populate%NOTFOUND;
    APEX_COLLECTION.ADD_MEMBER(
    p_collection_name => 'MY_COLLECTION',
    p_c001 => var1,
    p_c002 => var2,
    p_c003 => var3,
    p_c004 => var4,
    p_c005 => var5,
    p_c006 => var6);
    END LOOP;
    CLOSE c_Populate;
    END;
    Then I created a region for a SQL report:
    SELECT
    APEX_ITEM.CHECKBOX(1,c001) Chk,
    apex_item.text(2, c001) Telaio,
    apex_item.text(3, c002) ModelCode,
    apex_item.text(4, c003) Model,
    apex_item.text(5, c004) Doc_Number,
    apex_item.text(6, c005) Destination,
    apex_item.text(7, c006) Age
    FROM APEX_COLLECTIONS
    WHERE COLLECTION_NAME = 'MY_COLLECTION';
    Then, with a submit button and the relative process (below), I need to load a new collection for further elaboration.
    How can I obtain the single values for each field of my selected row (see MY_COLLECTION) ?
    APEX_COLLECTION.CREATE_OR_TRUNCATE_COLLECTION(p_collection_name => 'COL_AVAILABLE_CHASSIS');
    FOR i IN 1..APEX_APPLICATION.G_F01.Count
    LOOP
    APEX_COLLECTION.ADD_MEMBER(
    p_collection_name => 'COL_AVAILABLE_CHASSIS',
    p_c001 => I need the Telaio
    p_c002 => I need the ModelCode
    p_c003 => I need the Model
    p_c004 => I need the Doc_Number
    p_c005 => I need the Destination
    p_c006 => I need the Age
    END LOOP;
    Thanks in advance,
    Massimo

    Dear Jari
    I've looked at your sample.
    Yes it seems ok for my apps
    So, i've done the following update to my code:
    Souce Report
    SELECT
         APEX_ITEM.CHECKBOX(3,c001) Chk,
         APEX_ITEM.TEXT(4,c001) Telaio,
         APEX_ITEM.TEXT(5,c002) ModelCode,
         APEX_ITEM.TEXT(6,c003) Model,
         APEX_ITEM.TEXT(7,c004) Doc_Number,
         APEX_ITEM.TEXT(8,c005) Destination,
         APEX_ITEM.TEXT(9,c006) Anzianita
    FROM APEX_COLLECTIONS
    WHERE COLLECTION_NAME = 'MY_COLLECTION'
    The Submit Process
    DECLARE
      l_row NUMBER := 1;
    BEGIN
      FOR i IN 1..APEX_APPLICATION.G_F03.COUNT
      LOOP
        FOR j IN l_row..APEX_APPLICATION.G_F04.COUNT
        LOOP
          IF APEX_APPLICATION.G_F04(j) = APEX_APPLICATION.G_F03(i) THEN
              -- ONLY FOR TEST PURPOSE --
            htp.p('Telaio: '||APEX_APPLICATION.G_F03(i));
            htp.p('Campo: ' ||APEX_APPLICATION.G_F04(j));
            htp.p('Campo: ' ||APEX_APPLICATION.G_F05(j));
            htp.p('Campo: ' ||APEX_APPLICATION.G_F06(j));
            htp.p('Campo: ' ||APEX_APPLICATION.G_F07(j));
            htp.p('Campo: ' ||APEX_APPLICATION.G_F08(j));
            htp.p('Campo: ' ||APEX_APPLICATION.G_F09(j));
            l_row := j + 1;
            EXIT;
          END IF;
        END LOOP;
      END LOOP;
      COMMIT;
    END;
    Is it correct to manage G_F0x like my code ?
    Thanks,
    Massimo

  • Report with checkbox to PDF-File with BI Publisher

    Hello,
    I am able to create reports in APEX to create PDF-Files. We are using the BI Publisher.
    Now we have to design a rft-Template with a checkbox. In BI Publisher it works with the checkbox greate, but if I create in APEX report and a layout the checkbox is not display in the PDF-File.
    Does anyone has a solution for that?
    Regards,
    Mark

    I have a same issue ...
    How you are calling a bi report from apex....?
    Please help me...
    ty

  • Interactive Report with Checkbox column

    Hello everyone,
    our users love the Interactive Report filtering, so they want all forms in apps. to behave like Interactive Reports.
    I need a form where each row consists of 2 columns and a checkbox, that handles some flag. I can create checkboxes using APEX_ITEM, however, the filtering on such column look ridicolous. I would like to have a tabular form (with one editable checkbox column), but with all those Interactive Report filtering features.
    Is there any example (or inspiration) how to achieve such functionality?
    Thanks a lot!
    Adam

    Hello Adam,
    Why don't you just switch off the Filtering option for that column?
    (Go to the Interactive Report, click on your column, then in Column Definition you can (un)check the features for that column).
    Greetings,
    Roel
    http://roelhartman.blogspot.com/
    You can reward this reply by marking it as either Helpful or Correct ;-)

  • Detaliate report with checkbox

    So I made a report of a table on a page, but i have selected only a few columns 3/7. Now, i want that using checkboxes (or radio?) i want to select a specific line and then take me to another page to see the whole report only of that selected line 7/7. Can I do such thing?

    Hi
    OK - My reports are on two pages - 109 (partial report) and 110 (full report).
    The SQL query for the report on 109 is:
    SELECT APEX_ITEM.CHECKBOX(1, EMPNO) SHOW_DETAILS,
    EMPNO,
    ENAME,
    JOB
    FROM EMPThe SHOW_DETAILS column creates the checkboxes with the EMPNO as their values. Because I'm using the APEX_ITEM.CHECKBOX() function to create these, when the page is submitted I then have access to the APEX_APPLICATION.G_F01 collection (in a similar way to using a tabular form). I get the EMPNO values selected using a PL/SQL process on the page:
    DECLARE
    vFILTER VARCHAR2(1000);
    BEGIN
    vFILTER := APEX_UTIL.TABLE_TO_STRING(APEX_APPLICATION.G_F01);
    APEX_UTIL.SET_SESSION_STATE('P110_FILTER', vFILTER);
    END;This just converts the collection into a single string and sets an item on page 110 to this. This string will be in the format 1:2:3
    There is a button that triggers the process and then a branch to page 110
    On page 110, the report's SQL is:
    SELECT EMPNO,
    ENAME,
    JOB,
    MGR,
    HIREDATE,
    SAL,
    COMM,
    DEPTNO
    FROM EMP
    WHERE ':' || :P110_FILTER || ':' LIKE '%:' || EMPNO || ':%'The report region also contains the "Hidden and Protected" item called P110_FILTER - this is populated using the process on page 109 and used as a filter on the report on page 110
    There is a back button to go back to page 109 - this also clears the cache for page 110
    Andy

Maybe you are looking for