
# 一、业务背景
- 随着越来越多的外部系统通过WebAPI的方式对接金蝶云星空中的生产入库单,但是由于生产入库单业务复杂,构建保存的数据包过程出现不同的错误,下面就关于构建生产入库单的Json数据几个需要注意的点,下面以构建
**生产入库单关联生产订单**的数据包作为案例,进行简单的介绍。
## 1、保存接口(
重点)
1. 首先由于标准产品的生产入库单手工新增仅支持联副产品,所以导致小伙伴们构建的json数据,物料是主产品的话是无法保存的,在这里需要开放控制,在构建json数据的时候,需要将表体FIsNew字段根据产品类型字段赋值,物料是主产品的 FIsNew 的值为false,物料是联副产品,FIsNew的值为true。
1. 另外为了保证生产入库单的业务正常运转,除去一些必录字段,以下字段也还需要必录,且下列字段需要放到物料编码之前赋值。
|序号|字段标识|字段名称|字段说明
|:---|:---:|---:|---|
|01|FMoBillNo|生产订单编号|生产订单编号
|02|FMoId|生产订单内码|生产订单内码
|03|FMOMAINENTRYID|生产订单主产品分录内码|默认等于生产订单分录内码
|04|FMoEntryId|生产订单分录内码|生产订单分录内码
|05|FMoEntrySeq|生产订单行号|生产订单分录行号
|06|FSrcBillType|源单类型|关联业务单据标识;如:PRD_MO
|07|FSrcBillNo|源单编号|关联业务单据编号;如:生产订单编号
|08|FSrcInterId|源单内码|关联业务单据内码;如:生产订单内码
|09|FSrcEntrySeq|源单行号|关联业务单据分录行号;如:生产订单分录行号
|10|FSrcEntryId|源单分录内码|关联业务单据分录内码;如:生产订单分录内码
|11|FBFLowId|业务流程|生产入库单上业务流程字段;如:生产直接入库流程【f11b462a-8733-40bd-8f29-0906afc6a201】
1. 关联关系的构建(
【FEntity_Link】决定生产入库单是否正确关联生产订单以及反写)
1. 关于关联关系的构建说明可参考 【
https://vip.kingdee.com/article/171055?productLineId=1 】
|序号|字段标识|字段名称|字段说明
|---|---|---|---|
|01|FEntity_Link_FRuleId|生产订单到生产入库单单据转换标识|如:PRD_MO2INSTOCK
|02|FEntity_Link_FSTableName|生产订单表体表名|如:T_PRD_MOENTRY
|03|FEntity_Link_FSBillId|生产订单内码|生产订单内码
|04|FEntity_Link_FSId|生产订单分录内码|生产订单分录内码
|05|FEntity_Link_FFlowId|业务流程|如:生产直接入库流程【f11b462a-8733-40bd-8f29-0906afc6a201】
|06|FEntity_Link_FFlowLineId|推进路线|生产订单到生产入库单,默认等于5
|07|FEntity_Link_FBasePrdRealQtyOld|原始携带量|生产订单基本数量,等于生产入库单基本单位实收数量也可以
|08|FEntity_Link_FBasePrdRealQty|修改携带量|生产入库单基本单位实收数量
**
注意**:构建多行入库单明细行请将WebAPI中参数IsEntryBatchFill设置为false。
参考json实例(**
着重注意下字段顺序**)
下面示例JSON是用的生产订单下推生产入库单的单据转换,如果是其他单据下推,对应字段【FEntity_Link_FRuleId】需要对应的单据转换规则。
```Json
{
"Model": {
"FDate": "2019-09-25 00:00:00",
"FPrdOrgId": {
"FNumber": "100"
},
"FBillType": {
"FNUMBER": "SCRKD02_SYS"
},
"FStockOrgId": {
"FNumber": "100"
},
"FOwnerId0": {
"FNumber": "100"
},
"FEntity": [{
"FInStockType": "1