【webapi】实现采购申请单下推采购订单后,修改下游订单数据,并且新增付款计划原创
金蝶云社区-王尚策
王尚策
4人赞赏了该文章 473次浏览 未经作者许可,禁止转载编辑于2023年03月09日 16:57:18

【webapi】实现采购申请单下推采购订单后,修改下游订单数据,并且新增付款计划



背景:

  1. 调用下推接口,实现上下游单据的关联

  2. 只修改必要下游单据字段,简化传参

  3. 修改的同时,新增付款计划

  4. 官方API交流QQ群:857982100



步骤:

1、先调用申请单下推接口

{
  "EntryIds": "265517",
  "RuleId": "PUR_Requisition-PUR_PurchaseOrder",
   "IsDraftWhenSaveFail": "true"
}

要点:

由于申请单上是没有【供应商】的,推到下游订单后【供应商】是空的且默认必填,保存会不成功,所以此时我们   设置"IsDraftWhenSaveFail": "true",下推后的订单为【暂存】状态,此时会返回下游单据的FID




2、利用查询接口,用下游订单的FID查询订单分录id:FENTRYID

{
  "data": {
    "FormId": "PUR_PurchaseOrder",
    "FieldKeys": "FID,FPOOrderEntry_FEntryid",
    "FilterString": "FID='393015'"
  }
}

返回:

[

393015,
393521

]




3、构建修改的JSON,以修改订单的供应商、采购员、含税单价、采购数量、新增付款计划为例

{
  "Model": {
    "FID": "393015",
    "FSupplierId": {
      "FNumber": "051101"
    },
    "FPurchaserId": {
      "FNumber": "0001"
    },
    "FPOOrderFinance": {
      "FEntryId": 393521,
      "FPayConditionId": {
        "FNumber": "002"
      }
    },
    "FPOOrderEntry": [
      {
        "FEntryId": "393521",
        "FQty": "20",
        "FTaxPrice": "6"
      }
    ],
    "FIinstallment": [
      {
        "FYFRATIO": "41.66667",
        "FYFAMOUNT": "50.00",
        "FISPREPAYMENT": "1"
      },
      {
        "FYFRATIO": "58.33333",
        "FYFAMOUNT": "70.00",
        "FISPREPAYMENT": "1"
      }
    ]
  }
}

要点:

FPOOrderFinance

这个财务页签里,这个付款条件FPayConditionId字段一定要填充完整,不然付款计划不会新增成功



4、最终结果

采购员、供应商、含税单价、采购数量更新成功,付款计划也新增成功

A5~%02VCL}~B@ECS]9WRNSL.jpg

D`CQ_`T~KM1KWSSN~T$633Q.png

图标赞 4
4人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!

您的鼓励与嘉奖将成为创作者们前进的动力,如果觉得本文还不错,可以给予作者创作打赏哦!

请选择打赏金币数 *

10金币20金币30金币40金币50金币60金币
可用金币: 0