SAP剑客 2025-10-15 19:06 采纳率: 0%
浏览 12

BADI_FDCB_SUBBAS04 子屏幕增加按钮

各位好。
我通过BADI:BADI_FDCB_SUBBAS04在MIRO中增强增加了一个按钮,点击按钮弹出一个屏幕,处理完成后想要返回给INVFO-BKTXT(抬头文本),目前在增强的9001屏幕的PAI中给INVFO-BKTXT直接赋值无效。还有一个问题就是子屏幕增加了按钮,后续回车一直SY-UCOMM调用这个按钮功能,比较头疼。

  • 写回答

5条回答 默认 最新

  • 阿里嘎多学长 2025-10-15 19:06
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    问题分析

    你通过BADI:BADI_FDCB_SUBBAS04在MIRO中增强了一个子屏幕,增加了一个按钮。点击按钮后,弹出一个新的屏幕进行处理。处理完成后,你想要返回给原来的抬头文本(INVFO-BKTXT)。

    解决方案

    你可以通过以下方法实现:

    1. 在BADI_FDCB_SUBBAS04的处理函数中,设置一个返回参数,例如RETURNING参数。
    2. 在子屏幕的处理函数中,设置返回参数的值。
    3. 在BADI_FDCB_SUBBAS04的处理函数中,通过RETURNING参数获取子屏幕的处理结果。
    4. 根据处理结果,更新原来的抬头文本(INVFO-BKTXT)。

    核心代码

    DATA: lv_returning TYPE string.
    
    " 在子屏幕的处理函数中设置返回参数的值
    lv_returning = '处理完成'。
    
    " 在BADI_FDCB_SUBBAS04的处理函数中通过RETURNING参数获取子屏幕的处理结果
    DATA: lt_returning TYPE STANDARD TABLE OF string.
    lt_returning = sy-msgv1.
    
    " 根据处理结果,更新原来的抬头文本(INVFO-BKTXT)
    DATA: lv_invfo_bktxt TYPE string.
    lv_invfo_bktxt = lt_returning[ 1 ].
    

    注意

    上述代码仅为示例,具体实现可能需要根据你的实际需求进行调整。

    评论

报告相同问题?

问题事件

  • 创建了问题 10月15日