SAP
ABAP_小欧
为中华之崛起而读书
展开
-
SAP VL09 冲销货物移动时候,不能取消来自分散系统的货物移动的报错
之前的旧交货单可在SE16N 中 将LIKP 表的VLSTK 字段值清空。清空表值:LIKP-VLSTK.“分配状态(分散仓库状态)增强BADI:LE_SHP_DELIVERY_PROC。方法:CHANGE_DELIVERY_HEADER。.在增强中,把VLSTK字段清空。原创 2024-03-01 11:27:53 · 1084 阅读 · 0 评论 -
交货过账bapi提示账期未开BAPI_OUTB_DELIVERY_CONFIRM_DEC
【代码】交货过账bapi提示账期未开BAPI_OUTB_DELIVERY_CONFIRM_DEC。原创 2023-02-15 20:43:45 · 295 阅读 · 0 评论 -
字符串查找函数search
说明:在dobj中搜索pattern,如果dobj中存在pattern,sy-subrc返回0,sy-fdpos返回pattern在dobj中的位置;如果dobj中不存在pattern,sy-subrc返回4,sy-fdpos返回0。它与我们以前所更理解的匹配模式完全不一样。这个方法默认是不区分大小写的。语法:SEARCH dobj FOR pattern。以str*结果的字符串。这种组合模式建议少用。字符串(不忽略两端的空格)字符串(忽略两端的空格)注意:str前后的“.”g存在以下的匹配模式。原创 2022-10-08 18:42:46 · 552 阅读 · 0 评论 -
SAP如何获取MIGO操作事务GOACTION,事务参考凭证REFDOC
migo增强,如何获取操作事务GOACTION,事务参考凭证REFDOC原创 2022-08-03 19:07:49 · 573 阅读 · 0 评论 -
查询 (Tcode)跳转ID方法:(SET PARAMETER ID)
SETPARAMETERID,这时输入事务码后按F1,找到参数ID即可。1.做ALV穿透时需要查询。原创 2022-08-02 14:57:58 · 494 阅读 · 0 评论 -
ABAP金额转换大写
ABAP金额转换大写原创 2022-07-19 21:27:12 · 111 阅读 · 0 评论 -
CO01/CO02/CO40/保存校验增强
事务码:SMOD增强点: PPCO0007原创 2022-06-10 09:34:59 · 834 阅读 · 0 评论 -
ABAP 创建设备BAPI BAPI_EQUI_CREATE
DATA: EXT_NUMBER TYPE BAPI_ITOB_PARMS-EQUIPMENT. DATA: DATA_GENERAL TYPE BAPI_ITOB. DATA: DATA_GENERAL_EXP TYPE BAPI_ITOB. DATA: DATA_SPECIFIC TYPE BAPI_ITOB_EQ_ONLY. DATA: DATA_INSTALL TYPE BAPI_ITOB_EQ_INSTALL. DATA: RETURN TYPE B.原创 2021-10-12 10:08:32 · 1241 阅读 · 1 评论 -
ABAP 计量单位转换函数 2021-05-25
计量单位转换函数CALLFUNCTION'CONVERSION_EXIT_CUNIT_OUTPUT'EXPORTINGINPUT=GS_OUTPUT-MEINHIMPORTINGOUTPUT=GS_OUTPUT-MEINH.原创 2021-05-25 13:31:05 · 1005 阅读 · 0 评论 -
SAP ABAP 执行ALV报错 Field symbol has not been assigned yet.
1.检查输出ALV 字段与内表字段结构是否一致,特别是第一个。原创 2020-08-28 10:08:23 · 1963 阅读 · 0 评论 -
SAP ABAP 获取字符串长度
注: 中文占两个字节DATA: lv_str TYPE string, lv_len TYPE i.lv_str = '为中华之崛起而读书'.lv_len = cl_abap_list_utilities=>dynamic_output_length( lv_str ).WRITE lv_len.原创 2020-08-25 09:59:33 · 11354 阅读 · 0 评论 -
ABAP SM30 维护自建表提示“:仅能够通过限制显示和维护
1.此问题的发生是在创建自建表的时候,设置有错误造成的。修改方法如下:选择允许显示/维护 即可原创 2020-08-24 17:36:11 · 2215 阅读 · 0 评论 -
那些SAP 踩过的坑 持续更新。。。。。。。。。
1.用二分法 查询的时候,内表数据不能倒序,这样会有的值查不到。2.用新语法@DATA时,表对应的主键需要都取出来否则会自动去重复数据。3.当定义字段类型为三位小数时,avl会报错,这个时候在alv 处添加参考字段和表。4.FOR ALL ENTRIES IN中参照的内表必须先检查是否为空,如果为空会把取数表的所有数据都取出来。5.在SMARTFORMS 里面当金额字段 向左对齐的时候中间还是会留一大个空间时字段后面加个括号"C" 比如: NUMBER(C)。6. 用AT NEW语法时.原创 2020-08-13 17:00:40 · 673 阅读 · 0 评论 -
执行AVL报错,或运行ALV报错 Call (PERFORM) to a non-existent external routine.
1.在新增程序的时候,一般会拷贝别人的程序过来修改,这样很容易导致细节报错,比如一运行AVL就报一下错误,那是因为结构里面没包含改字段BOX_FIELDNAME 所赋值的列,新增就好了原创 2020-08-13 16:48:11 · 910 阅读 · 0 评论 -
ABAP 负数符号在前面显示/如何将负数改为正数
1. 将负数改为正数DATA:NUM1(10) TYPE I VALUE '-111 ', NUM2(10) TYPE I.NUM2 = 0 - NUM1.WRITE: NUM1, NUM2.2.将负数符号放在前面DATA : t(10) TYPE C VALUE '65465-' .CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT' CHANGING VALUE = T.WRITE : T ....原创 2020-08-06 15:25:29 · 2928 阅读 · 0 评论 -
SAP ABAP 四舍五入函数
ABAP中处理数据的函数方法很多,其中涉及到四舍五入的有两个(可能还有更多):ROUND和HR_NZ_ROUNDING_DECIMALS前者位于Basis功能开发包SZME里面,在标准中用于计量单位的计算;后者主要用于HR模块,位于PB43开发包,处理HR模块中的主数据。HR_NZ_ROUNDING_DECIMALS函数可以直接输入数值,然后在CONV_DEC参数中输入需要保留的小数点即可输出。ROUND函数则有点灵活,可以通过SIGN参数( ‘+’,’-’ )控...原创 2020-07-30 17:25:16 · 7249 阅读 · 0 评论 -
ABAP 写入长文本后,能读取出来,可是在前台界面却不显示 SAVE_TEXT
DATA: GS_HEADER TYPE THEAD .DATA: GT_LTXTS TYPE STANDARD TABLE OF TLINE .DATA: LW_LTXT TYPE TLINE .START-OF-SELECTION . CLEAR GT_LTXTS[] . CLEAR LW_LTXT .*原因在于导入的语言有不相同。" LW_LTXT-TDFORMAT = '1'. LW_LTXT-TDLINE = '嘎嘎嘎嘎嘎过过过过'. APPEND LW_.原创 2020-07-28 17:54:18 · 708 阅读 · 0 评论 -
SAP ABAP 长文本写入或读取 SAVE_TEXT / READ_TEXT
" 写入DATA: GS_HEADER TYPE THEAD .DATA: GT_LTXTS TYPE STANDARD TABLE OF TLINE .DATA: LW_LTXT TYPE TLINE .START-OF-SELECTION . CLEAR GT_LTXTS[] . CLEAR LW_LTXT .*" LW_LTXT-TDFORMAT = '1'. LW_LTXT-TDLINE = '嘎嘎嘎嘎嘎过过过过'. " 长文本 APPEND LW_.原创 2020-07-28 17:48:53 · 3131 阅读 · 0 评论 -
SAP ABAP 金额或数字转换成英文
DATA:GV_JE TYPE SPELL.CLEAR:I_JE.CALL FUNCTION 'SPELL_AMOUNT' EXPORTING amount = T_AMOUNT currency = '232,323.84' language = 'E' IMPORTING in_words = GV_JE EXCEPTIONS not_found = 1 too_large = 2 OTHERS = 3.I.原创 2020-07-18 11:45:23 · 790 阅读 · 0 评论 -
ABAP 日期函数
ABAP 日期函数+demo原创 2020-07-11 14:02:45 · 151 阅读 · 0 评论 -
SAP ABAP 根据日期实现动态ALV标题
TYPES:BEGINOFTY_OUT,CHUSHITYPED,DATE00TYPESTRING,DATE01TYPESTRING,DATE02TYPESTRING,DATE03TYPESTRING,ENDOFTY_OUT.DATA:GS_OUTTYPETY_OUT,GT_OUTTYPESTANDARDTABLEOFTY_OUT....原创 2020-07-11 14:00:55 · 889 阅读 · 1 评论 -
SAP ABAP 获取系统时间,精确到时分秒
DATA:LV_TIMESTAMPTYPETIMESTAMP.DATA:data1TYPESY-DATUM,data2TYPESY-UZEIT,aa(20)TYPEC.moveSY-DATUMtodata1.moveSY-UZEITtodata2.CONCATENATEdata1data2INTOAA.WRITE:aa.原创 2020-07-11 13:58:21 · 4197 阅读 · 0 评论 -
ABAP 金额大小写转换
DATA:g_char17(17) TYPE c. g_char17 = ''. g_char17 = ABS( LV_HDMBTRS ). CONDENSE g_char17. TYPES: cur6 TYPE p DECIMALS 6 , cur2 TYPE p DECIMALS 2 . DATA va1 TYPE cur2. DATA str(40) TYPE c . va1 = g_char17. DATA: scr(30) TY...原创 2020-06-23 19:22:19 · 452 阅读 · 0 评论 -
ABAP 大小写转换
translate *** to upper case."字符小写转大写TRANSLATE ***TO LOWER CASE "字符大写转小写原创 2020-06-19 11:28:05 · 7323 阅读 · 0 评论 -
通过bapi获取设备状态BAPI_EQUI_GETSTATUS
DATA: IT_SYSTEM_STATUS TYPE STANDARD TABLE OF BAPI_ITOB_STATUS, "TABLES PARAM WA_SYSTEM_STATUS LIKE LINE OF IT_SYSTEM_STATUS, IT_USER_STATUS TYPE STANDARD TABLE OF BAPI_ITOB_STATUS, "TABLES PARAM WA_USER_STATUS LIKE LINE OF IT_USER_STATUS."DA.原创 2020-06-12 16:57:21 · 347 阅读 · 0 评论 -
SAP ABAP编程 MOVE-CORRESPONDING 将结构中的数据赋值到另一个结构,并且自动匹配结构
MOVE-CORRESPONDING用于将一个结构中的数据赋予另一个结构中的对应字段,只能存一行数据。所以使用时应该是如下形式:TABLES:spfli.DATA:yp_waLIKEspfli,yp_tabLIKETABLEOFspfli.TYPES:BEGINOFsp,selTYPEc.INCLUDESTRUCTUREspfli.TYPES:ENDOFsp.DATA:waTYPEsp,...原创 2020-06-11 10:23:55 · 2804 阅读 · 0 评论 -
通过GET_TAX_PERCENTAGE 函数获取税率
1.调用SE37函数2.用代码获取 CALL FUNCTION 'GET_TAX_PERCENTAGE' EXPORTING ALAND = 'CN' "国家语言 DATAB = SY-DATUM "当前时间 MWSKZ = IM_MWSKZ "税码 TXJCD = ' ' TABLES T_FTAXP = T_FTAXP..原创 2020-06-10 18:20:56 · 3413 阅读 · 0 评论 -
选择屏幕的上方 (sscrfields) 按钮设置事件处理
1.先定义激活按钮SELECTION-SCREEN:FUNCTIONKEY1,"激活按钮FUNCTIONKEY2.2.在初始化的时候添加按钮INITIALIZATION.FUNCTXT-ICON_ID=ICON_EXPORT.FUNCTXT-QUICKINFO='按钮1'.FUNCTXT-ICON_TEXT='按钮1'.SSCRFIELDS-FUNCTXT_01=FUNCTXT.FUN...原创 2020-06-08 10:19:18 · 831 阅读 · 0 评论 -
计算两个时间之间相差多少秒函数
通过它可以计算两个日期时间之间相差多少秒SWI_DURATION_DETERMINE原创 2020-06-02 11:28:23 · 2052 阅读 · 0 评论 -
smartforms 数量去掉没用的小数位的0
IF GS_OUTPUT-LFIMG IS NOT INITIAL. LF_LFIMG = GS_OUTPUT-LFIMG. CONDENSE LF_LFIMG. " 去掉没用的小数位的0SHIFT LF_LFIMG RIGHT DELETING TRAILING '0'."去掉没用的小数位的0SHIFT LF_LFIMG RIGHT DELETING TRAILING '.'."去掉没用的小数位的0ELSE. LF_LFIMG = '0'."为空就给个空值ENDIF.COND...原创 2020-05-19 09:45:23 · 2488 阅读 · 0 评论 -
ABAP 使用函数获取文本的字段
调用 READ_TEXT 函数原创 2020-04-29 10:23:21 · 507 阅读 · 0 评论 -
smarftosm 字符串处理小技巧
&symbol& (括号中,小写字母为变量)&symbol&屏蔽从第一位开始的N位&symbol (n)&只显示前N位&symbol (S)&忽略正负号&symbol (<)&符号在左边&symbol (>)&...原创 2020-04-27 14:05:11 · 197 阅读 · 0 评论 -
SAP ABAP去掉前导0,或添加前导0
【添加前导0】LOOP AT lt_vkorg INTO DATA(ls_vkorg).ls_vkorg-vkorg = |{ ls_vkorg-vkorg ALPHA = IN }|.MODIFY lt_vkorg FROM ls_vkorg.ENDLOOP.【去除前导0】LOOP AT gt_data INTO gs_data.SHIFT g...原创 2020-03-04 16:01:19 · 7356 阅读 · 0 评论 -
SAP利用SE16N对后台表进行增删改查
在某些情况下,需要在se16n 中修改参数。/h debug进入后,把下列参数设为‘X',然后直接执行,也可以实现GD-SAPEDIT =XGD-EDIT =X原创 2020-02-24 11:05:20 · 864 阅读 · 0 评论 -
SAP ABAP 解锁/锁定账号
BAPI_USER_LOCK 用户锁定BAPI_USER_UNLOCK 用户解锁记得加用户名参数,批量修改就套个LOOP不要直接更新标准表原创 2019-12-24 11:05:33 · 2329 阅读 · 1 评论 -
编辑ALV后更新对应的内表
DATA: gd_repid LIKE sy-repid, ref_grid TYPE REF TO cl_gui_alv_grid. IF ref_grid IS INITIAL. CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR' IMPORTING e_grid = ref_grid. ENDIF. IF NOT ref_grid IS INITIAL...原创 2019-12-23 14:16:39 · 919 阅读 · 0 评论