分类目录归档:ABAP

  • 创建银行账号

    创建银行账号

    银行账号就是我们用来收款,付款时的银行账号了,比如我的银行卡号就是一个银行账号。此功能对应的SAP标准功能是FI12,在ECC版本直接可以在FI12上创建银行账号,但HANA S4时默认时FI12是不可创建的,需要修改配置(网络上可找到),S4推荐的维护银行账号的方法是使用FIORI,在项目中也使用了WEBDypro做了一个更复杂的功能来实现,但我觉得一般需求来说,使用FIORI应该是最好的选择, …
  • 使用BOPF自动填写入默认值

    使用BOPF自动填写入默认值

    在创建表时,我们通常会有一些默认值,比如创建人,创建时间,更改人,更改时间等,通常的们会有创建表维护时使用“事件”,来在创建、更改时实现这功能,但当我们的数据是在FIORI中使用或者其它接口中使用时,这种方法就不行了,当然我们也可以用提供的ODATA的数据中直接填入默认值,但这样就做不到统一了,也不是很方便, 为了实现这功能,我们可以创建一个CDS,并生成BOPF来实现,最后使用这人CDS替换到真 …
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-62c3ffad7c193095735728/] 在此BAPI....Read More >
2020
07-26

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

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

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

今天做一个需求,需修改STO创建的DN(内向交货单,外向交货单)单项目中的库存地点,就是LIPS-LGORT。 开始时想在交货过账时顺便一起修改,我使用的是WS_DELIVERY_UPDATE过账的,在过账的程序如下,在网上找到说是加入口KZLGO这个标记可修改,但我测试总是不成功,不成功代码如下: [crayon-62c3ffad7d02e715408494/] 后来没有办法,只能是使用DN单的更新BAPI函数,在过账前进行修改一下, 成功代码 [crayon-62c3ffad7d036581817348/] ....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-62c3ffad7d1d0445296753/] 但需要注意的是此函数只能对字段串进行处理,所以如是在ALV显示时可把数值金额字段附值给字段串再显示。 法二 1.构建ALV的FIELDCATE时,设置 edit_mask....Read More >
2020
06-15

函数直接调用SM30_SM34 HOT

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