SAP ALV 报表处理:双击事件与数据交互
"该资源是关于SAP ALV (Advanced List Viewer) 报表的编程示例,通过双击事件实现特定功能。" 在SAP系统中,ALV报表是一种用于展示数据的强大工具,它提供了丰富的用户界面和交互性。在ALV报表中,双击事件是一个常见的用户交互方式,允许用户对表格中的行或列进行进一步操作,如查看详细信息、编辑数据或执行其他业务逻辑。 在提供的代码段中,可以看到创建了一个名为"ZSTANDARDCOSTNOSTANDARDPAGEHEADING"的报告,并定义了一系列的内部表变量(IT_LISTOCCURS1000)来存储数据。这些变量与数据库表KEKO、KEPH和MAKT中的字段相对应,用于存储物料成本标准相关的数据,如物料编号(MATNRL),物料描述(MAKTX),工厂(WERKSL),成本中心(BWKEY),等。 内部表IT_LIST的结构包含了多个字段,如KADAT和BIDAT分别表示物料的开始日期和结束日期,MATNRL用于存储物料编号,MAKTX为物料描述,WERKSL是工厂代码,BWKEY是成本中心,LOSGRL是订单行项目,KALNRL可能是订单号,CPUDTL是CPU时间日期,BDATJ是年份,FEH_STA可能是状态标志,TATALL、KST001至KST008则是不同类型的标志字段,可能用于记录各种状态或属性。 此外,代码中还提到了一个类型池SLIS,这是SAP标准的ALV字段分类库,用于定义ALV网格的列显示和行为。变量fcatTYPESLIS_T_FIELDCAT_ALV将用于定义ALV的列特性,waLIKELINEOFFCAT用于临时存储字段类别,而IT_LIST1则用于可能的数据处理或分页操作。 在SAP编程中,双击ALV事件通常通过定义用户事件处理程序来实现。例如,你可以使用方法`CALL METHOD OF slis_alv_grid 'SET_DOUBLE_CLICK'`来设置双击事件,然后在相应的事件处理函数中编写处理逻辑。当用户双击ALV表格的某一行时,SAP会触发这个事件并执行你指定的代码。 这段代码展示了如何在SAP ABAP环境中构建一个ALV报表,并准备了处理双击事件的基础结构。具体的双击事件处理代码并未在给出的内容中,但我们可以推断,开发者可能会在报告的事件处理部分添加代码,以便在用户双击表格行时执行特定的业务逻辑或跳转到另一个事务代码。
LINE-SIZE 250 LINE-COUNT 58 MESSAGE-ID Z1.
TABLES: KEKO,KEPH,MAKT.
DATA:BEGIN OF IT_LIST OCCURS 1000,
KADAT LIKE KEKO-KADAT, "成本核算日期从
BIDAT LIKE KEKO-BIDAT, "成本核算日期到
MATNR LIKE KEKO-MATNR, "物料号
MAKTX LIKE MAKT-MAKTX, "物料描述
WERKS LIKE KEKO-WERKS, "工厂
BWKEY LIKE KEKO-BWKEY, "估价范围
LOSGR LIKE KEKO-LOSGR, "批量产品成本核算
KALNR LIKE KEKO-KALNR, "成本估算编号
CPUDT LIKE KEKO-CPUDT, "成本估算创建日期
BDATJ LIKE KEKO-BDATJ, "记帐日期 YYYY
FEH_STA LIKE KEKO-FEH_STA, "成本核算状态
TATAL LIKE KEPH-KST001, "合计
KST001 LIKE KEPH-KST001, "原料成本
KADKY LIKE KEPH-KADKY, "成本估算日期
KKZST LIKE KEPH-KKZST, "标识下限层/层
KST002 LIKE KEPH-KST002, "包装物成本
KST004 LIKE KEPH-KST004, "人工
KST006 LIKE KEPH-KST006, "变动费用
KST008 LIKE KEPH-KST008, "固定成本
KST010 LIKE KEPH-KST010, "摊提成本
END OF IT_LIST.
type-pools : slis.
DATA : fcat TYPE SLIS_T_FIELDCAT_ALV.
DATA: IT_LIST1 LIKE IT_LIST OCCURS 1000 WITH HEADER LINE.
*DATA: TATAL type P DECIMALS 2 .
DATA: PGM LIKE SY-REPID.
PGM = SY-REPID.
DATA DATUM LIKE SY-DATUM. "系统日期
DATUM = SY-DATUM.
*SELECTION-SCREEN SKIP.
*SELECTION-SCREEN BEGIN OF BLOCK BLOCK0 WITH FRAME TITLE TEXT-000.
* PARAMETERS: BUKRS LIKE MSEG-BUKRS .
*SELECTION-SCREEN END OF BLOCK BLOCK0.
SELECTION-SCREEN BEGIN OF BLOCK BLOCK1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS:
MATNR FOR KEKO-MATNR MEMORY ID MAT, "物料编码
KADKY FOR KEPH-KADKY, "成本核算日期
WERKS FOR KEKO-WERKS OBLIGATORY. "工厂
SELECTION-SCREEN END OF BLOCK BLOCK1.
SELECT * INTO CORRESPONDING FIELDS OF TABLE IT_LIST
FROM KEPH AS K INNER JOIN KEKO AS L ON L~KALNR = K~KALNR
WHERE L~MATNR IN MATNR AND
L~WERKS IN WERKS AND
K~KADKY IN KADKY AND
l~KADKY IN KADKY AND
K~KADKY = L~KADKY AND
K~KKZST ne 'X'.
剩余5页未读,继续阅读
- 粉丝: 2
- 资源: 10
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全