Normal Function[转]

本文介绍了一系列SAP ABAP中的实用函数模块,包括获取订单状态、日期操作、用户交互、文件系统管理等功能,并提供了部分函数模块的具体使用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


获取生产定单状态

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

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

 


  

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

 

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


 

CONVERT_OTF – 将SAP文档(SAP Script)转换成其他类型。

 


 

返回一个日期所在的周数

 

DATE_GET_WEEK

 


 

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

DATE_CHECK_PLAUSIBILITY

 


 

 

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


 

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

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

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值