SAP ALV 点击单元格跳转事务代码

这篇具有很好参考价值的文章主要介绍了SAP ALV 点击单元格跳转事务代码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实现效果:销售订单明细表,双击单元格进入 va03 事务代码
SAP ALV 点击单元格跳转事务代码,ABAP,SAP
SAP ALV 点击单元格跳转事务代码,ABAP,SAP

1.alv 显示报表调用函数 i_callback_user_command 加上方法名

    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
      EXPORTING
        i_callback_program      = sy-repid
*       i_callback_pf_status_set = 'FRM_PF_STATUS'
        i_callback_user_command = 'FRM_USER_COMMAND'
        is_layout_lvc           = gs_layout_lvc
        it_fieldcat_lvc         = gt_fcat_lvc
        i_save                  = 'A'
      TABLES
        t_outtab                = it_main
      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.

2.用户处理命令方法如下:

*&---------------------------------------------------------------------*
*&      Form  FRM_USER_COMMAND
*&---------------------------------------------------------------------*
*       自定义的用户命令处理
*----------------------------------------------------------------------*
*      -->PV_UCOMM      用户命令类型
*      -->PS_SELFIELD  用户命令信息
*----------------------------------------------------------------------*
FORM frm_user_command USING pv_ucomm TYPE sy-ucomm
      ps_selfield TYPE slis_selfield.
  CASE pv_ucomm.
    WHEN '&IC1'. " "双击事件
      READ TABLE it_main INDEX ps_selfield-tabindex.
      IF sy-subrc = 0 ."AND it_main-color = 'C610'.
        PERFORM frm_set_bdc_data.
        CALL TRANSACTION 'VA03' USING bdcdata
                                MODE 'E'
                                MESSAGES INTO messtab.
      ENDIF.
  ENDCASE.

ENDFORM.

3.调用bdc

*&---------------------------------------------------------------------*
*& Form FRM_SET_BDC_DATA
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM frm_set_bdc_data .

  DATA:lv_etenr LIKE vbep-etenr.
  REFRESH:bdcdata,messtab.
  PERFORM bdc_dynpro USING 'SAPMV45A' '0102'.
  PERFORM bdc_field USING 'VBAK-VBELN' it_main-vbeln.
  PERFORM bdc_field USING 'BDC_OKCODE' '=ENT2'.

  SELECT SINGLE etenr INTO lv_etenr FROM vbep
  WHERE vbeln = it_main-vbeln AND posnr = it_main-posnr.
  IF lv_etenr IS NOT INITIAL .
    PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.
    PERFORM bdc_field USING 'BDC_OKCODE' '=POPO'.

    PERFORM bdc_dynpro USING 'SAPMV45A' '0251'.
    PERFORM bdc_field USING 'RV45A-POSNR' it_main-posnr.
    PERFORM bdc_field USING 'BDC_OKCODE' '=POSI'.

    PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.
    PERFORM bdc_field USING 'RV45A-VBAP_SELKZ(01)' 'X'.
    PERFORM bdc_field USING 'BDC_OKCODE' '=PEIN'.
  ENDIF.
ENDFORM.

*&---------------------------------------------------------------------*
*&      Form  BDC_DYNPRO
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->PROGRAM    text
*      -->DYNPRO     text
*----------------------------------------------------------------------*
FORM bdc_dynpro USING program dynpro.
  CLEAR bdcdata.
  bdcdata-program  = program.
  bdcdata-dynpro   = dynpro.
  bdcdata-dynbegin = 'X'.
  APPEND bdcdata.
ENDFORM. "BDC_DYNPRO

*----------------------------------------------------------------------*
*        Insert field                                                  *
*----------------------------------------------------------------------*
FORM bdc_field USING fnam fval.
  DATA: lv_fval TYPE string.
  lv_fval = fval.
  CONDENSE lv_fval.
  CLEAR bdcdata.
  bdcdata-fnam = fnam.
  bdcdata-fval = lv_fval.
  APPEND bdcdata.
ENDFORM. "BDC_FIELD

SAP BDC 录屏及 ABAP 调用 BDC 参见此链接文章来源地址https://www.toymoban.com/news/detail-578096.html

到了这里,关于SAP ALV 点击单元格跳转事务代码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SAP ABAP 代码调优检查工具及性能调优

    一:代码检查工具 ABAP 测试仪表盘(ATC) 所有检查工具, 豁免处理, 结果存储的中心 代码检查器 (SCI) 提供给客户,合作伙伴和SAP的做代码相关检查的开放式架构 扩展程序检查(SLIN) 扩展的代码检查,用来分析源代码 SAP NetWeaver 应用服务器,附加组件的代码漏洞分析器 安全漏洞的

    2024年02月10日
    浏览(31)
  • SAP SSL 安全证书导入(事务代码:STRUST)

    最近 SAP与concurr的通信中断了好几天。经过检查concur的链接测试。 CONCUR的测试入口事务代码:CTE_SETUP . 点击“系统” ,再点击“检查连接”:如下图 发现如下报错: 500 SSL Peer Certificate Untrusted SSL handshake with eu1.concursolutions.com:443 failed: SSSLERR_PEER_CERT_UNTRUSTED (-102) 推断: 发现是

    2024年02月11日
    浏览(29)
  • SAP/ABAP(二)

    一、循环结构 二、条件判断 三、异常处理(cx-root) 四、结构体,工作区 五、内表

    2024年02月17日
    浏览(31)
  • 【SAP ABAP】SAP Webservice & RESTful 接口服务发布教程

    关于 WebService 概念,这篇文章讲解的非常全面,可以移步阅读《SAP Web service》。 本想通过 RFC 来发布 ODATA 服务,奈何当前 SAP ECC 版本过低不支持,只好采用其他方式来发布服务,于是就尝试了下面这两种方法。 SE37,创建以下测试用 RFC 测试执行 RFC,得到的数据结果如下图:

    2024年02月02日
    浏览(35)
  • SAP ABAP技术文章合集_微信公众号:ABAP猿

    序号 文章标题 01 ABAP OOALV-基本显示 02 ABAP OOALV-排序、过滤 03 ABAP OOALV-合计、小计 04 ABAP OOALV-选择模式、触发事件 05 ABAP OOALV-隐藏列、修改列标题、添加图标列、调整列位置 06 ABAP OOALV-固定列、鼠标悬停文本 07 ABAP OOALV-颜色(列、行、单元格) 08 ABAP OOALV-样式(列、行、单元格

    2024年02月03日
    浏览(38)
  • SAP ABAP 基础语法超详细

    1.表声明 当你声明了一个数据表的同时,系统也同时自动生成了一个和数据表同名的结构,结构的变量集等于数据表里面的字段。 2.定义变量 v1 是变量名。 (l) 是变量的长度。 t 是数据类型。 d 是小数位。 ‘xxx’ 是缺省值。 如:data num(10) type p decimals 3 value ‘1.12’. 数据

    2024年02月15日
    浏览(46)
  • SAP ABAP 用户状态锁定案例

    一、前言 项目需求是根据当天及前两天的离职员工信息(假设这是一个定时器任务每天下午5点执行程序,计算前两天的员工工号是为了将5点之后办理离职的员工工号找出来),将这些员工在用户表 USR02 中的锁定状态设置为 “64”,以保证离职员工无法继续使用系统账号。

    2024年02月15日
    浏览(33)
  • SAP ABAP调用Http/Https方式实例

    注意: 1.url必须带\\\"http://\\\"或者“https://”。 2. http_client-propertytype_redirect = http_client-co_disabled .这一行是设置是否允许重定向,是为“co_enabled”,否为“co_disabled”。 3. 可能出现的错误 404 Hostname Unknow,是因为服务器未配置该url的dns 4. 可能出现的错误 401 refused,可能是被防火墙

    2024年02月07日
    浏览(42)
  • SAP ABAP增强 BADI的增强全解析

            BADI的全称是Business Add-in,它的主要技术是基于ABAP的对象来实现增强。SAP中BADI的维护事务代码是SE18和SE19,SE18主要是创建及维护BADI对象,而SE19用于维护BADI的实例,即如何来实现BADI对象的功能。         SAP的BADI因系统版本的差别可能会有不同,R/3中的BADI被称为Cl

    2023年04月23日
    浏览(29)
  • SAP ABAP ChatGPT 初体验 我会失业吗?

    简介: ChatGPT 最近很火,听说我可能要失业!就在今天我历经千辛万苦,终于把 ChatGPT 注册好了。话不多说,我先问两个 ABAP 开发问题压压惊。 : SAP ABAP ChatGPT OpenAI 失业 下面是我在 ChatGPT 的聊天截图, 我对这个回答满意度 90% ,此时我内心还不慌,虽然内容很完整逻

    2023年04月15日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包