金蝶云星空web api 接口批量修改采购订单上的委外供应商
需求描述
委外的业务流程:委外订单---->采购订单
委外订单下推采购订单,采购订单维护好供应商后,会反写回委外订单/委外用料清单上。
因为一些原因,委外供应商需要更换,由之前的A供应商,替换为现在的B供应商。
但这样的采购订单单据量比较大,如果人工对采购订单一张张反审核,修改委外供应商,工作量较大。
批量保存接口实现供应商更换
接口定义:
BatchSave(formId,data);
请求参数
{
"NumberSearch": "true",
"ValidateFlag": "true",
"IsDeleteEntry": "false", //不删除分录
"IsEntryBatchFill": "true",
"NeedUpDateFields": ["FSupplierId"], //指定需要更新的字段key
"NeedReturnFields": [],
"SubSystemId": "",
"InterationFlags": "",
"IsAutoSubmitAndAudit": "true",
"Model": [
{
"FID": 115969, //单据内码
"FSupplierId": {
"FNumber": "7.12"
}
},{
"FID": 115970,
"FSupplierId": {
"FNumber": "7.12"
}
}],
"BatchCount": 0
}
请求参数说明:
1.formid:业务对象表单Id,字符串类型(必录)
2.data:JSON格式数据(详情参考JSON格式数据)(必录)
2.1.NumberSearch:是否用编码搜索基础资料,布尔类型,默认true(非必录)
2.2.ValidateFlag:是否验证标志,布尔类型,默认true(非必录)
2.3.IsDeleteEntry:是否删除已存在的分录,布尔类型,默认true(非必录)
2.4.IsEntryBatchFill:是否批量填充分录,默认true(非必录)
2.5.NeedUpDateFields:需要更新的字段,数组类型,格式:[key1,key2,...] (非必录)注(更新单据体字段得加上单据体key)
2.6.NeedReturnFields:需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录) 注(返回单据体字段格式:entitykey.key)
2.7.SubSystemId:表单所在的子系统内码,字符串类型(非必录)
2.8.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录) 例如(允许负库存标识:STK_InvCheckResult)
2.9.IsAutoSubmitAndAudit:是否自动提交与审核,布尔类型,默认false(非必录) 注(启用此参数,保存,提交和审核是在一个事务中)
2.10.Model:表单数据包,JSON类型(必录)
2.11.BatchCount:服务端开启的线程数,整型(非必录) 注(数据包数应大于此值,否则无效)
备注:
1.示例Model数据包中字段顺序不建议改变,否则可能会有相互影响,如果出现字段值被覆盖或丢失,则可以尝试把字段顺序向后调整一下。
2.示例Model数据包默认包含允许引入的字段,实际按需构建既可。
返回结果
{
"Result": {
"ResponseStatus": {
"ErrorCode": "",
"IsSuccess": "false",
"Errors": [{
"FieldName": "",
"Message": "",
"DIndex": 0
}],
"SuccessEntitys": [{
"Id": "",
"Number": "",
"DIndex": 0
}],
"SuccessMessages": [{
"FieldName": "",
"Message": "",
"DIndex": 0
}],
"MsgCode": ""
},
"NeedReturnData": [{}]
}
}