金蝶云星空通过python实现物料编码审核后自动分配组织
一、业务场景
1、本公司物料编码来源于PDM系统(神州数码),并调用金蝶云星空API接口导入物料和调用审核接口。
2、本公司PDM导入的物料会在,云星空新增字段上写入标识,代表本物料将导入到那个组织。
3、由于公司体量比较大显然人工分配已经已经不现实并且耗时得不偿失。
二、方案选择
根据公司的需求现衍生出两个可行性发难分别是:
1、云星空的自动分配方案
2、开发插件实现自动分配方案
三、实施方法选择
根据上面的发难我选择后者,因为插件分配是实时而云星空自带的是定时执行,定时执行容易影响业务。容易发生不必要的错误。
四、实施方法
1、登录BOS平台
2、进入BOS打开基础资料——》选择物料并双击打开
3、点开操作列表——》选择审核操作
4、选择服务控制——》服务插件——》注册python脚本
5、编写二开审核自动分配脚本
6、如保存提示python脚本保存不需要管直接确定即可
五、源代码如下复制可用
#引入clr运行库
import clr
#添加对cloud插件开发的常用组件的引用
clr.AddReference('System')
clr.AddReference('System.Data')
clr.AddReference('Kingdee.BOS')
clr.AddReference('Kingdee.BOS.Core')
clr.AddReference('Kingdee.BOS.App')
clr.AddReference('Kingdee.BOS.ServiceHelper')
clr.AddReference('Kingdee.BOS.ServiceHelper')
clr.AddReference('Kingdee.BOS.WebApi.Client')
clr.AddReference('Newtonsoft.Json')
#导入cloud基础库中的常用实体对象(分命名空间导入,不会递归导入)
from Kingdee.BOS import *
from Kingdee.BOS.Core import *
from Kingdee.BOS.Core.Bill import *
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import *
from System import *
from System.Data import *
from Kingdee.BOS.App.Data import *
from System.Collections.Generic import List
from Kingdee.BOS.ServiceHelper import *
from Kingdee.BOS.WebApi.Client import *
from Newtonsoft.Json.Linq import *
#重载cloud插件模型的主菜单按钮点击事件
def OnPreparePropertys(e):e.FieldKeys.Add("FCreateOrgId");e.FieldKeys.Add("FUseOrgId");
def EndOperationTransaction(e):appId="206689_XZ9I1ZCL0kl+xfxL473NSa";appSecret="5411be2fc75c476f99cb098b0";url='http://127.0.0.1/k3cloud/';DBId="61cc6e7c5f48d3";user="Administrator";loginFlag=0;for billObj in e.DataEntitys:billNo = str(billObj["Number"]);billId=str(billObj["Id"]);createOrgId=str(billObj["CreateOrgId_Id"]);userOrgId=str(billObj["UseOrgId_Id"]);zzdr=str(billObj["F_ora_Text"]); #获取导入组织if (zzdr<>0):if(createOrgId<>userOrgId):continue;if(loginFlag==0):loginFlag=1;client=K3CloudApiClient(url);loginResult=client.LoginByAppSecret(DBId,user,appId,appSecret,2052);loginResultObj=JObject.Parse(loginResult);iResult=("{0}").format(loginResultObj["LoginResultType"]);if(iResult<>"1" and iResult<>"-5"):raise Exception("第三方登录失败!");if(zzdr=='1B-SH'):formId=this.BusinessInfo.GetForm().Id;obj="{'PkIds':'IDSTR','TOrgIds':'ORGID_STR','IsAutoSubmitAndAudit':'true'}";sql = ("""select org.FORGIDfrom T_ORG_ORGANIZATIONS orgleft join T_BD_CUSTOMER m on org.FORGID=m.FUSEORGID and m.FNUMBER='{0}' where m.FNUMBER is null and org.FNUMBER in ('1B01')""").format(billNo);ds = DBServiceHelper.ExecuteDataSet(this.Context,sql);AllRows=ds.Tables[0].Rows;if(AllRows.Count<=0):continue;orgList=List[str]();for r in AllRows:orgId=str(r["FORGID"]);orgList.Add(orgId);orgIds=",".join(orgList.ToArray());data=obj.Replace("IDSTR",billId).Replace("ORGID_STR",orgIds);#raise Exception(data);allocateR=client.Allocate(formId,data);if (zzdr=='1B-SZ'):formId = this.BusinessInfo.GetForm().Id;obj = "{'PkIds':'IDSTR','TOrgIds':'ORGID_STR','IsAutoSubmitAndAudit':'true'}";sql = ("""select org.FORGIDfrom T_ORG_ORGANIZATIONS orgleft join T_BD_CUSTOMER m on org.FORGID=m.FUSEORGID and m.FNUMBER='{0}' where m.FNUMBER is null and org.FNUMBER in ('1B02')""").format(billNo);dY = DBServiceHelper.ExecuteDataSet(this.Context, sql);AllRows = dY.Tables[0].Rows;if (AllRows.Count <= 0):continue;orgList = List[str]();for r in AllRows:orgId = str(r["FORGID"]);orgList.Add(orgId);orgIds = ",".join(orgList.ToArray());data = obj.Replace("IDSTR", billId).Replace("ORGID_STR", orgIds);# raise Exception(data);allocateR = client.Allocate(formId, data);else:this.View.ShowMessage("没事设置指定的导入组织"+zzdr)
金蝶云星空通过python实现物料编码审核后自动分配组织相关推荐
- 金蝶云星空通过python插件向钉钉同步单据
一.方案 由于办公协同系统负责审批事件为主,而传统ERP系统缺乏多样的审批流程,不能完成多人对一个事件进行审批同意实施,不方便采购.销售.出库申请单的审批,以及费用报销.出差.合同签订等申请,结合两者 ...
- 金蝶云星空与金蝶云星空对接集成逐个单据查询连通审核单据(分步式调出单提交-审核)
对接源平台:金蝶云星空 金蝶K/3Cloud结合当今先进管理理论和数十万家国内客户最佳应用实践,面向事业部制.多地点.多工厂等运营协同与管控型企业及集团公司,提供一个通用的ERP服务平台.K/3Clo ...
- 金蝶云星空与金蝶云星空对接集成逐个单据查询打通审核单据
金蝶云星空与金蝶云星空对接集成逐个单据查询打通审核单据 对接系统金蝶云星空 金蝶K/3Cloud结合当今先进管理理论和数十万家国内客户最佳应用实践,面向事业部制.多地点.多工厂等运营协同与管控型企业及 ...
- python搭建webapi_Python 版本--金蝶云星空新版WebAPI SDK--新手快速入门指南
/******************************************************************************** ** 名称: Python版本--金 ...
- 旺店通·企业奇门与金蝶云星空对接集成查询退货入库单打通销售退货新增
旺店通·企业奇门与金蝶云星空对接集成查询退货入库单打通销售退货新增 数据源平台:旺店通·企业奇门 慧策最先以旺店通ERP切入商家核心管理痛点--订单管理,之后围绕电商经营管理中的核心管理诉求,先后布局 ...
- 旺店通·企业奇门与金蝶云星空对接集成查询采购入库单连通采购入库新增(采购入库单 all)
旺店通·企业奇门与金蝶云星空对接集成查询采购入库单连通采购入库新增(采购入库单 all) 来源系统:旺店通·企业奇门 旺店通是北京掌上先机网络科技有限公司旗下品牌,国内的零售云服务提供商,基于云计算S ...
- 金蝶云星空对接打通旺店通·企业版采购入库查询接口与创建采购入库单接口
接通系统:金蝶云星空 金蝶K/3Cloud(金蝶云星空)是移动互联网时代的新型ERP,是基于WEB2.0与云技术的新时代企业管理服务平台.金蝶K/3Cloud围绕着"生态.人人.体验&quo ...
- 金蝶云星空与旺店通集成解决方案(旺店通主管库存)
方案简介 由于电商系统与 ERP 系统都是非常复杂和庞大的应用系统,两者都具有非常丰富的业务流程.复杂的系统架构和服务接口.在很多情况下,这两个系统都是分别独立部署和运行的,各自拥有不同的技术栈和编程 ...
- 金蝶云星空与旺店通集成解决方案(金蝶主管库存)
方案简介 由于电商系统与 ERP 系统都是非常复杂和庞大的应用系统,两者都具有非常丰富的业务流程.复杂的系统架构和服务接口.在很多情况下,这两个系统都是分别独立部署和运行的,各自拥有不同的技术栈和编程 ...
最新文章
- JStorm与Storm源码分析(六)--收集器 IOutputCollector 、OutputCollector
- mysql 备份 windows_windows mysql 自动备份的几种方法
- 信息学奥赛一本通(1177:奇数单增序列)——比较排序
- 236.二叉树的最近公共祖先
- mysql作为tidb从库配置
- 数据型驱动风控有什么内容?从蚂蚁借呗与花呗谈起~
- 发布一个 host 管理插件
- 单元覆盖测试排除某些类烧苗_汽车嵌入式软件测试——嵌入式软件测试概述
- 阿里云云计算 12 对象存储 Object Storage Service OSS 的概念
- Braid,另类游戏
- 如何使用谷歌验证码 kaptcha,详细使用步骤
- 产品研发项目管理软件哪个好? 1
- 基于layui的省市镇三级联动js
- 学术研讨会---Micheal Stonebraker的主题演讲【读后感】
- 谈谈 跨境劳工的噩梦深坑。
- DELL电脑无法感应到插入耳机
- Android 仿网易云音乐App
- java定义一个eat方法_Java继承概念详细解读
- MSCKF-vio源码阅读
- pkpm弹性时程分析计算书怎么出_【原创总结】结构菜鸟浅谈为何进行弹性时程分析(附操作详图)...
热门文章
- 谭浩强c语言五位数的输入输出问题
- Python入门基础练习题
- VirtualBox 安装 Ubuntu16.04服务器版系统
- Xcode打包ipa后或者上传到iTunesConnect后出现的黑屏或者崩溃的问题
- Python : sqrt() 函数
- NestJS、Vite 和 esbuild 入门
- Laravel-日志管理
- 字符串函数中的求长度、查找、分割和错误报告函数(strlen,strstr,strtok,strerror)
- PyQt5在QGridLayout布局下动态删除增加控件
- 混合灰狼和布谷鸟搜索优化算法(Matlab完整代码实现)