单据体明细菜单批量触发取价服务

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

单据体明细菜单批量触发取价服务

@[TOC](目录) ### 背景 有客户想通过点击按钮批量触发单据体每一行的取价服务,并且每一行单独根据某个字段进行条件控制,例如采购订单新变更单上根据变更类型为【新增】时才取价,累计数量取价是一个批量操作,他的条件仅参考明细信息第一行,无法满足客户逐行根据字段条件批量取价的场景,需要在明细字段上新增值更新的取价服务,然后在明细单据体上新增按钮,通过python批量触发 ### 步骤 1. 新增辅助字段,配置取价服务,按业务需要设置前提条件 2. 在明细单据体上新增按钮 ==(一定要在明细上新增按钮,在表头新增按钮本帖不适用)== 3. 注册表单插件(自行修改标识名称) ### python脚本 ```python import clr clr.AddReference('mscorlib') clr.AddReference('Kingdee.BOS.Core') from System import * from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import * def EntryBarItemClick(e):#明细菜单 if e.BarItemKey == "SXIM_tbButton": count = this.View.Model.GetEntryRowCount("FPOOrderEntry")#获取明细总的行数 index = this.View.Model.GetEntryCurrentRowIndex("FPOOrderEntry")#获取当前分录行下标 for i in range(count): this.View.Model.SetEntryCurrentRowIndex("FPOOrderEntry", i)#从0开始设置当前行下标 this.View.InvokeFieldUpdateService("F_SXIM_Text12345", i)#循环触发每一行文本的值更新事件 this.View.Model.SetEntryCurrentRowIndex("FPOOrderEntry", index)#重新恢复当前行下标为原始值 ``` ==说明:== SXIM_tbButton:明细菜单按钮标识 FPOOrderEntry:单据明细信息单据体标识 F_SXIM_Text12345:自定义取价字段标识 **其他更多文章入口:**[https://wenku.my7c.com/link/s/lbRPP](https://wenku.my7c.com/link/s/lbRPP)

单据体明细菜单批量触发取价服务

@[TOC](目录)### 背景有客户想通过点击按钮批量触发单据体每一行的取价服务,并且每一行单独根据某个字段进行条件控制,例如采购订单新变...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息