- 浏览: 762962 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (573)
- Java基础 (76)
- C++基础 (5)
- hibernate (5)
- struts (4)
- spring (1)
- webservice (7)
- AjaX基础 (0)
- JS脚本 (53)
- 正则表达式 (5)
- html脚本 (30)
- 数据库基础 (54)
- 工作相关 (49)
- 其他 (30)
- Linux (9)
- web服务器 (17)
- JSP (13)
- eclipse (6)
- 面试题相关 (20)
- XML (3)
- Apache common (2)
- 生活 (35)
- VMware (1)
- log4j (9)
- BeanUtils (2)
- 设计模式 (3)
- UML (1)
- UNIX (1)
- ibats (5)
- GT-Grid (17)
- ABAP学习 (17)
- ABAP (35)
- ABAP--ALV (11)
- ABAP--WEBDIMPRO (0)
- abap-sample (1)
- BEMS (2)
- flex (33)
- GIS技术 (3)
最新评论
Bob 发表于 ABAP 分类,标签: ALV, Excel
在sdn中看到有人问这个问题, 于是做个简单的例子来说明如何避免, 或者说解决这个问题.
1. 写个小程序, 用alv来显示表vbak的内容.
2. 问题现象重现
执行上面的程序,效果如下:
3. fieldcat设定
设置如下就可以显示前导零的问题
4. 问题解决效果
在sdn中看到有人问这个问题, 于是做个简单的例子来说明如何避免, 或者说解决这个问题.
1. 写个小程序, 用alv来显示表vbak的内容.
*&---------------------------------------------------------------------* *& Report ZALV_INPLACE *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT zalv_inplace. *&---------------------------------------------------------------------* * TABLES *&---------------------------------------------------------------------* TABLES:vbak. *&---------------------------------------------------------------------* *-->TYPE DEFINITION *&---------------------------------------------------------------------* TYPES: BEGIN OF ty_tab. INCLUDE TYPE vbak. TYPES:END OF ty_tab. *&---------------------------------------------------------------------* * SELECTION-SCREEN *&---------------------------------------------------------------------* SELECTION-SCREEN: BEGIN OF BLOCK b01 WITH FRAME TITLE text-b02. SELECT-OPTIONS s_vbeln for vbak-vbeln. SELECTION-SCREEN: END OF BLOCK b01. *&---------------------------------------------------------------------* *-->CLASS DEFINITION DEFERRED *&---------------------------------------------------------------------* CLASS lcl_layout DEFINITION DEFERRED. CLASS lcl_fieldcat DEFINITION DEFERRED. CLASS lcl_data DEFINITION DEFERRED. CLASS lcl_event DEFINITION DEFERRED. *&---------------------------------------------------------------------* *--> Global data definitions for ALV *&---------------------------------------------------------------------* *--- ALV Grid instance reference DATA ref_alv TYPE REF TO cl_gui_alv_grid . *--- Custom container instance reference DATA ref_con TYPE REF TO cl_gui_custom_container . *--Data for screen command DATA: save_ok LIKE sy-ucomm, ok_code LIKE sy-ucomm. DATA: var TYPE disvariant. *&---------------------------------------------------------------------* *-->CLASS DATA DEFINITION *&---------------------------------------------------------------------* DATA ref_layout TYPE REF TO lcl_layout. DATA ref_fieldcat TYPE REF TO lcl_fieldcat. DATA ref_data TYPE REF TO lcl_data. DATA ref_event TYPE REF TO lcl_event. DATA: itab TYPE TABLE OF vbak. *&---------------------------------------------------------------------* *-->CLASS DEFINITION *&---------------------------------------------------------------------* CLASS lcl_layout DEFINITION. PUBLIC SECTION. DATA: s_layout TYPE lvc_s_layo . METHODS: prepare_layout. ENDCLASS. "lcl_layout DEFINITION *----------------------------------------------------------------------* * CLASS lcl_fieldcat DEFINITION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS lcl_fieldcat DEFINITION. PUBLIC SECTION. DATA: it_fieldcat TYPE lvc_t_fcat. METHODS: prepare_fieldcat. PRIVATE SECTION. DATA: s_fieldcat TYPE lvc_s_fcat. ENDCLASS. "lcl_fieldcat DEFINITION *----------------------------------------------------------------------* * CLASS lcl_data DEFINITION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS lcl_data DEFINITION. PUBLIC SECTION. DATA:itab TYPE TABLE OF ty_tab. data:itab_del type TABLE OF ty_tab. TYPES: ttab TYPE TABLE OF ty_tab. METHODS: prepare_data. * METHODS: update_color CHANGING itab TYPE ttab. PRIVATE SECTION. DATA: rs_data TYPE REF TO ty_tab. ENDCLASS. "lcl_data DEFINITION *----------------------------------------------------------------------* * CLASS lcl_event DEFINITION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS lcl_event DEFINITION. PUBLIC SECTION. METHODS: handle_before_user_command FOR EVENT before_user_command OF cl_gui_alv_grid IMPORTING e_ucomm. METHODS:handle_user_command FOR EVENT user_command OF cl_gui_alv_grid IMPORTING e_ucomm sender. ENDCLASS. "lcl_event DEFINITION *----------------------------------------------------------------------* * CLASS lcl_event IMPLEMENTATION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS lcl_event IMPLEMENTATION. METHOD handle_before_user_command. CASE e_ucomm. WHEN '&VEXCEL'. BREAK-POINT. ENDCASE. ENDMETHOD. "handle_data_changed_finished METHOD handle_user_command. ENDMETHOD. "handle_data_changed_finished ENDCLASS. "lcl_event IMPLEMENTATION *&---------------------------------------------------------------------* *-->CLASS IMPLEMENTATOIN *&---------------------------------------------------------------------* CLASS lcl_layout IMPLEMENTATION. METHOD prepare_layout. s_layout-smalltitle ='X' . s_layout-grid_title ='SIH Project Development List'(099). s_layout-sel_mode ='A' . ENDMETHOD. "prepare_layout ENDCLASS. "lcl_layout IMPLEMENTATION *----------------------------------------------------------------------* * CLASS lcl_fieldcat IMPLEMENTATION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS lcl_fieldcat IMPLEMENTATION. METHOD prepare_fieldcat. FIELD-SYMBOLS: <fcat> TYPE lvc_s_fcat. CALL FUNCTION 'LVC_FIELDCATALOG_MERGE' EXPORTING i_structure_name = 'VBAK' CHANGING ct_fieldcat = it_fieldcat EXCEPTIONS inconsistent_interface = 1 program_error = 2 OTHERS = 3. loop at it_fieldcat ASSIGNING <fcat>. case <fcat>-fieldname. when 'VBELN'. * <fcat>- endcase. endloop. ENDMETHOD. "prepare_fieldcat ENDCLASS. "lcl_fieldcat IMPLEMENTATION *----------------------------------------------------------------------* * CLASS lcl_data IMPLEMENTATION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS lcl_data IMPLEMENTATION. METHOD prepare_data. *--->Get data SELECT * FROM VBAK INTO CORRESPONDING FIELDS OF TABLE itab WHERE VBELN IN S_VBELN. ENDMETHOD. "prepare_data "update_color ENDCLASS. "lcl_data IMPLEMENTATION START-OF-SELECTION. * Call alv grid screen CALL SCREEN 9000. *&---------------------------------------------------------------------* *& Module INIT_SCREEN OUTPUT *&---------------------------------------------------------------------* MODULE init_screen OUTPUT. SET PF-STATUS 'STAT'. PERFORM frm_display_alv. ENDMODULE. " INIT_SCREEN OUTPUT *&---------------------------------------------------------------------* *& Module USER_COMMAND INPUT *&---------------------------------------------------------------------* MODULE user_command INPUT. data: la type c. save_ok = ok_code. CASE save_ok. WHEN 'BACK' OR 'EXIT' OR 'CANC'. LEAVE to SCREEN 0. ENDCASE. ENDMODULE. " USER_COMMAND_9000 INPUT *&---------------------------------------------------------------------* *& Form frm_display_alv *&---------------------------------------------------------------------* FORM frm_display_alv . * Local data definition DATA: var TYPE disvariant. "Variant IF ref_alv IS INITIAL. *-->Create customer container CREATE OBJECT ref_con EXPORTING container_name = 'ALV_CON'. *-->Create alv grid CREATE OBJECT ref_alv EXPORTING i_parent = ref_con. *-->Create fieldcatlog for alv CREATE OBJECT ref_fieldcat. CALL METHOD ref_fieldcat->prepare_fieldcat. *-->Set layout property CREATE OBJECT ref_layout. CALL METHOD ref_layout->prepare_layout. *-->Get data. CREATE OBJECT ref_data. CALL METHOD ref_data->prepare_data. *-->Register event CREATE OBJECT ref_event. SET HANDLER ref_event->handle_before_user_command FOR ref_alv. SET HANDLER ref_event->handle_user_command FOR ref_alv. * Register edit events CALL METHOD ref_alv->register_edit_event EXPORTING i_event_id = cl_gui_alv_grid=>mc_evt_enter. *-->Display data var-report = sy-repid. CALL METHOD ref_alv->set_table_for_first_display EXPORTING is_variant = var i_save = 'A' i_default = 'X' is_layout = ref_layout->s_layout CHANGING it_outtab = ref_data->itab it_fieldcatalog = ref_fieldcat->it_fieldcat EXCEPTIONS invalid_parameter_combination = 1 program_error = 2 too_many_lines = 3 OTHERS = 4. ELSE. *-->Refresh display CALL METHOD ref_alv->refresh_table_display. ENDIF. ENDFORM. " frm_display_alv
2. 问题现象重现
执行上面的程序,效果如下:
3. fieldcat设定
设置如下就可以显示前导零的问题
when 'VBELN'. <fcat>-NO_CONVEXT = 'X'.
4. 问题解决效果
发表评论
-
ALV 报表小结二
2010-04-09 09:35 2050二. OOPS 1. 面向对像的 ... -
ALV TUTOTIAL FOR BEGINERS WITH EXAMPLES
2010-04-09 09:33 4285Author: fareedas Date: 15/04 ... -
ALV 报表小结一
2010-04-09 09:31 24422009-02-23 在PA教程中,对AL ... -
如何设置'REUSE_ALV_GRID_DISPLAY'的单个单元格的颜色
2010-04-08 22:45 1124在ALV报表设计有时候需要根据一定条件将特定的单元显示成特定的 ... -
ALV常用参数详解
2010-04-08 22:25 1662ALV常用参数详解 CALL FUNCTION 'REU ... -
ABAP-ALV
2010-04-08 16:27 1651REPORT z_scott_alv_3. *Defi ... -
SAP学习日志--ALV的创建
2010-04-08 15:56 2620ALV grid control 是当前比较流行的交互式报表 ... -
ALV调用Excel inplace不能传递数据问题解决方法
2010-04-08 14:47 1140ALV调用Excel inplace不能传递数据问题解决方法 ... -
ABAP:ALV List报表
2010-04-08 10:43 2798[color=darkblue]ALV List是SAP ... -
ALV输出示例
2010-04-08 09:18 1152*============================ ...
相关推荐
从ALV导出数据到EXCEL时数据丢失位数的解决方法.doc
ALV导出excel时窜行
ABAP 编程: ABAP ALV取消整数小数点后面的0
ALV是ABAP报表开发中经常用到的表单工具,用户经常需要将ALV中的数据进行打印或Excel导出,这样就需要对ALV的工具条进行扩展,添加自定义按钮,本文详细介绍了,如何在AVL中实现自定义按钮的方法,有具体的实例步骤...
ALV中文教程(超经典) 叙述了关于ALV的制作方法和参数意义
alv使用alv使用 alv使用alv使用alv使用alv使用
ALV OO 模板
在ABAP开发中,应用OO的方法,有时候会需要去掉ALV中的标准工具栏,里面有具体步骤和实例。
提供了SAP ALV常用 调用方法 DEMO 欢迎下载
SAP ALV总结ALV总结ALV总结ALV总结ALV总结
[SAP ABAP开发技术总结]ALV详解(Fuction ALV 和OO ALV) 图文并茂,详细介绍了Fuction ALV 和OO ALV的相关开发 [SAP ABAP开发技术总结]ALV详解:Function ALV(一) [SAP ABAP开发技术总结]ALV详解:Function ALV...
ALV_GRID介绍, 不错的内容 一.ALV介绍 ...SAP提示: 在SAP的开发项目中,ALV GRID也可以作为修改和创建数据的一种工具,然而,目前这个功能只在实验计划中使用,还没有向客户发布. 下面是一个ALV GRID的图片...
ALV_GRID TYPE REF TO CL_GUI_ALV_GRID, WA_CUSTOM_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER. DATA WA_LAYOUT TYPE LVC_S_LAYO. WA_LAYOUT-EDIT = 'X'. CLASS LCL_EVENT_RECEIVER DEFINITION DEFERRED. ...
在ALV里编写回车事件,通过回车操作数据!
alv去掉多余按钮 alv去掉多余按钮 alv去掉多余按钮
alv abap sap 总结 alv abap sap 总结 alv abap sap 总结
ALV 详解
详细介绍SAP ALV表单的使用,alv中的函数及参数介绍。
在R/3 4.6C之前ALV全称为ABAP List Viewer,在其后的版本中,已经正式更名为SAP List Viewer。ALV是SAP系统中心的列表标准,可以在ABAP程序中进行报表输出。除去列表的显示和少量交互功能之外,ALV还提供给系统用户...
ABAP OOALV报表开发,定义变量,选择屏幕定义,创建类,调用函数,是学习OOALV很不错的学习资料