Category Archives: ABAP

  • SAPUI5日期时间的处理

    SAPUI5日期时间的处理

    在JS中,我们可以使用new Date(),来得到前端的日期(时间),但此得到的时间格式化为如:Fri Jan 22 2021 15:08:32 GMT+0800 (中国标准时间),这数据使用起来明显不太方便,我们可能会想得到标准的SAP格式20210122,又或者2021-01-22等等。所以我们就需要在得到一个日期对像时进行转换,或者把一个字符串转换成日期对像。 Continue reading …
  • odata中Function Imports的使用

    odata中Function Imports的使用

    在做SAPUI5开发时,我们会需要做的特定的ACTIONS动作操作,比如,把选定的行进行采购收货,交货,或者做发票校验等操作,这些操作,我们都需要在SAP Gateway做好后端开发,也就是做ODATA的对应功能,给前端SAPUI5使用。做ODATA时,我有三个想法, 1.使用Entity的CREATE方法,在POST的方法中实现,但测试后现发在前端OMODEL.create时,只能提交单行,而在一些操作时,我们所需要的是一次提交多行,所以此方法没成,也考虑在PUT,MERGE中实现,但还没测试,不过,可能性很小,应该也不行。 2.使用Function Imports,此法在SEGW中创建一个Function 的功能来给前端调用,此文章主要介绍此法。 Continue reading →
2019
08-29

ABAP常用函数汇总 HOT

ABAP_DOCU_DOWNLOAD Download ABAP documentation in HTML format. APPL_LOG_DELETE With this function module you delete logs in the database according to specified selection conditions APPL_LOG_DISPLAY With this function module you can analyze logs in the database. APPL_LOG_DISPLAY_IN....Read More >
2019
08-29

【经典系列】创建CHANGE LOG的经典手册 HOT

【经典系列】创建CHANGE LOG的经典手册 做SAP 表,字段级的变更记录到,CDHDR和CDPOS的方法   l  表字段啟用日誌記錄功能   若做字段級的日誌記錄,需要在數據元素中勾選change document標記:     勾選此標記后,系統才能記錄此字段的更改前後值;否則只能按主鍵記錄整條記錄的增刪改記錄;   l  SCDO註冊物件   此處為控制生成的日誌記錄function的參數;表格名稱即為需要記錄日誌的table,生成記錄日誌的function module可有兩種格式,三個勾選的checkbox為ta....Read More >
2019
08-29

【经典系列】SM30的经典玩法 HOT

【经典系列】SM30的经典玩法 关于SM30维护数据,经常需要记录创建人创建时间, 修改人和修改时间. 当然实现的方法有很多种, 直接修改屏幕,在PAI中实现,或事件中实现. PAI找个地方,加段代码.事件的写法也好多种. 个人比较喜欢的是尽量少的代码修改,可以到处部署的那种.   介绍一种比较简单的写法: 1. 如果下图,我们准备个通用的字段信息 2. 在SE54中维护事件,通用 3. form代码, 通用<唯一需要把表名替换成,你自己的数据库表> [crayon-6....Read More >
2019
08-29

ABAP日期相关的常用函数 HOT

计算两个日期间的工作天数,就是剔除了双休日后的天数.( 待考证) DATE_CONVERT_TO_FACTORYDATE HR_HK_DIFF_BT_2_DATES 根据当前时间如何找到上月的第一天和最后一天? CALL FUNCTION 'FIMA_DATE_CREATE' EXPORTING I_DATE = SY-DATUM I_MONTHS = '-1' I_SET_LAST_DAY_OF_MONTH = 'X' IMPORTING E_DATE = LAS....Read More >
2019
08-29

字符串的一些操作, HOT

字符串的一些操作, 其实,以下这些功能,我也很少用到,只是收集来的。 1.对字符串的操作 1).SHIFT:截断字符串 SHIFT {c} [BY {n} PLACES] [{mode}].: 作用:去掉字符串的前n个位置的字符,如果n未指定,默认为1,如果指定的n小于等于0,则字符串不变。如果n超出字符串的长度,则字符串变空,所以在做此操作的时候要注意n的指定。可以首先获得该字符串的长度,方法:len=STRLEN(C)。 Mode:指定字符串截断的方向。 LEFT:从左边截断 RIGHT:从....Read More >
2019
08-29

【经典系列】-OO ALV中的OK_CODE触发oo ALV外的命令 HOT

【经典系列】-OO ALV中的OK_CODE触发oo ALV外的命令 如下图所示,上面是一个dialog界面,下面一个OO ALV显示结果。 如何实现,双击ALV的项目行,更新项目行信息到dialog界面上去呢?                               这样就对应到一个事件方法.如下代码,主要是一个方法set_new_ok_code. *创建双击事件,显示历史记录   create object: g_event_receiver.   set handler g_event_receiver->handle_d....Read More >