重点内容## 一、 老单相关表
select * from t_ThirdPartyComponent;--老单插件表
select * from ICTransactionType;--单据类型表
select * from ICTemplate;
select * from ICTemplateentry;--单据模版表
二、 老单数据结构存储THeadCtl,TEntryCtl
在老单平台上这个是2个自定义类型的数组;很重要;对老单界面进行操作就是对这2个数据进行操作。
三、 老单二次开发能做什么
客户端:单据界面操作
1.数据改变:字段的换算关系、关联携带关系、锁定
2.加按钮:个性化功能
3.读取单据上的字段信息:个性化功能
中间层:数据更新,逻辑检查
四、 开发过程示例
1. 引用K3billtransfer.dll
'官方:定义插件对象接口,必须具有的声明,以此来获得事件
'个人:创建对象来调用k3billtransfer的事件
private withevents m_billtransfer As k3billtransfer.bill
WithEvents的一些用法说明:
1、WithEvents是指定一个或多个已声明成员变量引用可引发事件的类的实例。
2、当某个变量是使用 WithEvents 定义时,可以用声明方式指定某个方法使用 Handles 关键字处理该变量的事件。
3、只能在类或模块级别使用WithEvents。这意味着 WithEvents 变量的声明上下文必须是类或模块,不能是源文件、命名空间、结构或过程。
4、不能对结构成员使用 WithEvents。
5、只能使用 WithEvents 声明单个变量,不能声明数组。
6、必须将 WithEvents 变量声明成为对象变量,以便它们可以接受类实例。但是WithEvents不能声明为 Object。必须声明为可以引发事件的特定类。
比如:
Private WithEvents mSoftOnline As CvsActionToggle
其中CvsActionToggle是一个类,该类没有对应的控件,只有一些属性和方法
2. 接口实现
3.单据和插件关联关系
在采购订单上加一个插件
insert into t_ThirdPartyComponent (ftypeid,ftypedetailid,findex,fcomponentname,fcomponentsrv,fdescription)
select 0,71,MIN(findex)-1,'bill.clsbill71','','' from t_ThirdPartyComponent where ftypedetailid = 71
go