ABAP常用function

来源:互联网 发布:win7 资源管理器 软件 编辑:程序博客网 时间:2024/05/01 03:55

-----------------------------------------------------
获取生产定单状态
-----------------------------------------------------
call function 'STATUS_TEXT_EDIT'
EXPORTING
flg_user_stat = 'X'
objnr = LO_OBJNR
only_active = 'X'
spras = sy-langu
IMPORTING
line = ls_statu
EXCEPTIONS
object_not_found = 01.


使用:objnr 状态对象号,only_active 激活的 ,


-----------------------------------------------------

--------------------------------------------------
获取每个月的最后一天
---------------------------------------------------
CALL FUNCTION 'LAST_DAY_OF_MONTHS'
EXPORTING
day_in = date
IMPORTING
last_day_of_month = date1.

-------------------------------------------------------

--------------------------------------------------------------
去掉前面0
*&--------------------------------------------------------------------*
*& Form frm_alpha_output 去零
*&--------------------------------------------------------------------*
DEFINE alpha_minus.
call function 'CONVERSION_EXIT_ALPHA_OUTPUT'
exporting
input = &1
importing
output = &1.
END-OF-DEFINITION.

---------------------------------------------------
前面加0
---------------------------------------------------
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = &1
importing
output = &1.

------------------------------------------------

踢用户
TH_DELETE_USER
---------------------------------------
CALL FUNCTION 'CUT_2BYTES_STRINGS'
EXPORTING
I_STR = T_STR
I_LEN = 4
IMPORTING
O_STR = T_TXT04
T_STR 输入字符 I_LEN 长度 T_TXT04输出字符

金额转换成大写
CALL FUNCTION 'SPELL_AMOUNT'
EXPORTING
AMOUNT = T_AMOUNT10
CURRENCY = 'RMB'
LANGUAGE = '1'
IMPORTING
IN_WORDS = S_AMWORD2
EXCEPTIONS
NOT_FOUND = 1
TOO_LARGE = 2
OTHERS = 3.

把SAP里的负号放到前面来的函数
CLOI_PUT_SIGN_IN_FRONT
使用示例

DATA : t(10) TYPE c VALUE '65465-' .

CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT'
CHANGING
value = t.

write : t .

-------------------------------------------
通过这个日期得出那天是星期几
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 月份选择窗口

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 theweek 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示例程序


ABAP 常用FUNCTION集锦1

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 – 弹出一个文件选择对话框。

FTP_CONNECT – 打开并登陆FTP服务器的连接。

FTP_COMMAND – 在FTP服务器上执行一个命令。

FTP_DISCONNECT –关闭指向FTP服务器的连接。

FORMAT_MESSAGE - Takes a message id and number, and puts it into avariable。 Works better than WRITE_MESSAGE, since some messages use $ asa place holder, and WRITE_MESSAGE does not accommodate that, it onlyreplaces 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 ONVALUE REQUEST for those fields that do not provide F4 help at the DDIClevel。

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 whenthe report was executed using SUBMIT。。。EXPORTING LIST TO MEMORY。 Seealso WRITE_LIST。

MONTH_NAMES_GET – 获得所有的月和名字

MONTHS_BETWEEN_TWO_DATES_NEW -获得月份之差

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_WITH_VALUE

POPUP_TO_DECIDE

POPUP_TO_DECIDE_WITH_MESSAGE

POPUP_TO_DISPLAY_TEXT

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

POPUP_WITH_TABLE_DISPLAY -Provide a display of a table for user toselect one, with the value of the table line returned when selected。  ABAP 常用FUNCTION集锦1

  

ABAP 常用FUNCTION集锦1

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 – 弹出一个文件选择对话框。

FTP_CONNECT – 打开并登陆FTP服务器的连接。

FTP_COMMAND – 在FTP服务器上执行一个命令。

FTP_DISCONNECT –关闭指向FTP服务器的连接。

FORMAT_MESSAGE - Takes a message id and number, and puts it into avariable。 Works better than WRITE_MESSAGE, since some messages use $ asa place holder, and WRITE_MESSAGE does not accommodate that, it onlyreplaces 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 ONVALUE REQUEST for those fields that do not provide F4 help at the DDIClevel。

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 whenthe report was executed using SUBMIT。。。EXPORTING LIST TO MEMORY。 Seealso WRITE_LIST。

MONTH_NAMES_GET – 获得所有的月和名字

MONTHS_BETWEEN_TWO_DATES_NEW -获得月份之差

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_WITH_VALUE

POPUP_TO_DECIDE

POPUP_TO_DECIDE_WITH_MESSAGE

POPUP_TO_DISPLAY_TEXT

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

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


原创粉丝点击