• ABAP常用函数集锦


    函数名 描述 
    SD_VBAP_READ_WITH_VBELN 根据销售订单读取表vbap中的信息
    EDIT_LINES 把READ_TEXT返回的LINES中的行按照TDFORMAT=“*”重新组织
    VIEW_MAINTENANCE_CALL 维护表视图

    函数名 描述 
    DY_GET_FOCUS 获得屏幕焦点 
    DY_GET_SET_FIELD_VALUE 获得或者设置屏幕字段的值

    函数名 描述 
    F4IF_INT_TABLE_VALUE_REQUEST 显示检索help 
    READ_TEXT 读取长文本
    CONVERSION_EXIT_CUNIT_OUTPUT 单位转换
    SJIS_DBC_TO_SBC 全角转半角
    SJIS_SBC_TO_DBC 半角转换为全角
    CO_R0_CHECK_DECIMAL_POINT 根据单位检查数据的小数位
    POSTAL_CODE_CHECK 检查邮政编码

    函数名 描述 
    CONVERSION_EXIT_ALPHA_INPUT 全数字则在前面补0
    CONVERSION_EXIT_ALPHA_INPUT 和上面相反
    GET_JOB_RUNTIME_INFO 获得job相关信息
    TERMINAL_ID_GET 获得端末id
    DATE_CONVERT_TO_FACTORYDATE 把输入日期转为工厂日历日期
    MESSAGE_TEXT_BUILD 把消息转为文本

    函数名 描述 
    POPUP_TO_CONFIRM 弹出确认窗口

    函数名 描述 
    CONVERSION_EXIT_MATN1_INPUT 物料号码转换函数
    CONVERSION_EXIT_MATN1_OUTPUT 同上相反
    CONVERT_TO_LOCAL_CURRENCY 按照指定日期汇率转换金额为指定货币类型
    SSF_FUNCTION_MODULE_NAME 根据form名取得对应的函数名(SmartForm)

    函数名 描述 
    DATE_CHECK_PLAUSIBILITY 日期CHECK
    cl_gui_frontend_services=>gui_upload 上传到服务器
    cl_gui_frontend_services=>gui_download 下载到服本地
    SSF_FUNCTION_MODULE_NAME SMARTFORMS输出报表时,生成一个函数名称,然后CALL这个名称

    函数名 描述 
    POPUP_TO_DECIDE_LIST 弹出供选择窗口

    ABAP_DOCU_DOWNLOAD – 以HTML格式下载ABAP文档。

    ARFC_GET_TID – 以十六进制形式返回终端的IP地址。

    BAL_* -容纳了SAP的应用程序日志所有的函数模块。

    BP_EVENT_RAISE –在 ABAP/4 程序中触发一个事件。

    BP_JOBLOG_READ –获得job log的执行结果。

    CLOI_PUT_SIGN_IN_FRONT – 将负号前置, SAP默认将负号放在数字后面。

    CLPB_EXPORT –从内表导入到剪贴板。

    CLPB_IMPORT – 从剪贴板导入内表。

    COMMIT_TEXT -To load long text into SAP 。

    CONVERSION_EXIT_ALPHA_INPUT - 数字串前补0
    example:
    input = 123
    output = 0000000000000。。。000000000000123

    CONVERSION_EXIT_ALPHA_OUTPUT – 消除数字串前的0
    example:
    input = 00000000000123
    output = 123

    CONVERT_OTF – 将SAP文档(SAP Script)转换成其他类型。
    example:
    CALL FUNCTION 'CONVERT_OTF'
    EXPORTING
    FORMAT = 'PDF'
    IMPORTING
    BIN_FILESIZE = FILE_LEN
    TABLES
    OTF = OTFDATA
    LINES = PDFDATA
    EXCEPTIONS
    ERR_MAX_LINEWIDTH = 1
    ERR_FORMAT = 2
    ERR_CONV_NOT_POSSIBLE = 3
    OTHERS = 4.

    DATE_GET_WEEK – 返回一个日期所在的周数。

    DATE_CHECK_PLAUSIBILITY – 检查一个日期是否是SAP的有效格式。

    DYNP_VALUES_READ – 读取SCREEN字段的值,也可以用来读取报表SELECTION SCREEN。

    DYNP_VALUES_UPDATE -更新屏幕字段的值。

    ENQUE_SLEEP –在继续处理之前等待一个指定的时间。

    ENQUEUE_ESFUNCTION – 锁定一个ABAP程序使它不可以被执行:

    RELID = 'ZZ'
    SRTF2 = 0
    SRTF = (your report name)

    注意不要用SY-REPID来传递你的报表名字,当把SY-REPID作为参数传递给函数模块的时候,SY-REPID的值实际上已经发生了变化。

    EPS_GET_FILE_ATTRIBUTES – 获得文件属性。

    EPS_GET_DIRECTORY_LISTING – 返回一个本地或网络目录的文件列表。

    F4_DATE - 弹出一个窗口显示一个日历允许用户选择一个日期

    F4IF_SHLP_EXIT_EXAMPLE – F4接口模块。

    FILENAME_GET – 弹出一个文件选择对话框。

    DATA out(60) TYPE c.
    CALL FUNCTION 'FILENAME_GET'
    EXPORTING
    filename = 'c:1.txt'
    title = 'GET FILENAME'
    IMPORTING
    filename = OUT.

    FTP_CONNECT – 打开并登陆FTP服务器的连接。
    FTP_COMMAND – 在FTP服务器上执行一个命令。
    FTP_DISCONNECT –关闭指向FTP服务器的连接。

    FORMAT_MESSAGE - Takes a message id and number, and puts it into a variable。 Works better than WRITE_MESSAGE, since some messages use $ as a place holder, and WRITE_MESSAGE does not accommodate that, it only replaces the ampersands (&) in the message。

    GET_GLOBAL_SYMBOLS – 返回一个程序的tables, select options, texts, etc 。甚至包含selection screen的文本定义。

    GET_INCLUDETAB – 获得一个程序的INCLUDES列表。

    GUI_CREATE_DIRECTORY –在显示服务器端创建一个目录 。

    GUI_DELETE_FILE – 在显示服务器端删除一个文件 。

    GUI_DOWNLOAD – 从应用服务器下载内表到显示服务器。

    GUI_EXEC – 调用一个文件或程序,取代了WS_EXECUTE。

    GUI_GET_DESKTOP_INFO – 获得客户端桌面信息,取代了WS_QUERY。

    GUI_REMOVE_DIRECTORY – 从显示服务器删除一个目录 。

    GUI_RUN – 启动一个文件或程序 。

    GUI_UPLOAD – 从显示服务器上传文件到应用服务器,取代了WS_UPLOAD。

    HELP_START – 为一个字段显示帮助。 Useful for doing AT SELECTION SCREEN ON VALUE REQUEST for those fields that do not provide F4 help at the DDIC level。

    HOLIDAY_GET – 基于Factory Calendar&/ Holiday Calendar提供了一个节日表。

    INIT_TEXT –上传长文本到SAP。

    K_WERKS_OF_BUKRS_FIND – 返回一个特定公司代码的所有工厂。

    LIST_TO_ASCII –将ABAP报表从 OTF形式转换成ASCII 形式。

    LIST_FROM_MEMORY – Retrieves the output of a report from memory when the report was executed using SUBMIT。。。EXPORTING LIST TO MEMORY。 See also WRITE_LIST。

    MONTH_NAMES_GET – 获得所有的月和名字

    **** MS_EXCEL_OLE_STANDARD_OLE – 创建一个文件并自动启动Excel 。

    CONVERT_OTFSPOOLJOB_2_PDF - converts a OTF spool to PDF (i。e。 Sap script document)

    CONVERT_ABAPSPOOLJOB_2_PDF -convert ABAP spool output to PDF

    POPUP_TO_CONFIRM_LOSS_OF_DATA – 弹出一个对话框告知用户有可能丢失数据,询问是否操作继续。

    POPUP_TO_CONFIRM_STEP -弹出一个对话框询问用户是否操作继续。

    POPUP_TO_CONFIRM_WITH_MESSAGE 可以显示定制的提示信息的确认窗口 类似POPUP_TO_CONFIRM_STEP,只是多三行的文本错误诊断提示。

    POPUP_TO_CONFIRM_WITH_VALUE 用此函数可以建立一个对话框用于询问用户是否执行某步操作,该操作可能会丢失数据,用户可以选择Yes No 或者Cancel。该函数可以传入一个标题,两行的文本(提示问题)和一个对象值

    POPUP_TO_DECIDE 显示一个对话框,用户可以两个操作中的一个或者取消。可以传入三行提示文本

    POPUP_TO_DECIDE_WITH_MESSAGE 类似POPUP_TO_DECIDE

    POPUP_TO_DISPLAY_TEXT 显示多行信息的窗口

    POPUP_TO_SELECT_MONTH –弹出一个对话框供选择月。

    POPUP_WITH_TABLE_DISPLAY -Provide a display of a table for user to select one, 
    with the value of the table line returned when selected。

    PRICING – 获得定价条件

    PROFILE_GET - 从INI文件读取一条记录

    PROFILE_SET – 往INI文件写一条记录

    READ_TEXT – 上传长文本

    REGISTRY_GET – 从注册表读取一条记录

    REGISTRY_SET – 在注册表里设置一条记录

    RFC_ABAP_INSTALL_AND_RUN – 当MODE参数值为‘F’时运行PROGRAM表中的程序'.

    RH_GET_ACTIVE_WF_PLVAR – 获得激活的HR计划

    RH_START_EXCEL_WITH_DATA – 启动Excel并用内表给文件赋值

    RH_STRUC_GET –返回所有相关的组织信息

    RP_CALC_DATE_IN_INTERVAL – 年月日加减

    RP_LAST_DAY_OF_MONTHS – 获得一个月的最后一天

    RPY_DYNPRO_READ – 读取屏幕

    RPY_TRANSACTION_READ – 给定一个事务代码,获得其程序和屏幕;或给定一个程序和屏幕获得事务代码

    RS_COVERPAGE_SELECTIONS – 获得一个报表的选择参数列表。

    RS_REFRESH_FROM_SELECTOPTIONS –获得当前选择屏幕的内容

    RS_SEND_MAIL_FOR_SPOOLLIST – 在程序中给SAP office 发送消息

    RS_VARIANT_CONTENTS – 获得一个变式的内容

    RZL_SLEEP – 将当前程序挂起

    RZL_SUBMIT – 提交一个远程报表

    RZL_READ_DIR_LOCAL – 读取应用服务器的目录

    RZL_READ_DIR – 如果服务器名字左部为空,从本地读取目录,否则读取远程服务器的目录

    RZL_READ_FILE – 如果为给定服务器名字则读取本地文件,否则读取远程服务器文件。

    RZL_WRITE_FILE_LOCAL - 将内表保存到显示服务器(not PC). 不使用OPEN DATASET因此避免了授权检查。

    SAPGUI_PROGRESS_INDICATOR – 显示一个进度条

    SAVE_TEXT – 上传长文本

    SCROLLING_IN_TABLE –当编写模块池的时候可以用它来处理滚动

    SD_DATETIME_DIFFERENCE – 两日期作差

    SO_NEW_DOCUMENT_ATT_SEND_API1 - 将文档作为邮件的一部分发送

    SO_SPLIT_FILE_AND_PATH – 将一个包含路径的全文件名分割为文件名和路径

    SO_SPOOL_READ – 根据SPOOL号获得printer spool

    SO_WIND_SPOOL_LIST – 根据用户浏览printer spool号

    SX_OBJECT_CONVERT_OTF_PDF – 从OTF转换为PDF (SAP 脚本转换)

    SX_OBJECT_CONVERT_OTF_PRT – 从OTF转换为打印机格式(SAP 脚本转换)

    SX_OBJECT_CONVERT_OTF_RAW – 从OTF转换为ASCII(SAP 脚本转换)

    SXPG_CALL_SYSTEM - 检查用户是否有执行某个命令的权限

    SXPG_COMMAND_LIST_GET – 获得一个包含所有定义的外部OS命令的列表.

    SXPG_COMMAND_DEFINITION_GET – 从R/3系统数据库读取单个外部OS命令的定义

    SXPG_COMMAND_CHECK - 检查用户是否有执行某个命令的权限

    SXPG_COMMAND_EXECUTE -检查用户是否有执行某个命令的权限,拥有授权则执行命令

    TERMINAL_ID_GET –返回终端ID

    TH_DELETE_USER – 剔除一个用户,效果同SM04

    TH_ENVIRONMENT – 获得UNIX环境

    TH_POPUP –在特定用户屏幕上显示一个系统消息

    TH_REMOTE_TRANSACTION – 在远程服务器上运行事务代码

    TH_USER_INFO – 获得当前用户的信息 (会话,登陆的工作台等)

    TH_USER_LIST –显示登陆到应用服务器的用户列表

    UNIT_CONVERSION_SIMPLE –衡量单位转换

    UPLOAD –上传文件到显示服务器

    UPLOAD_FILES – 上传一个或多个文件

    WRITE_LIST –显示一个列表对象

    WS_DOWNLOAD –将内表下载到显示服务器

    WS_EXCEL –启动EXCEL

    WS_EXECUTE –执行一个程序

    WS_FILE_DELETE – 删除一个文件

    WS_FILENAME_GET –调用文件选择对话框

    WS_MSG –显示一个对话框显示在线消息

    WS_UPLOAD – 从显示服务器上传文件到内表

    WS_VOLUME_GET –获得终端设备标签

    WWW_LIST_TO_HTML – 运行一个报表之后,调用这个方法将列表输出转换成HTML

    SD_VBAP_READ_WITH_VBELN 根据销售订单读取表vbap中的信息

    EDIT_LINES 把READ_TEXT返回的LINES中的行按照TDFORMAT=“*”重新组织

    VIEW_MAINTENANCE_CALL 维护表视图

    DY_GET_FOCUS 获得屏幕焦点

    DY_GET_SET_FIELD_VALUE 获得或者设置屏幕字段的值

    F4IF_INT_TABLE_VALUE_REQUEST 显示检索help

    CONVERSION_EXIT_CUNIT_OUTPUT 单位转换

    SJIS_DBC_TO_SBC 全角转半角

    SJIS_SBC_TO_DBC 半角转换为全角

    CO_R0_CHECK_DECIMAL_POINT 根据单位检查数据的小数位

    POSTAL_CODE_CHECK 检查邮政编码 GET_JOB_RUNTIME_INFO 获得job相关信息

    TERMINAL_ID_GET 获得终端

    idDATE_CONVERT_TO_FACTORYDATE 把输入日期转为工厂日历日期

    MESSAGE_TEXT_BUILD 把消息转为文本

    CONVERT_TO_LOCAL_CURRENCY 按照指定日期汇率转换金额为指定货币类型

    SSF_FUNCTION_MODULE_NAME 根据form名取得对应的函数名(SmartForm)

    DATE_CHECK_PLAUSIBILITY 检查日期合法性

    CHECKcl_gui_frontend_services=>gui_upload 上传到服务器

    cl_gui_frontend_services=>gui_download 下载到本地

    SSF_FUNCTION_MODULE_NAME SMARTFORMS输出报表时,生成一个函数名称,然后CALL这个名

    通过这个日期得出那天是星期几
    DAY_IN_WEEK

    用来得到将来/过去的日期的
    RP_CALC_DATE_IN_INTERVAL

    日期的加减
    BKK_ADD_MONTH_TO_DATE

    一组有用的用户交互窗口函数
    POPUP_TO_CONFIRM_LOSS_OF_DATA 显示有YES/NO的弹出窗口,提示用户未保存的数据将丢失

    POPUP_TO_CONFIRM_STEP 提示是否确认操作的弹出窗口

    POPUP_TO_CONFIRM_WITH_MESSAGE 可以显示定制的提示信息的确认窗口

    POPUP_TO_CONFIRM_WITH_VALUE 显示确认用户对某个特定对象的操作的弹出窗口

    POPUP_TO_DECIDE 将待确认选项以单选按钮的方式显示的弹出窗口

    POPUP_TO_DECIDE_WITH_MESSAGE 带消息的确认窗口

    POPUP_TO_DISPLAY_TEXT 显示多行信息的窗口

    POPUP_TO_SELECT_MONTH 月份选择窗口

    实例:

    DATA:    selmonth(6TYPE n,
             retcode LIKE sy-subrc.
    selmonth sy-datum(6).

    CALL FUNCTION 'POPUP_TO_SELECT_MONTH'
      EXPORTING
        actual_month                     selmonth
    *    FACTORY_CALENDAR                 = ' '
    *    HOLIDAY_CALENDAR                 = ' '
    *    LANGUAGE                         = SY-LANGU
    *    START_COLUMN                     = 8
    *    START_ROW                        = 5
      IMPORTING
       selected_month                   selmonth
       return_code                      =   retcode
    *  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.

    图例:

    POPUP_WITH_TABLE_DISPLAY 有表格对象的确认窗口

    一组操纵客户端文件系统的函数
    GUI_CREATE_DIRECTORY 在PC上建立文件目录

    GUI_DELETE_FILE 删除PC上的文件

    GUI_DOWNLOAD 文件下载函数

    GUI_EXEC 执行PC上的程序,或者打开文件

    GUI_GET_DESKTOP_INFO 得到PC客户端的系统信息,比如操作系统等

    GUI_REMOVE_DIRECTORY 删除PC目录

    GUI_RUN 运行PC程序(ShellExecute)

    GUI_UPLOAD 从PC上传程序

    判断某天是否是假日 
    HOLIDAY_CHECK_AND_GET_INFO

    ABAP_DOCU_DOWNLOAD 
    Download ABAP documentation in HTML format.

    GET_CURRENT_YEAR
    得到当前的财政年(fiscal year)

    察看某日期的属性,包括该日期是星期几,第几天(周2=2),是不是公共假期等,需要输入国家日历。

    DAY_ATTRIBUTES_GET

    Return useful information about a day. Will tell you the day of the week as a word (Tuesday), the day of the week (2 would be Tuedsay), whether the day is a holiday, and more.(provided by Francois Henrotte)?

    CLPB_IMPORT :从剪贴板导入internal table
    CLPB_EXPORT : 从internal table输入到剪贴板
    示例程序:GRCLPB_1

    在SE38环境下的程序名输入栏输入'DEMO*'后按F4,你可以查到SAP所有的DEMO示例程序,会学到很多ABAP功能的实现方法,输入'BCALV*'后按F4,你可以查到很多ALV示例程序。

  • 相关阅读:
    【LCT维护基环内向树森林】BZOJ4764 弹飞大爷
    【LCT】BZOJ3091 城市旅行
    【LCT+主席树】BZOJ3514 Codechef MARCH14 GERALD07加强版
    【最大权闭合子图】bzoj4873 [Shoi2017]寿司餐厅
    【LCT】BZOJ2049 [SDOI2008]Cave 洞穴勘测
    【有上下界的网络流】ZOJ2341 Reactor Cooling(有上下界可行流)
    【费用流】BZOJ1061: [Noi2008]志愿者招募(这题超好)
    从输入url到页面加载的过程
    forEach和map的区别
    理解 JavaScript 对象原型、原型链如何工作、如何向 prototype 属性添加新的方法。
  • 原文地址:https://www.cnblogs.com/ruingy/p/3422020.html
Copyright © 2020-2023  润新知