1.1 一卡通和NC集成开发
1.1.1 一卡通和NC集成需求说明
一卡通可以获取NC系统已经审批且未完成的采购订单,在一卡通系统进行车辆以及到货安排,一卡通系统在获取磅单信息后需要同步给NC系统的到货单,NC系统自动关联对应的订单信息。具体的结算信息由一卡通系统生成,生成后需把最终的结算信息同步给NC系统,在入库信息中记录最终的结算信息。
1.1.2 采购业务和一卡通对接整体流程
1.1.3 采购业务和一卡通对接整体流程说明
1:在NC系统审批采购订单自动同步视图中,可随时供一卡通系统获取
2:一卡通系统根据订单系统进行排车计划,在过磅之后把磅单信息传给NC系统(不允许传重复的榜单信息),NC系统生成到货单自动匹配对应的订单并审核,如果成功则返回一卡通系统成功的消息,如果失败,NC则将具体报错信息反馈到一卡通系统(此过程不包含逆流程)。
3:一卡通系统接到NC返回过磅信息成功后,进行后续业务操作,在结算的时候把结算信息传给NC系统, NC系统生成入库单自动匹配对应的订单并审核,如果成功则返回一卡通系统成功的消息,如果失败,NC则将具体报错信息反馈到一卡通系统(此过程不包含逆流程)。
1.3.4 订单视图开放
csourcetype,--来源系统
cCreateTime,--制单时间
cMakerName,--制单人
cMakerID,--制单人编号
cVerifyTime,--审核时间
cVerifierName,--审核人
cVerifierID,--审核人编号
cInvFactoryCode,--公司编码
cInvFactoryName,--公司名称
/*'' as cVenCode,--承运单位编码
'' as cVenName,--承运单位*/
cPoCode,--来源单据编码-订单单号
cInvCode,--存货编码
cInvName,--存货名称
cInvStd,--规格型号
cWhCode,--仓库编码
cWhName,--仓库名称
cVenCode,--供应商编码
cVenName,--供应商名称
iStatusFlag,--单据状态 0=自由,1=提交,2=正在审批,3=审批,4=审批不通过,5=输出,
cMemo,--备注
Ts,--外部系统更新时间
cPoID,--来源主表ID
cPoSID,--来源字表ID
iRowNo,--来源单据字表行号
iQuantity,--订单数量 主数量
iPrice,--订单单价 含税 主含税单价
iMoney,--金额 含税
cdefinel, --合同号
PK_BILLTYPEID, --订单类型 id
PK_BILLTYPECODE --订单类型编码。
1.3.5 采购到货接收
流程说明
功能说明
NC系统开放采购到货接收接口可供一卡通系统实时调用,一卡通在过磅单完成后传给NC系统生成对应的到货单。NC需要根据回传回来的订单信息自动配对应的订单,单据状态为保存态。
测试接口地址:http://ip:port/uapws/service/nc.bs.Itf.webservice.ImportPONCData
接口方式:webservices
接口名称:importPONCData
接口参数:datatype:23 ,action:01、新增,02、修改,03、删除 (红色废弃,黄色属于变更新增)
数据载体:JSON
服务方:NC
调用方:一卡通
接口触发:一卡通实时调用
接口方向:一卡通 è NC
接收张数:NC每次只接收一单
20190907电话会议变更 红色废弃 变更内容请查看黄色部分
新增修改逻辑说明:
1:传输格式同新增
2:根据vbdef20(磅单号)判断到货单是否已存在,不存在直接报错,是否可以删除 不允许删除直接返回报错
3:已存在且允许删除的磅单信息,在NC中先删除对应的到货单,删除后直接走新增逻辑重新建立新的到货单 单据为保存态
4:返回报文格式同新增
变更后
1:传输格式同新增
2:根据vbdef20(磅单号)判断到货单是否已存在,不存在直接报错,是否可以删除 不允许删除直接返回报错
3:已存在且允许删除的磅单信息,在NC中先删除对应的到货单,删除后返回删除成功消息
响应报文:
成功:
{
"flag": "true",
"errmsg": "磅单号:js03030303在NC中删除成功,NC到货单号:XXX,已删除!"
}
失败:
{
"flag": " false ",
"errmsg": "磅单号:js03030303在NC中删除失败!原因:XXXXXX"
}
JSON格式:
{
"data": {
"pk_org": "xx",
"dbilldate": "2019-07-24",
"orderbillcode": "CD2019080200065879",
"vbdef20": "test1922153213",
"vmemo": "测试单据",
"items": [{
"orderrowno": "10",
"pk_srcmaterial": "jiacun",
"nnum": "1",
"vbdef14": "车牌11111",
"vbdef15": "司机",
"vmemob": "猪蹄",
"vbdef16": "10"
}]
}}
- 参数说明
名称 | 类型 | 是否必须 | 描述 | 字段说明 |
表头信息 |
|
|
|
|
pk_org | String | 是 | 库存组织 | 传输编码 |
dbilldate | String | 是 | 到货日期 |
|
orderbillcode | String | 是 | 订单号 |
|
vbdef20 | String | 是 | 磅单号 | 表头自定义项20 |
vmemo | String | 是 | 备注 |
|
表体信息 |
|
|
|
|
orderrowno | String | 是 | 订单明细 |
|
pk_srcmaterial | String | 是 | 物料信息 | 传输编码 |
nnum | String | 是 | 数量 |
|
vbdef14 | String | 是 | 车牌号 | 表体自定义项14 |
vbdef15 | String | 是 | 司机 | 表体自定义项15 |
vbdef16 | String | 是 | 磅单行号 | 表体自定义项16 |
vmemob | String | 是 | 行备注 |
|
响应报文:
到货成功
{
"flag": "true",
"msg": "单据保存且审批成功!单据号为:DH2019080200000031",
"data": {
"vbdef20": "test1922153213",
"pk_arriveorder": "1001B11000000006KFKP",
"arrivecode": "DH2019080200000031",
"items": [{
"vbdef16": "10",
"pk_arriveorder_b": "1001B11000000006KFKQ",
"arrivecrowno": "10"
}]
}
}
到货失败,返回格式
{
"flag": "false",
"msg": "XX!",
"data": {}
}
参数说明:
名称 | 类型 | 是否必须 | 描述 |
flag | String | 是 | true=NC处理成功,false=NC处理失败 |
msg | String | 是 | 反馈信息 1:磅单号:xxx在NC中保存成功,NC到货单号:SSS! 2:磅单号:xxx在NC中保存失败,原因:XX |
表头 |
|
|
|
vbdef20 | String | 是 | 磅单号 |
arrivecode | String | 是 | 到货单号 |
pk_arriveorder | String | 是 | 表头主键 |
表体 |
|
|
|
vbdef16 | String | 是 | 磅单行号 |
arrivecrowno | String | 是 | 到货单行号 |
pk_arriveorder_b | String | 是 | 表体主键 |