• Cross-system company code 0502 does not exist


    最近参与了一个项目,是跟用友U8做财务凭证的接口。使用IDOC异步的方式,U8调用PI webservice,然后把数据抛给PI, PI把数据转换成IDOC的格式给到PLP.

    先看下idoc的结构:

    image

    这个每个E1FISEG就会对应FI 凭证的一个Item;因为U8里面没有Profit center、post key的概念,所以这些字段是在用户那边hard code之后发出来的。

    image

    SAP这边做的很少,创建新的partner no.

    1. 在创建partner no.之前先创建新的logical system; BD54; 当然这部操作只针对要创建logical system 类型的partner no. 倘若是VENDOR, CUSTOME这类的partner profile创建是不需要的。

    image

    image

    2. 定义partner profile.

    image

    inbound message type这里选FIDCC1, 这里都是standard 配置。

    image

    配置好之后,U8发送过来的idoc在PLP这端报错,‘Cross-system company code 0502 does not exist’; 而同样的Message type和idoc结构,从PEP发送过来就没问题;

    原因就是这个global company code不同引起的。

    对比一下PEP发出的outbound idoc 这里的BUKRS 502;到了PLP之后idoc会自动转换为0502

    clip_image002

    image

    后台配置

    image

    define global company code.

    image

    assign global code to local company code.

    image

    这样的话,对方系统就需要发送502 company code, 然后到了接收方后系统会自动map成0502;

    U8发出的数据里面BUKRS 是0502,所以到了PLP后,系统无法根据0502去map。 结果就到cross system company code doesnt exist.

    解决方法:只需要把U8发出来的BUKRS 修改为502即可;

    ===========================================================

    参考:https://help.sap.com/saphelp_crm50/helpdata/ja/51/7a4041cf176e24e10000000a155106/content.htm?no_cache=true

    image

  • 相关阅读:
    全面的学习资料(收藏)
    远程下载文件源码
    【转】c#托管资源和非托管资源区别
    Jquery 限制文本框输入字数
    好用的网站
    交叉表查询
    jquery 和 javascript 清空上传控件 方法总结
    关于java.io.IOException问题
    http 302
    django使用静态文件二
  • 原文地址:https://www.cnblogs.com/chrisrockdl/p/13625845.html
Copyright © 2020-2023  润新知