好用的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 月份選擇窗口
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)?

REUSE_ALV_VARIANT_DEFAULT_GET 讀取默認的佈局
REUSE_ALV_VARIANT_EXISTENCE 檢測指定佈局是否存在
REUSE_ALV_VARIANT_F4 顯示佈局格式選擇對話窗.
具體可參考BALVST02_GRID程序。


CLPB_IMPORT :從剪貼板導入internal table
CLPB_EXPORT : 從internal table輸入到剪貼板
示例程序:GRCLPB_1

在SE38環境下的程序名輸入欄輸入'DEMO*'後按F4,你可以查到SAP所有的DEMO示例程序,會學到很多ABAP功能的實現方法,輸入'BCALV*'後按F4,你可以查到很多ALV示例程序  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章