--------------------------------------------------
获取每个月的最后一天
---------------------------------------------------
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 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示例程序
2008.05.19
-------------------------------------------------------------------
读取组织结构
-------------------------------------------------------------------
CALL FUNCTION 'RH_STRUC_GET'
EXPORTING
act_otype = 'O'
act_objid = p_orgeh “单位
act_wegid = 'O-O_DOWN' ” 评估路径
act_plvar = '01' “版本
act_begda = sy-datum
act_endda = sy-datum
TABLES
result_objec = tab_org1 ” 返回结果
EXCEPTIONS
no_plvar_found = 1
no_entry_found = 2
OTHERS = 3.
--------------------------------------------------------------------
------------------------------------------------------------------------------
读取 pc261 簇目录 (工资发放结果的输入和输出)
------------------------------------------------------------------------------
* DATA:tab_in_rgdir LIKE pc261 OCCURS 0 WITH HEADER LINE.
CALL FUNCTION 'CU_READ_RGDIR'
EXPORTING
persnr = pernr-pernr
* BUFFER =
* NO_AUTHORITY_CHECK = ' '
* IMPORTING
* MOLGA =
TABLES
in_rgdir = tab_in_rgdir "pc261结果表
EXCEPTIONS
no_record_found = 1
OTHERS = 2.
--------------------------------------------------------------------------------
读取payroll
--------------------------------------------------------------------------------
* DATA:l_py_result TYPE paycn_result,
* l_seqnr type pc261-seqnr .
CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'
EXPORTING
* clusterid =
employeenumber = p0002-pernr
sequencenumber = l_seqnr
* READ_ONLY_BUFFER = ' '
* READ_ONLY_INTERNATIONAL = ' '
* ARC_GROUP = ' '
check_read_authority = 'X'
* FILTER_CUMULATIONS = 'X'
* CLIENT =
* IMPORTING
* VERSION_NUMBER_PAYVN =
* VERSION_NUMBER_PCL2 =
CHANGING
payroll_result = l_py_result
EXCEPTIONS
illegal_isocode_or_clusterid = 1
error_generating_import = 2
import_mismatch_error = 3
subpool_dir_full = 4
no_read_authority = 5
no_record_found = 6
versions_do_not_match = 7
error_reading_archive = 8
error_reading_relid = 9
OTHERS = 10.
----------------------------------------------------------------------------------
从HRP里取出数据到内表的方法
----------------------------------------------------------------------------------
CALL FUNCTION 'RH_READ_INFTY_NNNN'
EXPORTING
PLVAR = '01'
OTYPE = 'O'
OBJID = OBJID
INFTY = '9774'
SUBTY = '0002'
begda = G_BEGDA
endda = G_ENDDA
TABLES
INNNN = TAB9774
EXCEPTIONS
NOTHING_FOUND = 1
WRONG_CONDITION = 2
INFOTYP_NOT_SUPPORTED = 3
WRONG_PARAMETERS = 4
OTHERS = 5.
------------------------------------------------------------------------
从HRT里取出数据到内表的方法
------------------------------------------------------------------------
CALL FUNCTION 'RH_READ_INFTY_TABDATA'
EXPORTING
infty = '9773'
* DBMODE = ' '
* RETURN_INITIAL = 'X'
TABLES
innnn = i9773
hrtnnnn = i_hrt9773
EXCEPTIONS
no_table_infty = 1
innnn_empty = 2
nothing_found = 3
OTHERS = 4
.
IF sy-subrc <> 0.
LOOP AT i9773 WHERE istat = '1'.
CALL FUNCTION 'RH_GET_TABDATA_FROM_ITAB'
EXPORTING
tabnr = i9773-tabnr
TABLES
hrtnnnn = i_hrt9773
ptnnnn = i_ht_pt9773
EXCEPTIONS
nothing_found = 01.
IF sy-subrc <> 0.
ENDIF.
ENDIF.