缺料分析订单明细分录刷新携带客户化字段二开方案
## 实现原理
SupplyDemandStateRptServiceHelper.LoadCustPropertyByEFM提供一个通用的单据字段携带方案。通过配置参数以及在表单插件或操作插件内调用该方法即可实现客户化的字段携带
## BOS设计器配置
### 添加二开字段
![1.webp](/download/0100038a9aa0e7ba423dabd2155000c3d4d7.webp)
### 配置映射关系
![2.webp](/download/0100fe3e6aa4fd844221b69076896427ea41.webp)
#### 映射关系详解:
key:配置字段在关联携带单据的来源字段,格式为{关联携带单据标识}|{关联携带单据字段},如本图所示为携带生产订单的未入库数量字段:PRD_MO|FNoStockInQty
Value:配置的携带目标字段,填入携带目标字段的标识即可。
注意:字段的携带与携带源单的字段类型请按照同类型关系携带,请勿在未经技术指导的情况下配置不同类型的字段携带。
## 参考插件
基于表单插件调用LoadCustPropertyByEFM
```csharp
import clr
clr.AddReference('Kingdee.K3.MFG.ServiceHelper')
clr.AddReference('Kingdee.K3.Core')
from Kingdee.K3.Core.MFG.PLN.ParamOption import ExtFieldMapOption
from Kingdee.K3.MFG.ServiceHelper.PLN import SupplyDemandStateRptServiceHelper
def LoadEntryMappingExtField():
entrys = this.Model.DataObject["Entity"]
for entry in entrys:
selOrderType = entry["SelOrderType"]
if selOrderType=="A":
entry["BillFormId"]= "PRD_MO"
elif selOrderType == "B":
entry["BillFormId"]="SUB_SUBREQORDER"
efmOption = ExtFieldMapOption()
efmOption.FormId = "PRD_LackAnalyeBill"//当前表单的FormId
efmOption.EntryKey = "FEntity"//当前表单携带目标字段所属的标识
efmOption.EntryProp = "Entity"//当前表单携带目标字段所属的实体的ORM实体名
efmOption.OperationNumber = "UpdateMOField"//配置映射关系的操作标识
efmOption.BillFormIdKey = "FBillFormId"//关联携带单据的单据标识字段
efmOption.BillInterIdKey = "FMoId"//关联携带单据的单据头内码字段
efmOption.BillEntryIdKey = "FMoEntryId"//关联携带单据的分录内码字段
efmOption.Data = this.View.Model.DataObject
efmResult = SupplyDemandStateRptServiceHelper.LoadCustPropertyByEFM(this.Context, efmOption)
if efmResult.FuncResult is not None:
this.View.UpdateView(efmOption.EntryKey)
def BarItemClick(e):
if e.BarItemKey=='tbReload':
LoadEntryMappingExtField()
```
缺料分析订单明细分录刷新携带客户化字段二开方案
## 实现原理SupplyDemandStateRptServiceHelper.LoadCustPropertyByEFM提供一个通用的单据字段携带方案。通过配置参数以及在表单插件或操...
点击下载文档
上一篇:计划管理7天学习营课程下一篇:生管平台支持分析未审核状态的生产/委外订单
本文2024-09-23 03:15:12发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-157672.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章