SAP Column tree
code as bellow
- *&---------------------------------------------------------------------*
- *& Include COLUMN_TREE_CONTROL_DEMOTOP *
- *& *
- *&---------------------------------------------------------------------*
- REPORT SAPCOLUMN_TREE_CONTROL_DEMO MESSAGE-ID TREE_CONTROL_MSG.
- CLASS LCL_APPLICATION DEFINITION DEFERRED.
- CLASS CL_GUI_CFW DEFINITION LOAD.
- * CAUTION: MTREEITM is the name of the item structure which must
- * be defined by the programmer. DO NOT USE MTREEITM!
- TYPES: ITEM_TABLE_TYPE LIKE STANDARD TABLE OF MTREEITM
- WITH DEFAULT KEY.
- DATA: G_APPLICATION TYPE REF TO LCL_APPLICATION,
- G_CUSTOM_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
- G_TREE TYPE REF TO CL_GUI_COLUMN_TREE,
- G_OK_CODE TYPE SY-UCOMM.
- * Fields on Dynpro 100
- DATA: G_EVENT(30),
- G_NODE_KEY TYPE TV_NODEKEY,
- G_ITEM_NAME TYPE TV_ITMNAME,
- G_HEADER_NAME TYPE TV_HDRNAME.
- CONSTANTS:
- BEGIN OF c_nodekey,
- root type tv_nodekey value 'Root', "#EC NOTEXT
- child1 TYPE tv_nodekey VALUE 'Child1', "#EC NOTEXT
- * child2 type tv_nodekey value 'Child2', "#EC NOTEXT
- new1 TYPE tv_nodekey VALUE 'New1', "#EC NOTEXT
- new2 TYPE tv_nodekey VALUE 'New2', "#EC NOTEXT
- * new3 type tv_nodekey value 'New3', "#EC NOTEXT
- * new4 type tv_nodekey value 'New4', "#EC NOTEXT
- END OF c_nodekey,
- BEGIN OF c_column,
- column1 TYPE tv_itmname VALUE 'Column1', "#EC NOTEXT
- column2 TYPE tv_itmname VALUE 'Column2', "#EC NOTEXT
- column3 TYPE tv_itmname VALUE 'Column3', "#EC NOTEXT
- END OF c_column.
- *** INCLUDE COLUMN_TREE_CONTROL_DEMOTOP
- *----------------------------------------------------------------------*
- * INCLUDE COLUMN_TREE_CONTROL_DEMOCL1 *
- *----------------------------------------------------------------------*
- CLASS LCL_APPLICATION DEFINITION.
- PUBLIC SECTION.
- METHODS:
- HANDLE_NODE_DOUBLE_CLICK
- FOR EVENT NODE_DOUBLE_CLICK
- OF CL_GUI_COLUMN_TREE
- IMPORTING NODE_KEY,
- HANDLE_HEADER_CLICK
- FOR EVENT HEADER_CLICK
- OF CL_GUI_COLUMN_TREE
- IMPORTING HEADER_NAME,
- HANDLE_EXPAND_NO_CHILDREN
- FOR EVENT EXPAND_NO_CHILDREN
- OF CL_GUI_COLUMN_TREE
- IMPORTING NODE_KEY,
- HANDLE_ITEM_DOUBLE_CLICK
- FOR EVENT ITEM_DOUBLE_CLICK
- OF CL_GUI_COLUMN_TREE
- IMPORTING NODE_KEY ITEM_NAME,
- HANDLE_BUTTON_CLICK
- FOR EVENT BUTTON_CLICK
- OF CL_GUI_COLUMN_TREE
- IMPORTING NODE_KEY ITEM_NAME,
- HANDLE_LINK_CLICK
- FOR EVENT LINK_CLICK
- OF CL_GUI_COLUMN_TREE
- IMPORTING NODE_KEY ITEM_NAME,
- HANDLE_CHECKBOX_CHANGE
- FOR EVENT CHECKBOX_CHANGE
- OF CL_GUI_COLUMN_TREE
- IMPORTING NODE_KEY ITEM_NAME CHECKED.
- ENDCLASS. "LCL_APPLICATION DEFINITION
- *----------------------------------------------------------------------*
- * CLASS LCL_APPLICATION IMPLEMENTATION
- *----------------------------------------------------------------------*
- *
- *----------------------------------------------------------------------*
- CLASS LCL_APPLICATION IMPLEMENTATION.
- METHOD HANDLE_NODE_DOUBLE_CLICK.
- " this method handles the node double click event of the tree
- " control instance
- " show the key of the double clicked node in a dynpro field
- G_EVENT = 'NODE_DOUBLE_CLICK'.
- G_NODE_KEY = NODE_KEY.
- CLEAR: G_ITEM_NAME, G_HEADER_NAME.
- ENDMETHOD. "HANDLE_NODE_DOUBLE_CLICK
- METHOD HANDLE_HEADER_CLICK.
- " this method handles header click event of the tree
- " control instance
- " show the name of the clicked header in a dynpro field
- G_EVENT = 'HEADER_CLICK'.
- G_HEADER_NAME = HEADER_NAME.
- CLEAR: G_NODE_KEY, G_ITEM_NAME.
- ENDMETHOD. "HANDLE_HEADER_CLICK
- METHOD HANDLE_ITEM_DOUBLE_CLICK.
- " this method handles the item double click event of the tree
- " control instance
- " show the key of the node and the name of the item
- " of the double clicked item in a dynpro field
- G_EVENT = 'ITEM_DOUBLE_CLICK'.
- G_NODE_KEY = NODE_KEY.
- G_ITEM_NAME = ITEM_NAME.
- CLEAR G_HEADER_NAME.
- ENDMETHOD. "HANDLE_ITEM_DOUBLE_CLICK
- METHOD HANDLE_LINK_CLICK.
- " this method handles the link click event of the tree
- " control instance
- " show the key of the node and the name of the item
- " of the clicked link in a dynpro field
- G_EVENT = 'LINK_CLICK'.
- G_NODE_KEY = NODE_KEY.
- G_ITEM_NAME = ITEM_NAME.
- CLEAR G_HEADER_NAME.
- ENDMETHOD. "HANDLE_LINK_CLICK
- METHOD HANDLE_BUTTON_CLICK.
- " this method handles the button click event of the tree
- " control instance
- " show the key of the node and the name of the item
- " of the clicked button in a dynpro field
- G_EVENT = 'BUTTON_CLICK'.
- G_NODE_KEY = NODE_KEY.
- G_ITEM_NAME = ITEM_NAME.
- CLEAR G_HEADER_NAME.
- ENDMETHOD. "HANDLE_BUTTON_CLICK
- METHOD HANDLE_CHECKBOX_CHANGE.
- " this method handles the checkbox_change event of the tree
- " control instance
- " show the key of the node and the name of the item
- " of the clicked checkbox in a dynpro field
- G_EVENT = 'CHECKBOX_CHANGE'.
- G_NODE_KEY = NODE_KEY.
- G_ITEM_NAME = ITEM_NAME.
- CLEAR G_HEADER_NAME.
- ENDMETHOD. "HANDLE_CHECKBOX_CHANGE
- METHOD HANDLE_EXPAND_NO_CHILDREN.
- DATA: NODE_TABLE TYPE TREEV_NTAB,
- NODE TYPE TREEV_NODE,
- ITEM_TABLE TYPE ITEM_TABLE_TYPE,
- ITEM TYPE MTREEITM.
- * show the key of the expanded node in a dynpro field
- G_EVENT = 'EXPAND_NO_CHILDREN'.
- G_NODE_KEY = NODE_KEY.
- CLEAR: G_ITEM_NAME, G_HEADER_NAME.
- IF node_key = c_nodekey-child1.
- * add two nodes
- * Node with key 'New1'
- CLEAR NODE.
- node-node_key = c_nodekey-New1.
- node-relatkey = c_nodekey-child1.
- NODE-RELATSHIP = CL_GUI_COLUMN_TREE=>RELAT_LAST_CHILD.
- APPEND NODE TO NODE_TABLE.
- * Node with key 'New2'
- CLEAR NODE.
- node-node_key = c_nodekey-New2.
- node-relatkey = c_nodekey-child1.
- NODE-RELATSHIP = CL_GUI_COLUMN_TREE=>RELAT_LAST_CHILD.
- NODE-N_IMAGE = '@10@'.
- APPEND NODE TO NODE_TABLE.
- * Items of node with key 'New1'
- CLEAR ITEM.
- item-node_key = c_nodekey-New1.
- item-item_name = c_column-Column1.
- item-class = cl_gui_column_tree=>item_class_text.
- item-text = 'New1 Col. 1'(n11).
- APPEND ITEM TO ITEM_TABLE.
- CLEAR ITEM.
- item-node_key = c_nodekey-New1.
- item-item_name = c_column-Column2.
- ITEM-CLASS = CL_GUI_COLUMN_TREE=>ITEM_CLASS_LINK.
- item-t_image = '@3C@'.
- APPEND ITEM TO ITEM_TABLE.
- CLEAR ITEM.
- item-node_key = c_nodekey-New1.
- item-item_name = c_column-Column3.
- item-class = cl_gui_column_tree=>item_class_text.
- item-text = 'New1 Col. 3'(n13).
- APPEND ITEM TO ITEM_TABLE.
- * Items of node with key 'New2'
- CLEAR ITEM.
- item-node_key = c_nodekey-New2.
- item-item_name = c_column-Column1.
- item-class = cl_gui_column_tree=>item_class_text.
- item-text = 'New2 Col. 1'(n21).
- APPEND ITEM TO ITEM_TABLE.
- CLEAR ITEM.
- item-node_key = c_nodekey-New2.
- item-item_name = c_column-Column2.
- item-class = cl_gui_column_tree=>item_class_text.
- item-text = 'New2 Col. 2'(n22).
- APPEND ITEM TO ITEM_TABLE.
- CLEAR ITEM.
- item-node_key = c_nodekey-New2.
- item-item_name = c_column-Column3.
- item-class = cl_gui_column_tree=>item_class_text.
- item-text = 'New2 Col. 3'(n23).
- APPEND ITEM TO ITEM_TABLE.
- CALL METHOD G_TREE->ADD_NODES_AND_ITEMS
- EXPORTING
- NODE_TABLE = NODE_TABLE
- ITEM_TABLE = ITEM_TABLE
- ITEM_TABLE_STRUCTURE_NAME = 'MTREEITM'
- EXCEPTIONS
- FAILED = 1
- CNTL_SYSTEM_ERROR = 3
- ERROR_IN_TABLES = 4
- DP_ERROR = 5
- TABLE_STRUCTURE_NAME_NOT_FOUND = 6.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- endif.
- ENDMETHOD. "HANDLE_EXPAND_NO_CHILDREN
- ENDCLASS. "LCL_APPLICATION IMPLEMENTATION
- *-------------------------------------------------------------------
- ***INCLUDE column_tree_control_demoO01 .
- *-------------------------------------------------------------------
- *&---------------------------------------------------------------------*
- *& Module PBO_0400 OUTPUT
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- MODULE PBO_100 OUTPUT.
- SET PF-STATUS 'MAIN'.
- IF G_TREE IS INITIAL.
- " The Tree Control has not been created yet.
- " Create a Tree Control and insert nodes into it.
- PERFORM CREATE_AND_INIT_TREE.
- ENDIF.
- ENDMODULE. " PBO_0100 OUTPUT
- *** INCLUDE column_tree_control_demoO01
- *-------------------------------------------------------------------
- ***INCLUDE column_tree_control_demoI01 .
- *-------------------------------------------------------------------
- *&---------------------------------------------------------------------*
- *& Module PAI_0400 INPUT
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- MODULE PAI_100 INPUT.
- data: return_code type i.
- * CL_GUI_CFW=>DISPATCH must be called if events are registered
- * that trigger PAI
- * this method calls the event handler method of an event
- CALL METHOD CL_GUI_CFW=>DISPATCH
- importing return_code = return_code.
- if return_code <> cl_gui_cfw=>rc_noevent.
- " a control event occured => exit PAI
- clear g_ok_code.
- exit.
- endif.
- CASE G_OK_CODE.
- WHEN 'BACK'. " Finish program
- IF NOT G_CUSTOM_CONTAINER IS INITIAL.
- " destroy tree container (detroys contained tree control, too)
- CALL METHOD G_CUSTOM_CONTAINER->FREE
- EXCEPTIONS
- CNTL_SYSTEM_ERROR = 1
- CNTL_ERROR = 2.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- CLEAR G_CUSTOM_CONTAINER.
- CLEAR G_TREE.
- ENDIF.
- LEAVE PROGRAM.
- ENDCASE.
- * CAUTION: clear ok code!
- CLEAR G_OK_CODE.
- ENDMODULE. " PAI_0100 INPUT
- *** INCLUDE column_tree_control_demoI01
- *-------------------------------------------------------------------
- ***INCLUDE column_tree_control_demoF01 .
- *-------------------------------------------------------------------
- *&---------------------------------------------------------------------*
- *& Form CREATE_AND_INIT_TREE
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- * --> p1 text
- * <-- p2 text
- *----------------------------------------------------------------------*
- FORM CREATE_AND_INIT_TREE.
- DATA: NODE_TABLE TYPE TREEV_NTAB,
- ITEM_TABLE TYPE ITEM_TABLE_TYPE,
- event type cntl_simple_event,
- EVENTS TYPE CNTL_SIMPLE_EVENTS,
- HIERARCHY_HEADER TYPE TREEV_HHDR.
- * create a container for the tree control
- CREATE OBJECT G_CUSTOM_CONTAINER
- EXPORTING
- " the container is linked to the custom control with the
- " name 'TREE_CONTAINER' on the dynpro
- CONTAINER_NAME = 'TREE_CONTAINER'
- EXCEPTIONS
- CNTL_ERROR = 1
- CNTL_SYSTEM_ERROR = 2
- CREATE_ERROR = 3
- LIFETIME_ERROR = 4
- LIFETIME_DYNPRO_DYNPRO_LINK = 5.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- * setup the hierarchy header
- hierarchy_header-heading = 'Hierarchy Header'(roo).
- " heading
- HIERARCHY_HEADER-WIDTH = 30. " width: 30 characters
- * create a tree control
- * After construction, the control contains one column in the
- * hierarchy area. The name of this column
- * is defined via the constructor parameter HIERACHY_COLUMN_NAME.
- CREATE OBJECT G_TREE
- EXPORTING
- PARENT = G_CUSTOM_CONTAINER
- NODE_SELECTION_MODE = CL_GUI_COLUMN_TREE=>NODE_SEL_MODE_SINGLE
- ITEM_SELECTION = 'X'
- hierarchy_column_name = c_column-Column1
- HIERARCHY_HEADER = HIERARCHY_HEADER
- EXCEPTIONS
- CNTL_SYSTEM_ERROR = 1
- CREATE_ERROR = 2
- FAILED = 3
- ILLEGAL_NODE_SELECTION_MODE = 4
- ILLEGAL_COLUMN_NAME = 5
- LIFETIME_ERROR = 6.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- * define the events which will be passed to the backend
- " node double click
- event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_NODE_DOUBLE_CLICK.
- event-appl_event = 'X'. " process PAI if event occurs
- append event to events.
- " item double click
- event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_ITEM_DOUBLE_CLICK.
- event-appl_event = 'X'.
- append event to events.
- " expand no children
- event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_EXPAND_NO_CHILDREN.
- event-appl_event = 'X'.
- append event to events.
- " link click
- event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_LINK_CLICK.
- event-appl_event = 'X'.
- append event to events.
- " button click
- event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_button_click.
- event-appl_event = 'X'.
- append event to events.
- " checkbox change
- event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_checkbox_change.
- event-appl_event = 'X'.
- append event to events.
- " header click
- event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_header_click.
- event-appl_event = 'X'.
- append event to events.
- CALL METHOD G_TREE->SET_REGISTERED_EVENTS
- EXPORTING
- EVENTS = EVENTS
- EXCEPTIONS
- CNTL_ERROR = 1
- CNTL_SYSTEM_ERROR = 2
- ILLEGAL_EVENT_COMBINATION = 3.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- * assign event handlers in the application class to each desired event
- SET HANDLER G_APPLICATION->HANDLE_NODE_DOUBLE_CLICK FOR G_TREE.
- SET HANDLER G_APPLICATION->HANDLE_ITEM_DOUBLE_CLICK FOR G_TREE.
- SET HANDLER G_APPLICATION->HANDLE_EXPAND_NO_CHILDREN FOR G_TREE.
- SET HANDLER G_APPLICATION->HANDLE_LINK_CLICK FOR G_TREE.
- SET HANDLER G_APPLICATION->HANDLE_BUTTON_CLICK FOR G_TREE.
- SET HANDLER G_APPLICATION->HANDLE_CHECKBOX_CHANGE FOR G_TREE.
- SET HANDLER G_APPLICATION->HANDLE_HEADER_CLICK FOR G_TREE.
- * insert two additional columns
- * Column2
- CALL METHOD G_TREE->ADD_COLUMN
- EXPORTING
- name = c_column-Column2
- width = 21
- header_text = 'Column2'(co2)
- EXCEPTIONS
- COLUMN_EXISTS = 1
- ILLEGAL_COLUMN_NAME = 2
- TOO_MANY_COLUMNS = 3
- ILLEGAL_ALIGNMENT = 4
- DIFFERENT_COLUMN_TYPES = 5
- CNTL_SYSTEM_ERROR = 6
- FAILED = 7
- PREDECESSOR_COLUMN_NOT_FOUND = 8.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- * Column3
- CALL METHOD G_TREE->ADD_COLUMN
- EXPORTING
- name = c_column-Column3
- width = 21
- alignment = cl_gui_column_tree=>align_right
- header_text = 'Column3'(co3)
- EXCEPTIONS
- COLUMN_EXISTS = 1
- ILLEGAL_COLUMN_NAME = 2
- TOO_MANY_COLUMNS = 3
- ILLEGAL_ALIGNMENT = 4
- DIFFERENT_COLUMN_TYPES = 5
- CNTL_SYSTEM_ERROR = 6
- FAILED = 7
- PREDECESSOR_COLUMN_NOT_FOUND = 8.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- * add some nodes to the tree control
- * NOTE: the tree control does not store data at the backend. If an
- * application wants to access tree data later, it must store the
- * tree data itself.
- PERFORM BUILD_NODE_AND_ITEM_TABLE USING NODE_TABLE ITEM_TABLE.
- CALL METHOD G_TREE->ADD_NODES_AND_ITEMS
- EXPORTING
- NODE_TABLE = NODE_TABLE
- ITEM_TABLE = ITEM_TABLE
- ITEM_TABLE_STRUCTURE_NAME = 'MTREEITM'
- EXCEPTIONS
- FAILED = 1
- CNTL_SYSTEM_ERROR = 3
- ERROR_IN_TABLES = 4
- DP_ERROR = 5
- TABLE_STRUCTURE_NAME_NOT_FOUND = 6.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- * expand the node with key 'Root'
- CALL METHOD G_TREE->EXPAND_NODE
- EXPORTING
- node_key = c_nodekey-Root
- EXCEPTIONS
- FAILED = 1
- ILLEGAL_LEVEL_COUNT = 2
- CNTL_SYSTEM_ERROR = 3
- NODE_NOT_FOUND = 4
- CANNOT_EXPAND_LEAF = 5.
- IF SY-SUBRC <> 0.
- MESSAGE A000.
- ENDIF.
- ENDFORM. " CREATE_AND_INIT_TREE
- *&---------------------------------------------------------------------*
- *& Form build_node_and_item_table
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- * --> p1 text
- * <-- p2 text
- *----------------------------------------------------------------------*
- FORM BUILD_NODE_AND_ITEM_TABLE
- USING
- NODE_TABLE TYPE TREEV_NTAB
- ITEM_TABLE TYPE ITEM_TABLE_TYPE.
- DATA: NODE TYPE TREEV_NODE,
- ITEM TYPE MTREEITM.
- * Build the node table.
- * Caution: The nodes are inserted into the tree according to the order
- * in which they occur in the table. In consequence, a node must not
- * must not occur in the node table before its parent node.
- * Node with key 'Root'
- node-node_key = c_nodekey-Root.
- " Key of the node
- CLEAR NODE-RELATKEY. " Special case: A root node has no parent
- CLEAR NODE-RELATSHIP. " node.
- NODE-HIDDEN = ' '. " The node is visible,
- NODE-DISABLED = ' '. " selectable,
- NODE-ISFOLDER = 'X'. " a folder.
- CLEAR NODE-N_IMAGE. " Folder-/ Leaf-Symbol in state "closed":
- " use default.
- CLEAR NODE-EXP_IMAGE. " Folder-/ Leaf-Symbol in state "open":
- " use default
- CLEAR NODE-EXPANDER. " see below.
- APPEND NODE TO NODE_TABLE.
- * Node with key 'Child1'
- node-node_key = c_nodekey-child1.
- " Key of the node
- " Node is inserted as child of the node with key 'Root'.
- node-relatkey = c_nodekey-Root.
- NODE-RELATSHIP = CL_GUI_COLUMN_TREE=>RELAT_LAST_CHILD.
- NODE-HIDDEN = ' '.
- NODE-DISABLED = ' '.
- NODE-ISFOLDER = 'X'.
- CLEAR NODE-N_IMAGE.
- CLEAR NODE-EXP_IMAGE.
- NODE-EXPANDER = 'X'. " The node is marked with a '+', although
- " it has no children. When the user clicks on the
- " + to open the node, the event expand_nc is
- " fired. The programmerr can
- " add the children of the
- " node within the event handler of the expand_nc
- " event (see callback handle_expand_nc).
- APPEND NODE TO NODE_TABLE.
- * The items of the nodes:
- * Node with key 'Root'
- CLEAR ITEM.
- item-node_key = c_nodekey-Root.
- item-item_name = c_column-Column1. " Item of Column 'Column1'
- item-class = cl_gui_column_tree=>item_class_text. " Text Item
- item-text = 'Root Col. 1'(ro1).
- APPEND ITEM TO ITEM_TABLE.
- CLEAR ITEM.
- item-node_key = c_nodekey-Root.
- item-item_name = c_column-Column2. " Item of Column 'Column2'
- item-class = cl_gui_column_tree=>item_class_text.
- item-text = 'Root Col. 2'(ro2).
- APPEND ITEM TO ITEM_TABLE.
- CLEAR ITEM.
- item-node_key = c_nodekey-Root.
- item-item_name = c_column-Column3. " Item of Column 'Column3'
- " Item is a link (click on link fires event LINK_CLICK)
- item-class = cl_gui_column_tree=>item_class_link.
- item-text = 'Root Col. 3'(ro3).
- APPEND ITEM TO ITEM_TABLE.
- * Node with key 'Child1'
- CLEAR ITEM.
- item-node_key = c_nodekey-Child1.
- item-item_name = c_column-Column1.
- item-class = cl_gui_column_tree=>item_class_text.
- item-text = 'Child1 Col. 1'(c11).
- APPEND ITEM TO ITEM_TABLE.
- CLEAR ITEM.
- item-node_key = c_nodekey-Child1.
- item-item_name = c_column-Column2. "
- item-class = cl_gui_column_tree=>item_class_button. " Item is a button
- item-text = 'Child1 Col. 2'(c12).
- ITEM-T_IMAGE = '@0B@'.
- APPEND ITEM TO ITEM_TABLE.
- CLEAR ITEM.
- item-node_key = c_nodekey-Child1.
- item-item_name = c_column-Column3.
- " Item is a checkbox
- ITEM-CLASS = CL_GUI_COLUMN_TREE=>ITEM_CLASS_CHECKBOX.
- ITEM-EDITABLE = 'X'.
- item-text = 'Child1 Col. 3'(c13).
- ITEM-T_IMAGE = '@0C@'.
- APPEND ITEM TO ITEM_TABLE.
- ENDFORM. " build_node_and_item_table
- *** INCLUDE column_tree_control_demoF01
- START-OF-SELECTION.
- * create the application object
- * this object is needed to handle the ABAP Objects Events of
- * Controls
- CREATE OBJECT G_APPLICATION.
- SET SCREEN 100.
SAP Column tree的更多相关文章
- SAP Easy tree
*&---------------------------------------------------------------------* *& Include SIMPLE_T ...
- SAP Tree editor(树形结构)
SAP List Tree 效果 源代码 *&---------------------------------------------------------------------* *& ...
- 屏幕 Dynpro
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- ALV详解:OO ALV
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- SAP CRM 树视图(TREE VIEW)
树视图可以用于表示数据的层次. 例如:SAP CRM中的组织结构数据可以表示为树视图. 在SAP CRM Web UI的术语当中,没有像表视图(table view)或者表单视图(form view) ...
- LeetCode Javascript实现 100. Same Tree 171. Excel Sheet Column Number
100. Same Tree /** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; ...
- U面经Prepare: Print Binary Tree With No Two Nodes Share The Same Column
Give a binary tree, elegantly print it so that no two tree nodes share the same column. Requirement: ...
- SAP Material Type on Classification Tree(ClassMaster management)
SAP Material Type on Classification Tree(ClassMaster management) 1. Classification Tree 是 luxottica ...
- SAP Drag or drop tree
1 *&---------------------------------------------------------------------* 2 *& Report RSDEM ...
随机推荐
- 高精度减法(C++实现)
高精度减法 简介 用于计算含有超过一般变量存放不下的非负整数 高精度加法这个过程是模拟的小学竖式减法计算 注:在本文中,我们默认输入的第一个数为被减数,且被减数大于减数 原理基本上与高精度加法相同,仅 ...
- vue 组件复用 - component
vue 组件复用 - component vue 组件复用 就是对 component 标签的使用 先看图 下图看使用 结果: 可以看到 在箱包 这一项,我将banner 组件用了两次,我 每次 点击 ...
- css的过渡transition和动画animation
过渡 过渡(transition)是CSS3中具有颠覆性的特性之一,我们可以在不使用Flash动画或JavaScript的情况下,当元素从一种样式变换为另一种样式时元素添加效果.过渡动画:是从一个状态 ...
- Ubuntu 系统安装,VMware
系统版本 ubuntu-18.04.5-server-amd64.iso 1.自定义安装 2.默认下一步 3. 稍后安装操作系统 4.选择ubuntu 64位 5.选额安装的目录 6.设置虚拟机c ...
- NS2中couldn‘t read file “../tcl/mobility/scene/cbr-3-test“: no such file or directory解决方法
运行wireless.tcl 文件时报错:couldn't read file "../../uAMPS/ns-leach.tcl": no such file or direct ...
- linux下虚拟环境venv的创建与使用以及virtualenvwrapper
1.linux安装学习python虚拟环境 linux提供的虚拟环境工具 有virtualenv pipenv 2.我们需求是在linux上可以运行 一个django2 运行一个django1 3.安 ...
- linux的简介与安装
linux简介: https://www.cnblogs.com/pyyu/p/9277153.html Linux就是个操作系统:它和Windows XP.Windows7.8.10什么的一样就是一 ...
- Flutter网络请求和数据解析
一:前言 - 什么是反射机制,Flutter为什么禁用反射机制? 在Flutter中它的网络请求和数据解析稍微的比较麻烦一点,因为Flutter不支持反射机制.相信大家都看到这么一条,就是Flutte ...
- CentOS6安装PLEX
CentOS6安装PLEX 一.安装使用PLEX 1.1 安装 1)下载 https://www.plex.tv/downloads/ plexmediaserver-1.11.3.4803-c40b ...
- linux篇-linux修改网卡名(亲测有效)
1查看网卡ip addr 2cd /etc/sysconfig/network-scripts Ls查看 3mv ifcfg-eno16777736 ifcfg-eth0重命名,然后编辑 最后一行加入 ...