当前位置: 首页 > news >正文

SAP 标准弹窗 自定义弹窗 (所有弹窗弹框大全)

文章目录

  • 前言
  • 01、案例介绍/笔者需求
  • 02、自定义弹窗
    •             `a.`创建屏幕绘制控件
    •             `b.`以弹窗模式呼叫屏幕
    •             `c.`弹窗位置与大小
    •             `d.`项目中的实际需求案例
  • 03、标准 复杂的 确认 弹框--->POPUP_TO_CONFIRM
  • 04、标准 简单的 确认 弹框--->POPUP_TO_CONFIRM_STEP
  • 05、标准 复选 / 单选 弹框--->POPUP_TO_DECIDE_LIST
  • 06、标准 输入框获取值 弹框--->POPUP_GET_VALUES
  • 07、标准 多条消息报错 弹框--->C14Z_MESSAGES_SHOW_AS_POPUP
  • 08、标准 消息提示 弹框--->POPUP_TO_DISPLAY_TEXT
  • 09、标准 下拉列表选择年月(YYYYMM) 弹框--->POPUP_TO_SELECT_MONTH
  • 10、标准 选择年月日(YYYYMMDD) 弹框--->F4_DATE
  • 11、标准 表格选择项目 弹框--->POPUP_WITH_TABLE_DISPLAY
  • 12、标准 显示文档对象 弹框--->POPUP_DISPLAY_TEXT_WITH_PARAMS
  • 13、标准 显示长文本 弹框--->ADA_POPUP_WITH_TABLE
  • 14、标准 ALV报表 弹框--->CL_SALV_TABLE
  • END、总结


前言

      本文目前1w字+,这篇文章会持续更新,先 点赞 关注 收藏 制作不易 谢谢🤞

      这篇文章给大家介绍一下SAP ABAP日常开发中常用必会的一些弹窗如何实现。弹窗这个东西在我们在各种软件开发中都是很常见的,SAP为我们也提供了多种弹窗的实现方式,这些弹窗的用途功能以及实现方式也是不同的。


01、案例介绍/笔者需求

        下面这些弹窗的功能用途大家可以根据自己目前的需求选择,如果标准弹窗能实现建议还是用标准弹窗,虽然自定义弹窗能实现复杂的需求但是步骤还是相对来说繁琐一点,但是标准弹窗能实现的需求我们用自定义弹窗也都能实现。下面我直接先介绍自定义弹窗,它虽然复杂但是学会了也就一劳永逸嘛!


02、自定义弹窗

          自定义弹窗说白了它就是另外一个屏幕,只不过通过 CALL SCREEN 的扩展语法把这个屏幕以弹窗的形式显示了出来,所以自定弹窗我们要去创建屏幕 根据需求画屏幕上面的控件然后编写此屏幕的逻辑流,再到程序相应地方 CALL 这个屏幕就可以了。如果对屏幕开发没基础的小伙伴可以去看笔者之前的几篇文章:SAP屏幕开发基础 、SAP屏幕调用切换方式 。

            a.创建屏幕绘制控件

                      以下的操作都是在一些简单程序基础上操作,程序创建 alv显示 等等都会忽略。
                       1.创建 屏幕
在这里插入图片描述

                       2.根据需求绘制控件
                            由于是测试我就随便绘制一点常用的控件。重点是这些控件名称 ,FUNCODE 之类用的时候别写错。如果绘制输入框最好是先在程序中把变量定义好,然后绘制的时候用绘制器带出来比较好。根据编号1234567操作就行,双击控件可以设置控件属性。在笔者另外一篇文章有详细介绍各种控件的绘制以及属性设置。
在这里插入图片描述

                       3.测试调整屏幕
                            1、 测试查看屏幕能看到屏幕效果是可以的,但是没有设置 status 菜单栏按钮都不能用,让我们这一步设置好。
在这里插入图片描述

                            2、 status 的创建步骤我就忽略了,我一般都是从其他程序复制过来的。下面有一个特殊的地方我刻意的把退出按钮写为了返回功能而不是退出到SAP主界面,下面会解释为什么这样写。现在这个屏幕大致功能没问题了也能正常返回。
在这里插入图片描述

            b.以弹窗模式呼叫屏幕

                      这里为了这个弹窗显示效果比较明显我就做在ALV界面弹出来。
                       1.设置9000调用方式
                            如下图所示当我们点击ALV回退按钮的时候就会使用语法 CALL SCREEN ‘9000’ STARTING AT 60 10 ENDING AT 110 21. 来调用我们创建的屏幕,并且弹窗的效果也是出来了。
在这里插入图片描述
在这里插入图片描述
                       2.特殊的关闭按钮
                            这里就解释我们上面为什么把退出按钮写为了返回上一个屏幕功能的原因。当你把屏幕以弹窗形式呼叫出来的时候它其中对应的按钮与status中对应如下图所示。 所以只有当我们把&F12设置为返回上个屏幕的功能才符合弹窗的逻辑。
在这里插入图片描述

            c.弹窗位置与大小

                      这里介绍弹窗的位置大小如何设置。主要看那个等比调整。
                       1.STARTING AT 20 5
                            指定了屏幕在屏幕上的起始位置,第一个数字20表示屏幕的横向位置(水平位置),第二个数字5表示屏幕的纵向位置(垂直位置)。

                       2.ENDING AT 100 16
                            指定了屏幕在屏幕上的结束位置,第一个数字100表示屏幕的宽度,第二个数字16表示屏幕的高度。

                       3.等比调整
                            什么叫做等比调整,就是如果你把屏幕位置向下调整了20个,那么屏幕的高度也会缩小20,当你向下调整位置20的时候屏幕的高度相应要增加20,这样才能保证屏幕的大小不变。同样的当你把屏幕位置向上调整了20那么屏幕高度也会增加20所以你高度要减少20才能保持原始大小。位置向右调宽度缩小,向左调宽度增加,位置向上调高度增加,向下调高度缩小。

            d.项目中的实际需求案例

                      这里大概展现一下这个自定义弹窗在实际项目中都有哪些案例。
                       1.deom1
                            当用户点击修改按钮的时候获取对应行把数据赋值给输入框变量,然后呼叫弹窗这样数据就被带到输入框了。当用户点击保存的时候 校验数据有没有变动 或者 是否符合数据要求,然后执行保存功能把数据库表和内表都更新,记得刷新ALV。
在这里插入图片描述
                       2.deom2
                            

03、标准 复杂的 确认 弹框—>POPUP_TO_CONFIRM

          这个弹框跟下面的 POPUP_TO_CONFIRM_STEP 比起来参数功能更丰富定制化相对更高。可以定义弹框的图标、按钮文本 和 按钮图标。Copy代码在下面,参数也都有详细注释。

          popup_type 参数 弹框图标对应效果如下:
              1、问号: ICON_MESSAGE_QUESTION
              2、信息: ICON_MESSAGE_INFORMATION
              3、警告: ICON_MESSAGE_WARNING
              4、错误: ICON_MESSAGE_ERROR
              5、停止: ICON_MESSAGE_CRITICAL
              6、没有: NO_ICON
在这里插入图片描述
在这里插入图片描述

DATA l_answer  TYPE c.
DATA parameter TYPE TABLE OF spar WITH HEADER LINE."这个参数没试出来效果
parameter-param = 'PARAM1'.
parameter-value = 'VALUE1'.
APPEND parameter.

CALL FUNCTION 'POPUP_TO_CONFIRM'
  EXPORTING
   titlebar                    = '我是标题'        "左上角标题
   diagnose_object             = 'POPUP'           "文档对象 SE61 去创建
   text_question               = '我是消息文本'     "提示消息
   text_button_1               = '确认'            "按钮1
   icon_button_1               = 'ICON_CHECKED'    "按钮1图标 事务码ICON 随便找
   text_button_2               = ''(001)           "按钮2 这样是使用程序中的文本
   icon_button_2               = 'ICON_COLUMN_LEFT'"按钮2图标 事务码ICON 随便找
   default_button              = '1'               "光标默认定位在哪个按钮上
   display_cancel_button       = 'X'               "X 显示"取消关闭"按钮 、空 不显示取消关闭"按钮 (默认X)
   userdefined_f1_help         = 'X'               "X 显示"信息"按钮 、空 不显示信息"按钮 (默认空)
   start_column                = 25                "距离左侧距离
   start_row                   = 6                 "距离顶部距离
   popup_type                  = ''                "指定提示图标 默认为 ICON_MESSAGE_QUESTION 是一个问号
   iv_quickinfo_button_1       = '鼠标悬停按钮1提示'
   iv_quickinfo_button_2       = '鼠标悬停按钮2提示'
 IMPORTING
   answer                      = l_answer          "取消关闭 = A  按钮1 = 1  按钮2 = 2
 TABLES
   parameter                   = parameter         "好像是动态显示提示文本 但是没试出来效果
 EXCEPTIONS
   text_not_found              = 1
   OTHERS                      = 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

          你们可以给 diagnose_object 参数传入 DMS-OLDTRANSACTIONS 试试,这个参数传输对象好像不是SE61创建,先留个坑吧 等我搞明白再回来填坑

          这个参数我搞明白了,如下图所示,是我在做 “12、标准 显示文档对象 弹框” 案例的时候搞明白了,具体SE61如何创建文档对象请移步12。同时我附上最新代码,但是这个文档对象你们自己去创建哈。或者你们在SE61根据搜素帮助随便找一个标准的吧。
在这里插入图片描述
在这里插入图片描述

  DATA l_answer  TYPE c.
  DATA parameter TYPE TABLE OF spar WITH HEADER LINE."这个参数没试出来效果
  parameter-param = 'S1'.
  parameter-value = '变量1'.
  APPEND parameter.

  parameter-param = 'V2'.
  parameter-value = '变量2'.
  APPEND parameter.

  parameter-param = 'V3'.
  parameter-value = '变量3'.
  APPEND parameter.

CALL FUNCTION 'POPUP_TO_CONFIRM'
  EXPORTING
   titlebar                    = '我是标题'        "左上角标题
   diagnose_object             = 'ZGLYN1'         "文档对象 SE61 去创建
   text_question               = '我是消息文本'    "提示消息
   text_button_1               = '确认'            "按钮1
   icon_button_1               = 'ICON_CHECKED'    "按钮1图标 事务码ICON 随便找
   text_button_2               = ''(001)           "按钮2 这样是使用程序中的文本
   icon_button_2               = 'ICON_COLUMN_LEFT'"按钮2图标 事务码ICON 随便找
   default_button              = '1'               "光标默认定位在哪个按钮上
   display_cancel_button       = 'X'               "X 显示"取消关闭"按钮 、空 不显示取消关闭"按钮 (默认X)
   userdefined_f1_help         = 'X'               "X 显示"信息"按钮 、空 不显示信息"按钮 (默认空)
   start_column                = 25                "距离左侧距离
   start_row                   = 6                 "距离顶部距离
   popup_type                  = ''                "指定提示图标 默认为 ICON_MESSAGE_QUESTION 是一个问号
   iv_quickinfo_button_1       = '鼠标悬停按钮1提示'
   iv_quickinfo_button_2       = '鼠标悬停按钮2提示'
 IMPORTING
   answer                      = l_answer          "取消关闭 = A  按钮1 = 1  按钮2 = 2
 TABLES
   parameter                   = parameter         "好像是动态显示提示文本 但是没试出来效果
 EXCEPTIONS
   text_not_found              = 1
   OTHERS                      = 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

04、标准 简单的 确认 弹框—>POPUP_TO_CONFIRM_STEP

          这类确认弹框很常用 使用起来也很方便快捷,并且这个函数的参数也都很好理解,但是S4HANA用的时候会提示已经被淘汰,不过不影响我们的使用。
在这里插入图片描述

  DATA lv_user_res TYPE char1.         "string类型也可以
  CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
  EXPORTING
   defaultoption       = 'Y'         "Y 光标定位到""按钮 、N 光标定位到"否"按钮 (默认Y)
   textline1           = '第一行文本'
   textline2           = '第二行文本'
   titel               = '左上角标题'
   start_column        = 50          "距离左侧位置
   start_row           = 10          "距离顶部位置
   cancel_display      = 'X'         "X 显示"取消关闭"按钮 、空 不显示取消关闭"按钮 (默认X)
 IMPORTING
   answer              = lv_user_res."是=J=N 取消=A

05、标准 复选 / 单选 弹框—>POPUP_TO_DECIDE_LIST

          复制代码的话在下面,代码中的所有参数都做了详细注解。
在这里插入图片描述

  DATA: BEGIN OF spoplist OCCURS 15.
          INCLUDE STRUCTURE spopli.
  DATA: END   OF spoplist.
  DATA: antwort TYPE c.

  spoplist-varoption = '选项1'.
  APPEND spoplist.

  spoplist-varoption = '选项2'.
  APPEND spoplist.

  spoplist-varoption = '选项3'."选项描述
  spoplist-selflag   = 'X'    ."默认选中
  spoplist-inactive  = 'X'    ."选项不可用
  APPEND spoplist.

  CALL FUNCTION 'POPUP_TO_DECIDE_LIST'
    EXPORTING
     cursorline               = 1           "初始光标定位在哪个选项上
     mark_flag                = 'X'         "单选还是复选 (默认为复选 传空为单选)
     mark_max                 = 0           "限制用户选择数量 传0不限制 传1如果选择项超过1个会抛异常=3
     start_col                = 50          "距离顶部距离
     start_row                = 10          "距离左侧距离
     textline1                = '第一行文本' "弹框大小会随着字符长度变化而变化
     textline2                = '第二行文本'
     textline3                = '第三行文本'
     titel                    = '左上角标题'
     display_only             = ''          "是否显示全选反选按钮 (默认显示 传X不显示)
   IMPORTING
     answer                   = antwort     "对号 = 3 、错号/关闭 = A
    TABLES
     t_spopli                 = spoplist    "控制选项数量的内表
   EXCEPTIONS
     not_enough_answers       = 1
     too_much_answers         = 2
     too_much_marks           = 3
     OTHERS                   = 4.
  IF sy-subrc = 2.
    WRITE: 'Too many answers chosen.'.
  ENDIF.

  IF antwort = 'A'.
    WRITE: '用户关闭了弹窗'.
  ELSE.
    LOOP AT spoplist WHERE selflag = 'X'.
      WRITE / spoplist-varoption.
    ENDLOOP.
  ENDIF.

06、标准 输入框获取值 弹框—>POPUP_GET_VALUES

                      完整代码在下面,详解还请看代码中的注释,注意点是 不能重复添加但是表名前面加一个*号可以再添加一次,最多显示10个输入框,可以使用 POPUP_GET_VALUES_SET_MAX_FIELD 函数模块修改对话框中字段的最大数目。在这里插入图片描述

DATA returncode TYPE char1.
DATA fields TYPE TABLE OF sval WITH HEADER LINE.
fields-tabname     = 'KNB1'      ."表名
fields-fieldname   = 'KUNNR'     ."字段名
fields-value       = '6666666666'."默认值
fields-field_obl   = 'X'         ."是否为必填
fields-fieldtext   = '这是KUNNR' ."更改字段描述
fields-novaluehlp  = ''          ."为X不显示搜索帮助按钮 (默认为空)
fields-field_attr  = '01'        ."01高亮可输入、02普通亮度不可输入、03高亮不可输入、04不显示 (默认01)

"这三个字段没试出来效果,但是参数就是这样填,感觉没啥卵用。意思是对比输入框值在下面这个表中是否存在
fields-comp_code   = 'EQ'        ."EQ等于、NE不等于、NC无字段检验、LT小于、LE小于或等于、GT大于、GE大于或等于、
fields-comp_tab    = 'KNB1'      ."对比 比较的表名
fields-comp_field  = 'KUNNR'     ."对比 比较的字段
APPEND fields.

CALL FUNCTION 'POPUP_GET_VALUES'
  EXPORTING
   no_value_check        = 'X' "是否关闭对应数据类型的检查
   popup_title           = '左上角标题'
   start_column          = '5'"距离顶部距离
   start_row             = '5'"距离左侧距离
 IMPORTING
   returncode            = returncode "错号/关闭 = A
  TABLES
    fields               = fields
 EXCEPTIONS
   error_in_fields       = 1 "fields参数有问题
   OTHERS                = 2.
IF sy-subrc <> 0.
ENDIF.

07、标准 多条消息报错 弹框—>C14Z_MESSAGES_SHOW_AS_POPUP

          使用这个弹框必须创建消息类使用,如果消息类不存在显示的文本都会不正常,创建消息类事务码SE91创建即可。并且弹框有丰富的标准按钮可以使用,Copy代码在下面直接改改参数就能用。
在这里插入图片描述
在这里插入图片描述

   DATA:lt_tab TYPE esp1_message_tab_type WITH HEADER LINE.

   lt_tab-msgid     = 'ZGLYN' ."消息类
   lt_tab-msgty     = 'E'     ."消息类型 E报错 W警告 S成功
   lt_tab-msgno     = '000'   ."消息类对应的消息号
   lt_tab-msgv1     = '小贱贱'."消息短文本对应传参1
   lt_tab-msgv2     = '漂亮国'."消息短文本对应传参2
*  lt_tab-msgv3     = ''      ."消息短文本对应传参3
*  lt_tab-msgv4     = ''      ."消息短文本对应传参4
   lt_tab-lineno    = '10'    ."行项目编号
   APPEND lt_tab.CLEAR lt_tab.

   lt_tab-msgid     = 'ZGLYN'.
   lt_tab-msgty     = 'S'    .
   lt_tab-msgno     = '001'  .
   lt_tab-msgv1     = '嘴炮' .
   lt_tab-lineno    = '20'   .
   APPEND lt_tab.CLEAR lt_tab.

CALL FUNCTION 'C14Z_MESSAGES_SHOW_AS_POPUP'
* EXPORTING
*   I_MSGID             =
*   I_MSGTY             =
*   I_MSGNO             =
*   I_MSGV1             =
*   I_MSGV2             =
*   I_MSGV3             =
*   I_MSGV4             =
*   I_LINENO            =
 TABLES
   i_message_tab        = lt_tab.

08、标准 消息提示 弹框—>POPUP_TO_DISPLAY_TEXT

          这玩意就是纯纯一个消息提示弹框,做不了啥功能的,感觉唯一 一点就是能把程序卡住,点了继续或者关闭程序才会继续执行。
在这里插入图片描述

CALL FUNCTION 'POPUP_TO_DISPLAY_TEXT'
  EXPORTING
   titel             = '提示消息'"左上角标题
   textline1         = '恭喜你'  "第一行提示文本
   textline2         = '上传成功'"第二行提示文本
   start_column      = 15        "距离左侧距离
   start_row         = 10.       "距离顶部距离

09、标准 下拉列表选择年月(YYYYMM) 弹框—>POPUP_TO_SELECT_MONTH

          这个函数也很简单参数也不多,详情看我代码的注释即可,这里要注意一下 FACTORY_CALENDARHOLIDAY_CALENDAR 参数的作用,这两个参数本来应该是 根据提供的工厂日历和假期日历高亮显示或标记工作日的,但是对于这个函数来说这两个参数并没有实际的效果,因为这个函数只显示年份月份。
          你们可以使用事务码 SCAL 去创建查看对应的工厂日历和假期日历的ID,中国的是CH
在这里插入图片描述

DATA:lv_month TYPE isellist-month,
     lv_subrc TYPE sy-subrc.

CALL FUNCTION 'POPUP_TO_SELECT_MONTH'
  EXPORTING
    actual_month                    = 202408  "必传参数 默认选择的年份月份 如果不存在会抛异常 3 MONTH_NOT_FOUND
   factory_calendar                 = space   "工厂日历
   holiday_calendar                 = space   "假期日历
   language                         = sy-langu"语言代码 会影响下拉框值的描述
   start_column                     = 8       "距离左侧距离
   start_row                        = 5       "距离顶部距离
 IMPORTING
   selected_month                   = lv_month"用户选择的年月 YYYYDD
   return_code                      = lv_subrc"关闭弹框会抛异常 4
 EXCEPTIONS
   factory_calendar_not_found       = 1
   holiday_calendar_not_found       = 2
   month_not_found                  = 3
   OTHERS                           = 4.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

10、标准 选择年月日(YYYYMMDD) 弹框—>F4_DATE

          要注意 date_for_first_month 优先级高于 progname_for_first_month 的优先级,它两都是设置默认选择日期的。date_for_first_month 是直接传值,progname_for_first_month 是传一个程序名然后函数会获取光标在此程序位置的日期字段来设置默认值,你们可以选择屏幕声明一个日期字段然后先把日期字段填写 光标再定位到这个字段再按F8执行看看,其实感觉没啥卵用 还贼难试。。。如果要获取周相关信息就要点击周号那一列的数字。
在这里插入图片描述

DATA date       TYPE  workflds-gkday.
DATA week       TYPE  scal-week.
DATA week_begin TYPE  sy-datum.
DATA week_end   TYPE  sy-datum.

CALL FUNCTION 'F4_DATE'
 EXPORTING
   date_for_first_month         = sy-datum  "默认选择的日期
   display                      = 'X'       "默认为空格 如果传 X 就是只能显示不能选择感觉就跟看日历一样
   factory_calendar_id          = ' '       "实在是试不出来效果
   gregorian_calendar_flag      = ' '       "实在是试不出来效果
   holiday_calendar_id          = ' '       "实在是试不出来效果
   progname_for_first_month     = sy-repid  "传一个程序名 哎 没啥卵用 反正是设置默认选择日期的
   date_position                = ' '       "控制日历的显示范围 空格 = 默认日期居中 T = 默认日期在顶部 B = 默认日期在底部
 IMPORTING
   select_date                  = date      "选择的日期
   select_week                  = week      "选择的第几周 例如202402 就是2024的第2周 一年一共有52周
   select_week_begin            = week_begin"选择的第几周的这周的开始日期
   select_week_end              = week_end  "选择的第几周的这周的结束日期
 EXCEPTIONS
   calendar_buffer_not_loadable = 1
   date_after_range             = 2
   date_before_range            = 3
   date_invalid                 = 4
   factory_calendar_not_found   = 5
   holiday_calendar_not_found   = 6
   parameter_conflict           = 7
   OTHERS                       = 8.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

11、标准 表格选择项目 弹框—>POPUP_WITH_TABLE_DISPLAY

          感觉不是很实用 具体用法看代码中的注释吧,注释很详细。
在这里插入图片描述

  DATA lt_tab TYPE TABLE OF char100 WITH HEADER LINE."一个字段的内表
  DATA choise TYPE sy-tabix.

  lt_tab = 'item1 我是项目1'.
  APPEND lt_tab.

  lt_tab = 'item2 我是项目2'.
  APPEND lt_tab.

  lt_tab = 'item3 我是项目3'.
  APPEND lt_tab.

CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
  EXPORTING
    endpos_col        = 100       "弹框宽度
    endpos_row        = 20        "弹框高度
    startpos_col      = 30        "距离左侧距离 增减影响弹框宽度 如果要保持原宽度同比增减 endpos_col
    startpos_row      = 10        "距离顶部距离 增减影响弹框高度 如果要保持原高度同比增减 endpos_row
    titletext         = '我是标题' "左上角标题
 IMPORTING
   choise             = choise    "用户选择了第几行 是索引值 如果点击取消就是0
  TABLES
    valuetab          = lt_tab    "表格内容
 EXCEPTIONS
   break_off          = 1
   OTHERS             = 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

12、标准 显示文档对象 弹框—>POPUP_DISPLAY_TEXT_WITH_PARAMS

          这个应该都不是很常用它可以显示文档对象,这个文档对象要去事务码 SE61 创建。创建的时候文档类要选择对话框文本。然后具体怎么编辑文档 格式排版如何调整这里不会详细介绍。

          SE61创建对话框文档对象
在这里插入图片描述

          弹框效果
在这里插入图片描述

  DATA params TYPE TABLE OF spar WITH HEADER LINE.
  DATA cancelled TYPE c.

  params-param = 'S1'.
  params-value = '变量1'.
  APPEND params.

  params-param = 'V2'.
  params-value = '变量2'.
  APPEND params.

  params-param = 'V3'.
  params-value = '变量3'.
  APPEND params.

CALL FUNCTION 'POPUP_DISPLAY_TEXT_WITH_PARAMS'
  EXPORTING
   language            = sy-langu
   popup_title         = '我是标题'"左上角标题
   start_column        = 10        "距离左侧距离
   start_row           = 3         "距离顶部距离
   text_object         = 'ZGLYN1'  "文档对象 SE61去创建
   help_modal          = 'X'
 IMPORTING
   cancelled           = cancelled "用户点击取消或关闭 这个参数就为 X
  TABLES
    parameters         = params    "给文档对象中位置参数设置变量
 EXCEPTIONS
   error_in_text       = 1
   text_not_found      = 2
   OTHERS              = 3.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

13、标准 显示长文本 弹框—>ADA_POPUP_WITH_TABLE

          这个弹框主要显示一些较长的文本并且有保存为本地txt或者打印的功能。
在这里插入图片描述

  DATA lt_tab TYPE TABLE OF char100 WITH HEADER LINE."一个字段的内表

  lt_tab = 'item1 我是项目1'.
  APPEND lt_tab.

  lt_tab = 'item2 我是项目2'.
  APPEND lt_tab.

  lt_tab = 'item3 我是项目3'.
  APPEND lt_tab.

CALL FUNCTION 'ADA_POPUP_WITH_TABLE'
  EXPORTING
    startpos_col           = 15          "距离左侧距离
    startpos_row           = 5           "距离顶部距离
    titletext              = '左上角标题'
*   WORDWRAP_POSITION      = 5           "控制每行文本的长度 大于5会换行
  TABLES
    valuetab               = lt_tab.     "一个字段的内表

14、标准 ALV报表 弹框—>CL_SALV_TABLE

          要做弹框 ALV报表 可以使用 SALV 也称为 New ALV,这个我会专门出另外一篇文章做介绍 到时候附上链接。敬请期待。

END、总结

        以上就是今天要讲的内容,本文仅仅简单介绍了 SAP里面一些常用的弹框,感觉这篇文章自己有学到东西或者在今后的工作中能派上用场,可以点赞收藏支持!!!如果有说错或者不好的地方还望大家提出来见谅,欢迎大家评论指出不好的地方。谢谢!

相关文章:

  • 鸿蒙系统liteos_m开发环境配置
  • 让网站变得更智能!架构标记如何提升SEO并吸引更多流量?
  • Word填写窗口功能详解:如何让文档填写更高效?
  • MATLAB 控制系统设计与仿真 - 26
  • wordpress主题开发框架(灵狐框架)介绍
  • (动态规划 区间dp/dfs 最长回文子序列)leetcode 516
  • 程序化广告行业(15/89):TD、流量供应方与流量方服务解析
  • CSS中粘性定位
  • 2025年AI搜索引擎开源项目全景指南:从核心框架到生态工具
  • 雷池WAF 处理 HTTP 请求的流程
  • 你的完美主义:从缺陷到超能力
  • 什么是SEO泛目(什么是SEO站群)
  • CNN SSP, ASPP, PPM 分割任务经典尺度聚合模块
  • Spring MVC 全面解析:架构、流程与核心组件(详细)
  • 5 分钟搭建 Prometheus + Grafana 监控
  • vue/react/vite前端项目打包的时候加上时间最简单版本,防止后端扯皮
  • 【C/C++】文件句柄
  • Dify1.01版本vscode 本地环境搭建运行实践
  • SSL 和 TLS 认证
  • Vue 3 事件总线详解:构建组件间高效通信的桥梁
  • wordpress本地登陆/沈阳seo排名收费
  • 网站运营推广怎么做/竞价托管代运营公司
  • 女装高端品牌有哪些/淘宝seo优化
  • 企业网站管理系统下载/百度一下百度搜索入口
  • 自己搭建公司网站/百度浏览器官方网站
  • 专门做杂志的网站/简述什么是seo