携带采购订单付款计划自定义字段到采购入库单明细信息上
@[TOC](目录)
### 背景
在采购订单付款计划上新增了一个自定义字段,按物料明细付款时,想根据对应的物料行号将其携带到下游入库单的明细信息中,由于单据转换没办法配置多对一实体映射携带,因此可用二开方式实现。单据转换的字段映射中的自定义公式中的明细信息是不可迭代的对象,并且在其中获取不到付款计划实体的数据,因此考虑二开python插件实现。
### 步骤
1. 采购订单付款计划新增自定义字段
![1、采购订单付款计划新增自定义字段.webp](/download/0100562b4a7646284ddd8a6726a108109162.webp)
2. 采购入库单明细信息新增对应自定义字段
![2、采购入库单明细信息新增对应自定义字段.webp](/download/0100c1447d64b6f74225810e8567ffa345f9.webp)
3. 采购订单到采购入库单新增python插件处理跨实体字段携带
![3、采购订单到采购入库单新增python插件处理跨实体字段携带.webp](/download/0100fbc1adbf8b134b81ae7001437f4de350.webp)
### python脚本
```python
import clr
clr.AddReference('Kingdee.BOS')
clr.AddReference('Kingdee.BOS.Core')
clr.AddReference('Kingdee.BOS.App')
from Kingdee.BOS import *
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.BusinessFlow.PlugIn import *
from Kingdee.BOS.Core.Base import *
from Kingdee.BOS.Core.Metadata import SelectorItemInfo
_SourcesData = {}#定义全局变量用来存放采购订单付款计划数据
def OnQueryBuilderParemeter(e):
e.SelectItems.Add(SelectorItemInfo("FMATERIALSEQ"))#引用付款计划中的物料行号字段
e.SelectItems.Add(SelectorItemInfo("F_SXIM_Text"))#引用付款计划中的自定义字段
def OnGetSourceData(e):
global _SourcesData#加载全局变量
if e.SourceData != None and e.SourceData.Count > 0:
for data in e.SourceData:
k = str(data["FMATERIALSEQ"])
v = str(data["F_SXIM_Text"])
_SourcesData[str(k)] = str(v)#将付款计划中的物料行号和自定义字段以键值对类型存储
def OnGetDrawSourceData(e):
global _SourcesData#加载全局变量
if e.SourceData != None and e.SourceData.Count > 0:
for data in e.SourceData:
k = str(data["FMATERIALSEQ"])
v = str(data["F_SXIM_Text"])
_SourcesData[str(k)] = str(v)#将付款计划中的物料行号和自定义字段以键值对类型存储
def AfterConvert(e):
global _SourcesData#加载全局变量
billHeads =e.Result.FindByEntityKey("FBillHead")#获取目标入库单表头
for billHead in billHeads:
entrys = billHead["InStockEntry"]#获取目标入库单明细信息
for entry in entrys:
seq = str(entry["Seq"])#获取入库行号
entry["F_SXIM_Text"] = _SourcesData[str(seq)]#根据入库单行号匹配采购订单的自定义字段数据
```
**根据自己的自定义字段标识修改如下内容:**
![image.webp](/download/010079d0a1fff87b465f967b5d70d83489fe.webp)
### 效果
1. 采购订单测试数据
![4、采购订单测试数据.webp](/download/0100a623d7deb4474f599398e1b66ea219e5.webp)
2. 采购入库单按分录序号携带上游付款计划字段
![5、采购入库单按分录序号携带上游付款计划字段.webp](/download/0100386690a7cdac4741ba48adb389f3b69a.webp)
**其他更多文章入口:**[https://vip.kingdee.com/link/s/lbRPP](https://vip.kingdee.com/link/s/lbRPP)
携带采购订单付款计划自定义字段到采购入库单明细信息上
@[TOC](目录)### 背景在采购订单付款计划上新增了一个自定义字段,按物料明细付款时,想根据对应的物料行号将其携带到下游入库单的明细信...
点击下载文档
上一篇:在采购申请单根据物料获取最近下订单的供应商下一篇:二开付款执行明细单据体
本文2024-09-23 02:34:19发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-153306.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章