Sun宣布J2SE 1.5开发计划

Sun公司的Java新版本J2SE1.5(代号Tiger)将采纳JSR201和JSR175等技术提案,旨在提高开发效率、程序监控管理、系统性能及XML和Web服务支持。此版本预计明年发布。
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> [优快云编译] 据来自Sun公司内部的消息,Java的最新版本J2SE 1.5(代号Tiger)将引入一些正在进行的JSR(Java规范请求)技术,将在以下四个领域对Java语言有所增强:开发的便捷性;程序监控和管理;可伸缩性和性能;XML和客户端Web服务支持。这个版本计划于明年正式发布。详情请看下文: Sun Prepares to Unleash Java 'Tiger'. 现在,JSR 201和JSR 175已经进入了JCP的工作,有望进入J2SE 1.5。这两个JSR都是针对易用性的:JSR 201提出了一组提升生产率的编程特性;JSR 175则是一个用于Java编程的元数据工具,让开发者能够对程序进行评注(annotate),减少需要编写的代码量。 一些开发者认为,Sun在易用性方面的工作做得太晚,而且可能程度还不够。软件开发者和顾问Adam Madrak表示:“Java的简化来得太晚了,现在我已经成为了一个LAMP(Linux、Apache、MySQL和PHP)人。”
<think>我们被要求提供REUSE_ALV_GRID_DISPLAY_LVC的简单示例代码。根据引用内容,我们知道REUSE_ALV_GRID_DISPLAY_LVCSAP ABAP中用于显示ALV报表的一个函数模块。下面我们将提供一个简单的示例代码,包括定义数据结构、准备数据、设置布局字段目录,然后调用函数显示ALV。 注意:由于我们无法实际运行ABAP代码,以下示例为典型的ABAP代码结构,供参考。 步骤: 1. 定义数据结构:通常使用一个结构(structure)或内表(internal table)来存储要显示的数据。 2. 准备数据:将需要显示的数据填充到内表中。 3. 设置布局(layout):控制ALV的显示样式,比如列宽、颜色等。 4. 设置字段目录(field catalog):定义每个字段的显示属性,如列名、是否可编辑等。 5. 调用函数模块REUSE_ALV_GRID_DISPLAY_LVC显示ALV。 示例代码: ```abap REPORT z_alv_demo. * 定义数据结构 TYPES: BEGIN OF ty_data, carrid TYPE s_carr_id, " 航空公司代码 connid TYPE s_conn_id, " 航班连接号 fldate TYPE s_date, " 航班日期 price TYPE s_price, " 价格 currency TYPE s_currcode, " 货币 END OF ty_data. DATA: gt_data TYPE TABLE OF ty_data, " 数据内表 gs_data TYPE ty_data. " 工作区 * 布局设置 DATA: gs_layout TYPE lvc_s_layo. * 字段目录 DATA: gt_fieldcat TYPE lvc_t_fcat, gs_fieldcat TYPE lvc_s_fcat. * 填充数据(这里仅作示例,实际中可能从数据库表读取) START-OF-SELECTION. gs_data-carrid = 'AA'. gs_data-connid = '0017'. gs_data-fldate = '20230101'. gs_data-price = '500'. gs_data-currency = 'USD'. APPEND gs_data TO gt_data. CLEAR gs_data. gs_data-carrid = 'LH'. gs_data-connid = '0400'. gs_data-fldate = '20230102'. gs_data-price = '800'. gs_data-currency = 'EUR'. APPEND gs_data TO gt_data. * 设置布局 gs_layout-zebra = 'X'. " 启用斑马纹 gs_layout-cwidth_opt = 'X'. " 优化列宽 * 构建字段目录 PERFORM build_fieldcatalog. * 调用函数显示ALV CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC' EXPORTING i_callback_program = sy-repid is_layout_lvc = gs_layout it_fieldcat_lvc = gt_fieldcat TABLES t_outtab = gt_data EXCEPTIONS program_error = 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. * 构建字段目录子程序 FORM build_fieldcatalog. DEFINE add_field. CLEAR gs_fieldcat. gs_fieldcat-fieldname = &1. gs_fieldcat-reptext = &2. gs_fieldcat-coltext = &2. gs_fieldcat-scrtext_l = &2. gs_fieldcat-scrtext_m = &2. gs_fieldcat-scrtext_s = &2. APPEND gs_fieldcat TO gt_fieldcat. END-OF-DEFINITION. add_field 'CARRID' 'Airline Code'. add_field 'CONNID' 'Connection No.'. add_field 'FLDATE' 'Flight Date'. add_field 'PRICE' 'Price'. add_field 'CURRENCY' 'Currency'. ENDFORM. ``` 说明: 1. 我们定义了一个内表`gt_data`来存储要显示的数据,结构为`ty_data`。 2. 在`START-OF-SELECTION`事件中,我们填充了两条示例数据。 3. 布局设置`gs_layout`中,我们启用了斑马纹优化列宽。 4. 通过子程序`build_fieldcatalog`构建字段目录,使用宏`add_field`简化重复操作,为每个字段设置列标题。 5. 调用函数`REUSE_ALV_GRID_DISPLAY_LVC`,传入程序名、布局、字段目录以及数据内表。 注意:实际使用时,可能需要根据需求调整字段目录中的属性,比如设置字段为可编辑、隐藏某些字段等。 另外,引用[3]提到了行选择功能,如果需要,可以在布局中设置`sel_mode`属性(例如`gs_layout-sel_mode = 'A'`允许行选择),并在函数调用时添加`i_callback_pf_status_set``i_callback_user_command`来实现选择后的操作。 §§相关问题§§ 1. 如何实现REUSE_ALV_GRID_DISPLAY_LVC的行选择功能? 2. 如何在ALV中实现可编辑字段? 3. 如何为ALV添加自定义按钮并处理事件?</think>### REUSE_ALV_GRID_DISPLAY_LVC 简单示例代码 以下是使用 `REUSE_ALV_GRID_DISPLAY_LVC` 函数模块显示ALV报表的完整示例代码(ABAP): ```abap REPORT z_alv_demo. * 1. 定义数据结构 TYPES: BEGIN OF ty_data, matnr TYPE matnr, " 物料号 maktx TYPE maktx, " 物料描述 menge TYPE menge_d, " 数量 meins TYPE meins, " 单位 END OF ty_data. DATA: gt_data TYPE TABLE OF ty_data, " 数据内表 gs_data TYPE ty_data. " 工作区 * 2. 准备数据(示例数据) START-OF-SELECTION. gs_data-matnr = '1000001'. gs_data-maktx = '螺钉'. gs_data-menge = 500. gs_data-meins = 'PC'. APPEND gs_data TO gt_data. gs_data-matnr = '1000002'. gs_data-maktx = '螺母'. gs_data-menge = 300. gs_data-meins = 'PC'. APPEND gs_data TO gt_data. * 3. 设置ALV参数 DATA: gt_fieldcat TYPE lvc_t_fcat, " 字段目录 gs_fieldcat TYPE lvc_s_fcat, " 字段描述 gs_layout TYPE lvc_s_layo. " 布局设置 * 构建字段目录 PERFORM build_fieldcatalog. * 设置布局属性 gs_layout-zebra = 'X'. " 启用斑马纹 gs_layout-cwidth_opt = 'X'. " 优化列宽 gs_layout-sel_mode = 'A'. " 允许行选择(引用[3]) * 4. 调用ALV函数 CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC' EXPORTING i_callback_program = sy-repid " 当前程序 is_layout_lvc = gs_layout " 布局设置 it_fieldcat_lvc = gt_fieldcat " 字段目录 TABLES t_outtab = gt_data " 输出数据 EXCEPTIONS program_error = 1 OTHERS = 2. * 构建字段目录子程序 FORM build_fieldcatalog. DEFINE add_field. CLEAR gs_fieldcat. gs_fieldcat-fieldname = &1. " 字段名 gs_fieldcat-reptext = &2. " 列标题 gs_fieldcat-col_opt = 'X'. " 自动优化列宽 APPEND gs_fieldcat TO gt_fieldcat. END-OF-DEFINITION. add_field 'MATNR' '物料号'. add_field 'MAKTX' '物料描述'. add_field 'MENGE' '数量'. add_field 'MEINS' '单位'. ENDFORM. ``` ### 关键点说明: 1. **数据结构定义**:通过 `TYPES` 定义要显示的数据结构 2. **字段目录**:使用 `LVC_S_FCAT` 结构控制列属性(列名、标题、宽度等) 3. **布局设置**: - `zebra = 'X'`:启用斑马纹交替背景色 - `sel_mode = 'A'`:启用行选择功能(引用[3]) 4. **函数调用**: - `i_callback_program`:指定调用程序 - `t_outtab`:传递要显示的数据内表 ### 效果说明: 执行后将显示包含4列的ALV报表: 1. 物料号(MATNR) 2. 物料描述(MAKTX) 3. 数量(MENGE) 4. 单位(MEINS) 支持功能: - 列排序(点击列标题) - 列宽调整(拖动列边界) - 行选择(按Ctrl+选择多行) - 数据导出(通过工具栏按钮) > 注意:实际使用时需替换 `gt_data` 为您的业务数据,可通过 `SELECT` 语句从数据库表中获取[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值