ALV配置表管理

一.字段属性配置表

对于可编辑的ALV不用这个,尽可能多的设置一些控制:

单元格类型:默认A,特殊选择

ZLYE_TYPE        E       A       1                Text Field                    A

ZLYE_TYPE        E       A       2                Check Box                           B

ZLYE_TYPE        E       A       3                Drop Down                         C

ZLYE_TYPE        E       A       4                Link                     D

ZLYE_TYPE        E       A       5                Link Url                       E

ZLYE_TYPE        E       A       6                Button                        F

做成配置表,也可以用前面的自建表批导程序批导。

二.配置表在ALV中的使用

1.在WDA  Component中添加ALV组件并激活:

2. Component Controller中创建结果节点

3.将ALV组件添加到使用的VIEW中:

METHOD init_alv .
DATA: lr_comp_alv TYPE REF TO if_wd_component_usage,
lr_comp_if_alv TYPE REF TO iwci_salv_wd_table.
DATA:gt_zlyt001 TYPE TABLE OF zlyt001,
gw_zlyt001 LIKE LINE OF gt_zlyt001,
gv_string TYPE string. DATA: lr_column_settings TYPE REF TO if_salv_wd_column_settings,
lr_column TYPE REF TO cl_salv_wd_column,
lr_column_header TYPE REF TO cl_salv_wd_column_header. DATA: lt_column TYPE salv_wd_t_column_ref,
ls_column TYPE salv_wd_s_column_ref. ****"定义特殊格式的类型
DATA: lr_input_field TYPE REF TO cl_salv_wd_uie_input_field,
lr_checkbox TYPE REF TO cl_salv_wd_uie_checkbox,
lr_button TYPE REF TO cl_salv_wd_uie_button,
lr_link TYPE REF TO cl_salv_wd_uie_link_to_action,
lr_linu TYPE REF TO cl_salv_wd_uie_link_to_url,
lr_image TYPE REF TO cl_salv_wd_uie_image,
lr_dropdown_by_key TYPE REF TO cl_salv_wd_uie_dropdown_by_key.
DATA lr_column_id TYPE string.
****
DATA: lr_field_amnt TYPE REF TO cl_salv_wd_field . DATA: lv_aggr_rule TYPE REF TO cl_salv_wd_aggr_rule,
lr_sort_rule TYPE REF TO cl_salv_wd_sort_rule. "创建组件/实例化组件
lr_comp_alv = wd_this->wd_cpuse_alv( ) .
IF lr_comp_alv->has_active_component( ) IS INITIAL.
lr_comp_alv->create_component( ).
ENDIF. DATA lr_config TYPE REF TO cl_salv_wd_config_table.
DATA:lr_func_config TYPE REF TO cl_salv_wd_config_table.
"获取ALV对象的设置对象
lr_comp_if_alv = wd_this->wd_cpifc_alv( ).
lr_config = lr_comp_if_alv->get_model( ).
lr_func_config = lr_comp_if_alv->get_model( ). lr_column_settings ?= lr_config .
lt_column = lr_column_settings->get_columns( )."获取ALV字段
"取配置表数据
SELECT * INTO TABLE gt_zlyt001 FROM zlyt001 WHERE sales_org = wd_this->sales_org
AND component_name = 'ZHSI_INVOICE'
AND alv = 'ALV'.
SORT gt_zlyt001 BY posit ASCENDING." *========================================================= DATA: l_value TYPE REF TO cl_salv_wd_config_table. l_value = lr_comp_if_alv->get_model( ).
l_value->if_salv_wd_table_settings~set_fixed_table_layout( abap_true ). "使列宽不可自动调节
l_value->if_salv_wd_table_settings~set_width( '100%' ) . "设置宽度
l_value->if_salv_wd_table_settings~set_visible_row_count( '' ). "显示的行数
l_value->if_salv_wd_table_settings~set_scrollable_col_count( '' )."设置滚动条行数
l_value->if_salv_wd_table_settings~set_read_only( abap_true )."设置只读
l_value->if_salv_wd_table_settings~set_display_empty_rows( abap_false )."设置空表也显示alv行
l_value->if_salv_wd_table_settings~set_selection_mode( cl_wd_table=>e_selection_mode-multi_no_lead )."多选无lead
l_value->if_salv_wd_function_settings~set_enabled( abap_true ) ."功能
l_value->if_salv_wd_std_functions~set_edit_check_available( abap_false ) .
l_value->if_salv_wd_std_functions~set_edit_insert_row_allowed( abap_false ) .
l_value->if_salv_wd_std_functions~set_export_allowed( abap_true ) ."可excel导出
* l_value->if_salv_wd_std_functions~set_view_list_allowed( abap_false ).
l_value->if_salv_wd_std_functions~set_pdf_allowed( abap_false ) ."可pdf导出
l_value->if_salv_wd_std_functions~set_edit_append_row_allowed( abap_false ) .
l_value->if_salv_wd_std_functions~set_edit_delete_row_allowed( abap_false ) .
l_value->if_salv_wd_std_functions~set_filter_filterline_allowed( abap_true ).
l_value->if_salv_wd_std_functions~set_filter_complex_allowed( abap_true )."多字段筛选
* l_value->if_salv_wd_std_functions~set_dialog_settings_allowed( abap_true ). DATA: lr_table_settings TYPE REF TO if_salv_wd_table_settings.
lr_table_settings ?= l_value.
lr_table_settings->set_data_check( '' ).
lr_table_settings->set_read_only( abap_false ). LOOP AT lt_column INTO ls_column.
lr_column_id = ls_column-id.
lr_column = ls_column-r_column. lr_column->set_resizable( value = 'X' ).
lr_column->set_width( value = '' ). READ TABLE gt_zlyt001 INTO gw_zlyt001 WITH KEY field = ls_column-id.
IF sy-subrc = .
IF gw_zlyt001-visiable = 'X'.
lr_column_header = ls_column-r_column->create_header( ).
ls_column-r_column->set_position( gw_zlyt001-posit ).
CASE gw_zlyt001-field_type.
WHEN 'B'.
CREATE OBJECT lr_checkbox
EXPORTING
checked_fieldname = ls_column-id.
lr_column->set_cell_editor( lr_checkbox ).
WHEN 'C'.
WHEN 'D'.
CREATE OBJECT lr_link.
lr_link->set_text_fieldname( ls_column-id ).
ls_column-r_column->set_cell_editor( lr_link ).
lr_column->set_cell_editor( lr_link ).
WHEN 'E'.
WHEN 'F'.
WHEN OTHERS.
ENDCASE.
IF gw_zlyt001-text CS 'CRM/'."otr text使用特定格式的
gv_string = gw_zlyt001-text.
lr_column_header->set_text( zcl_otr=>get_text( gv_string ) ).
ELSE.
IF gw_zlyt001-text IS NOT INITIAL.
gv_string = gw_zlyt001-text.
lr_column_header->set_text( gv_string ).
ENDIF.
ENDIF.
ELSE.
ls_column-r_column->set_position( gw_zlyt001-posit ).
lr_column = lr_column_settings->get_column( ls_column-id ).
lr_column->set_visible( if_wdl_core=>visibility_none ).
ENDIF.
ENDIF.
ENDLOOP. DATA lr_buttonui TYPE REF TO cl_salv_wd_fe_button.
DATA lv_function TYPE REF TO cl_salv_wd_function. CREATE OBJECT lr_buttonui.
lr_buttonui->set_text( zcl_otr=>get_text( 'ZCRM/PRINT') ).
lr_buttonui->set_image_source( 'ICON_PRINT' ).
lv_function = l_value->if_salv_wd_function_settings~create_function( id = 'PRINT' ).
lv_function->set_alignment( '' ).
lv_function->set_editor( lr_buttonui ).
lv_function->set_visible( '' ). ENDMETHOD.

WDA基础十四:ALV字段属性配置表的更多相关文章

  1. WDA基础十六:ALV的颜色

    这里介绍三种类型的颜色:列的背景色,单元格的背景色,单元格文本的颜色. 1.给ALV结构添加颜色控制字段: 三个字段都是同一类型:WDY_UIE_LIBRARY_ENUM_TYPE COL_BACKG ...

  2. Bootstrap<基础十四> 按钮下拉菜单

    使用 Bootstrap class 向按钮添加下拉菜单.如需向按钮添加下拉菜单,只需要简单地在在一个 .btn-group 中放置按钮和下拉菜单即可.也可以使用 <span class=&qu ...

  3. Bootstrap入门(二十四)data属性

    Bootstrap入门(二十四)data属性 你可以仅仅通过 data 属性 API 就能使用所有的 Bootstrap 插件,无需写一行 JavaScript 代码.这是 Bootstrap 中的一 ...

  4. VSTO学习笔记(十四)Excel数据透视表与PowerPivot

    原文:VSTO学习笔记(十四)Excel数据透视表与PowerPivot 近期公司内部在做一种通用查询报表,方便人力资源分析.统计数据.由于之前公司系统中有一个类似的查询使用Excel数据透视表完成的 ...

  5. WDA基础十八:Select option配置

    为了省代码...为了方便管理WDA的查询条件... 首先建配置表: 说明: 上面的KEY基本都是维护的维度,可以根据销售组织,根据用户组,根据组件,根据SELECT OPTION的不同...等等,可以 ...

  6. WDA基础五:ALV组件的使用

    说明,因为ALV的功能比TABLE强大,所以在很多时候都习惯性的选择ALV显示. ALV是WDA的组件,封装好的,和SELECT OPTION一样.所以使用的方法一般就是:引入组件,初始化组件,数据绑 ...

  7. vue.js基础知识篇(3):计算属性、表单控件绑定

    第四章:计算属性 为了避免过多的逻辑造成模板的臃肿不堪,可使用计算属性来简化逻辑. 1.什么是计算属性 <!DOCTYPE html><html lang="en" ...

  8. 阿里druid数据源属性配置表

    https://cloud.tencent.com/developer/article/1368903 DRUID 属性说明表 属性(Parameter) 默认值(Default) 描述(Descri ...

  9. WDA基础十二:FREE PROGRAM SH (WDA TREE)

    一个需要用TREE展示搜索帮助的需求: 1.创建WDA程序:ZCATEGORY 2.Component Controller中添加节点: (说明,此节点仅在搜索帮助程序中使用,可以不用interfac ...

随机推荐

  1. OpenCV学习一《Linux下安装OpenCV》

    第一步:安装源码前先安装好需要的第三⽅方环境 需要的编译环境■ [compiler] sudo apt-get install build-essential #  注释说明 64位ubuntu在安装 ...

  2. docker 命令2

    docker build -t dvm.adsplatformproxy:v1.0.0 . #build images docker run -e WWNamespace=dev -e ZKServe ...

  3. 2017-2018-2 20165306 实验三《敏捷开发与XP实践》实验报告

    实验三<敏捷开发与XP实践>实验报告 实验报告封面 实验内容 XP基础 XP核心实践 相关工具 实验步骤 (一) 敏捷开发与XP实践-1 实验要求: 参考 代码规范 安装alibaba 插 ...

  4. go 一波走起

    $ go run helloworld.go 运行 $ go build helloworld.go 编译 该命令生成一个名为helloworld的可执行的二进制文件,可以随时运行它 $ ./hell ...

  5. Codeforces 781D Axel and Marston in Bitland

    题目链接:http://codeforces.com/contest/781/problem/D ${F[i][j][k][0,1]}$表示是否存在从${i-->j}$的路径走了${2^{k}} ...

  6. tomcat+nginx实现均衡负载

    在项目运营时,我们都会遇到一个问题,项目需要更新时,我们可能需先暂时关闭下服务器来更新.但这可能会出现一些状况: 1.用户还在操作,被强迫终止了(我们可以看日志等没人操作的时候更新,但总可能会有万一) ...

  7. config配置

    <?php /** * User: Eden * Date: 2019/3/30 * 共有内容 */ /** CREATE TABLE `tf_configs` ( `id` int(11) N ...

  8. python中那些双下划线开头得函数和变量

    Python中下划线---完全解读     Python 用下划线作为变量前缀和后缀指定特殊变量 _xxx 不能用’from module import *’导入 __xxx__ 系统定义名字 __x ...

  9. Qt532的QString输出各种编码的16进制数组(测试代码)

    环境:Win7x64.Qt5.3.2 MSVC2010 OpenGL.vs2010 1.只测试了 4种:Utf8.Latin1.Local8Bit.unicode 2.测试代码:(这个是 " ...

  10. 聊聊 Nginx 的反向代理

    背景 最近在优化服务基础设施这块,正好有时间写一下Nginx的体会.相信大家都听说过反向代理,一提到反向代理一定会想到Nginx.什么你没听过Nginx?那么你一定听说过Apache吧!Apache是 ...