记录:对接金蝶Open API时一个巨坑的问题(500 字段“”是必填项)

1 篇文章 0 订阅

应用情景:使用自己所用的系统向金蝶系统中保存单据
面临的错误提示:

{"Result":{"ResponseStatus":{"ErrorCode":500,"IsSuccess":false,
"Errors":[{"FieldName":"FSupplierId","Message":"字段“供应商”是必填项","DIndex":0},
{"FieldName":"FSettleCurrId","Message":"字段“结算币别”是必填项","DIndex":0}]
,"SuccessEntitys":[],"SuccessMessages":[],"MsgCode":11},"Id":"","Number":"","NeedReturnData":[{"FID":121050,"FBillNo":null}]}}

这是我的部分json数据,FsupplierID没有截出来,不是没有!!!
在这里插入图片描述

看了金蝶社区的各种解释:说是供应商不存在或是未给当前用户等分配啥的,还有说要给内码、不是编码。这些我都确定了,我的数据没有问题。用同样的信息我手动填写了一张单据是通过的。所以还是觉得是数据的问题。最后仔细的重新阅读了开发文档。
在这里插入图片描述
这么重要的信息。用这么小的字表示。我整个心态都崩了。

之后我就根据顺序修改。但是Java中对象转为JSONObject对象,虽然对顺序进行要求,但是还是没法保证和金蝶的顺序一模一样。
最后我发现了一个参数IsAutoAdjustField——是否自动调整JSON字段顺序,布尔类型,默认false(非必录)
将它这是为True就能解决参数顺序问题了,也解决我一开始的500错误。

Over。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值