分类目录归档:ABAP

2020
07-27

指定库存地点创建交货单 HOT

今天的需求是在STO创建DN单时,需要指定库存地点(LIPS-LGORT),开始时使用函数BAPI_OUTB_DELIVERY_CREATE_STO创建DN,发现不能在BAPI中指定LGORT的值,所以就想使用创建完成后,再修改的方式进行处理,就是创建DN单后,再修改DN的的库存地点LGORT,但此方法的问题是在创建成功,后修改时又发现库存不足等问题,而此时DN单已创建成功了,明显不能满足需求,所以后来就想到用增强的方法,在创建时指定LGORT,在增强中写入LGORT的值, 调用BAPI创建DN [crayon-5f36eeeaa2c14492129534/] 在此BAPI....Read More >
2020
07-26

变量、内表的读取与写入到内存段中 HOT

在一些时候,我们需要把当前的变量值,内表等信息写入到内存中,以便于在其它的增强,或者程序中共享使用此变量的值,这时我们就需要变更写入到内存中,以使用于读取使用。 把变量写入到内存 [crayon-5f36eeeaa34de878178662/] 从内存中读取变量值 [crayon-5f36eeeaa34e4477105718/] ....Read More >
2020
07-21

修改交货单的库存地点LGORT HOT

今天做一个需求,需修改STO创建的DN(内向交货单,外向交货单)单项目中的库存地点,就是LIPS-LGORT。 开始时想在交货过账时顺便一起修改,我使用的是WS_DELIVERY_UPDATE过账的,在过账的程序如下,在网上找到说是加入口KZLGO这个标记可修改,但我测试总是不成功,不成功代码如下: [crayon-5f36eeeaa35da840570305/] 后来没有办法,只能是使用DN单的更新BAPI函数,在过账前进行修改一下, 成功代码 [crayon-5f36eeeaa35e0220758551/] ....Read More >
2020
07-02

WEB调试 HOT

WEB调试 WEB调试地址: https://post.ut163.com/cn/ 官网地址:https://postwoman.io/ 在ABAP开发时,我们需要测试第三方系统的WEBSERVICE ,或者是PI生成的SI,Inbound PROXY接口时,我之前是使用soapUI,后来也使用过POSTMAN,最近发出了这个POSTWOMAN,功能与POSTMAN一样,所以就自己安装了这个, 其实POSTWOMAN,可以测试WEB 网的所有操作,有以下优点: 支持SAP P....Read More >
2020
06-30

ABAP 负号提前 HOT

SAP默认显示金额,数值时,负号都显示在后面(比如,100.00-),与中国的显示格式不一致,在ALV显示,接口传输时,我们通常需要 负号显示在前面比如,100元,我们要显示为-100.00,而不是100.00-,所以在显示数值时我们需要使用函数CLOI_PUT_SIGN_IN_FRONT进行转换一下。 法一 例子如下: [crayon-5f36eeeaa3749731390898/] 但需要注意的是此函数只能对字段串进行处理,所以如是在ALV显示时可把数值金额字段附值给字段串再显示。 法二 1.构建ALV的FIELDCATE时,设置 edit_mask....Read More >
2020
06-15

函数直接调用SM30_SM34 HOT

今天做一个需求,需要在自己的程序中调用SM30,本想着直接SUBMIT,或者是CALL TRANSFORMATION,但此SM30对应的程序是程序池,测试了一下,不知应该如何调用,而使用SUBMIT时,得把表维护创建成事务码,并且用户还得申请此事务码的权限,项目上管理事务太严,申请事务码太麻烦,所以此方法也不太好,最后找到一个调用VIEW_MAINTENANCE_CALL,使用此函数可以相当于调用SM30,功能应该比直接SUBMIT还多, 并且重要的是跳过了SM30事务码的权限检查。 在LT_VIMSELLIST中可以加入表维护筛选条件。使用中如下。 [crayo....Read More >
2020
06-04

批量导入角色并设置事务码角色 HOT

批量导入角色并设置事务码角色 批量导入角色,并在EXECL中的事务码中导入角色并管理事务码。 导入后结果如图 导入EXECL数据模板如图, 批量导入用户权限角色及事务码的ABAP代码 [crayon-5f36eeeaa39b3179827698/] 模板下载 batch_create_role_template下载 ....Read More >
2020
05-28

接口报文保存到内表中 HOT

接口报文保存到内表中 今天有一个需求,接收PI传数据过来后,除整理数据保存到用户数据表外,在后期还需要把报文加工一下(要求报文内容与原接收报文一致,只是补加少量值),在发送到其它的系统。由于数据接收后已对数据加工到了用户表,已没有原报文内容(比如金额已累计),如从用户数据表中再取出数据整理加入发送出去,一是整理数据太麻烦,二是一些数据可能已丢失,并不能很好的还原接收到的报文。 所以考虑在接收到报文时,把接收到的报文(结构化数据)保存到内表中,然后在需要再次发送出去时,从内表中取出数据,并做必要的整理,然后再发....Read More >
2020
05-24

判断字符串是否为数值 HOT

使用用与正则表达式判断一个字符串是否为数值,可以带小数点,是否为金额值等,否则如直接把一个字符串附值给一个金额字段时,是会报错的,可以先用此方法判断是否为数据,如是数据再附值给金额字段就不会报错了。 [crayon-5f36eeeaa3cc0183246402/] ....Read More >