用友U8二次开发API之单据事件开发
- API接口开发,不是OPENAPI.开发语言为C# 2022
列子:开发采购订单保存后事件,获取表头供应商名和订单编号
1.打开VS2022新建一个窗体应用

配置如下,点创建。

2.项目中添加一个类

写入代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; using MSXML2; namespace API1 { public class Test { public bool SaleSaveBefore(ref IXMLDOMDocument2 domhead,ref IXMLDOMDocument2 dombody,out string errmsg) { errmsg=""; // 获取供应商名 string cvenname = domhead.selectSingleNode("//z:row").attributes.getNamedItem("cvenname").nodeValue.ToString(); //获取销售订单 string cpoid = domhead.selectSingleNode("//z:row").attributes.getNamedItem("cpoid").nodeValue.ToString(); MessageBox.Show("测试采购订单成功,供应商:" + cvenname + "采购单号" + cpoid); //这里直接赋值,U8会自动弹出信息 //errmsg = "测试采购订单错误信息"; //return false return true; } } }
3.添加U8的引用MSXML2.dll,不然会报错

4.生成设置,3点


5.点菜单,重新生成解决方案。去输出文件夹bin中,把DLL拷贝到用友的U8SOFT\UAP\Runtime 文件夹下面


6.在有用友电脑上,注册一下该DLL,注意regasm命令可以添加到PATH路径下。

7.在有用友的电脑上,API管理器中添加事件关联



8.到此大功告成,打开用友,新建一个销售订单,保存后,测试正常。


浙公网安备 33010602011771号