十二、K3 WISE 开发插件《工业单据老单与自己添加的窗体 - 互相传值传参》
=====================================
目录:
1、演示效果--【销售订单】传值给【自定义窗体】
2、演示效果--【自定义窗体】传值给【销售订单】
3、附源码
4、另一种做法:定义public全局变量,进行传值
5、源码附件
=====================================
1、演示效果--【销售订单】传值给【自定义窗体】
新建销售订单菜单栏按钮插件--【弹窗交互】,点击【打开自定义弹窗】,打开Form1窗体,把业务单据类型名称传值给自定义窗体Form1。

在Form1窗体,点击“弹出消息框”,,并弹出消息:“来源单据:”+业务单据类型名称传值。

2、演示效果--【自定义窗体】传值给【销售订单】
在Form1窗体的文本框输入“Hello World ! “,按回车键,调用回车事件,传值到【销售订单】的单据体第一行的”备注“字段。

按回车键后,值写入”备注“字段。

3、附源码

销售订单插件类Class1.cls:
'定义插件对象接口. 必须具有的声明, 以此来获得事件
Private WithEvents m_BillTransfer As k3BillTransfer.Bill Public Sub Show(ByVal oBillTransfer As Object) '接口实现
'注意: 此方法必须存在, 请勿修改
Set m_BillTransfer = oBillTransfer End Sub Private Sub Class_Terminate() '释放接口对象
'注意: 此方法必须存在, 请勿修改
Set m_BillTransfer = Nothing End Sub Private Sub m_BillTransfer_BillInitialize() 'TODO: 请在此处添加代码响应事件 BillInitialize '*************** 开始设置菜单 *************** m_BillTransfer.AddUserMenuItem "打开自定义弹窗", "弹窗交互" '*************** 结束设置菜单 *************** End Sub Private Sub m_BillTransfer_BillTerminate() 'TODO: 请在此处添加代码响应事件 BillTerminate End Sub Private Sub m_BillTransfer_UserMenuClick(ByVal Index As Long, ByVal Caption As String) 'TODO: 请在此处添加代码响应事件 UserMenuClick Select Case Caption
Case "打开自定义弹窗"
'此处添加处理 打开自定义弹窗 菜单对象的 Click 事件
Dim Form As New Form1
Set Form.frm_BillTransfer = m_BillTransfer
'交互:这里从销售订单传值到自定义窗口
Form.selSourceName = "销售订单"
Form.Show
Set Form = Nothing
Case Else
End Select End Sub
窗体Form1代码:
Option Explicit
Public WithEvents frm_BillTransfer As k3BillTransfer.Bill Public selSourceName As String Private Sub Command1_Click()
MsgBox "来源单据:" & selSourceName
End Sub Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = Then
'交互:自定义弹窗回传参数给销售订单
SetInfo frm_BillTransfer, Text1.Text
'关闭弹窗
Unload Me
End If
End Sub
公共类Module1.cls:
Public Sub SetInfo(m_BillTransfer As k3BillTransfer.Bill, Value As String)
With m_BillTransfer
.SetGridText , getColIndex(m_BillTransfer, "备注"), Value
End With
End Sub Function getColIndex(m_BillTransfer As k3BillTransfer.Bill, colName As String) As Long
On Error GoTo errCI
Dim tmpIndex As Long
tmpIndex = -
With m_BillTransfer
Dim i As Integer
For i = To
If .GetGridText(, i) = colName Then
tmpIndex = i
Exit For
End If
Next i
End With
getColIndex = tmpIndex
Exit Function
errCI:
getColIndex = tmpIndex
End Function
4、另一种做法:定义public全局变量,进行传值
5、源码附件
十二、K3 WISE 开发插件《工业单据老单与自己添加的窗体 - 互相传值传参》的更多相关文章
- 十、K3 WISE 开发插件《SQL Profiler跟踪单据操作时产生的SQL语句》
		
=================================== 目录: 1.查询帐套的数据库DBID 2.配置需要跟踪数据库的DBID 3.配置跟踪参数 4.跟踪进行 5.分析跟踪语句 === ...
 - 四、K3 WISE 开发插件《工业单据老单插件开发新手指导》
		
开发环境:K/3 Wise 13.0.K/3 Bos开发平台.Visual Basic 6.0 =============================================== 目录 一 ...
 - 八、K3 WISE 开发插件《工业单据老单插件中获取登陆用户名》
		
备注:如果是BOS新单,都有获取用户名的方法.在单据有m_BillInterface.K3Lib.User.UserId,在序时薄有m_ListInterface.K3Lib.User.UserID ...
 - 三、K3 WISE 开发插件《K3 WISE开发手册》
		
1.VB插件工程的命名.命名空间和生成的DLL命名要一致,否则导致注册不成功! 2.主控台的查询分析工具,添加sql直接报表,代码用到临时表,提示“在对应所需名称或序数的集合中未找到项目” 解决:在代 ...
 - K3 WISE 开发插件《K3 WISE常用数据表整理》
		
在后台数据库ICClassType表中,字段FID<0的是老单,FID>0的是新单. ----------------系统设置------------------------ FStatu ...
 - 一、K3 WISE 开发插件《K3 WISE常用数据表整理》
		
在后台数据库ICClassType表中,字段FID<0的是老单,FID>0的是新单. ----------------系统设置------------------------FStatus ...
 - 二、K3 WISE 开发插件《 工业单据老单客户端插件事件、属性、方法》
		
===================== 目录: 1.插件事件说明如下 2.插件属性说明如下 3.插件方法说明如下 ===================== 1.插件事件说明如下: 序号 事 ...
 - 九、K3 WISE 开发插件《工业单据老单序时薄插件工具栏按钮开发实例》
		
=============================== 目录: 1.添加工具栏按钮 2.查询被添加工具栏按钮的业务单据的FMenuID和FID 3.添加工具栏按钮和业务单据的映射关系 4.工具 ...
 - 五、K3 WISE 开发插件《K3 Wise 群发短信配置开发(二)之短信群发配置》
		
开发环境:K/3 Wise 13.0.Sql Server 2005 目录 一.开启Sql Server Agent代理服务 二.短信发送原理 三.编写存储过程 四.开启Sql Server作业 一. ...
 
随机推荐
- Java.lang.Character类
			
Character将一个char基本数据类型封装在类中.这个类中只有一char类型的变量.Character是基于unicode码进行的Character所有的方法,都是围绕着这个char基本数据类型 ...
 - 使用别名访问MSSQL Express
			
当MSSQL Express安装成功后,默认只能用 .\sqlexpress 或者 (local)\sqlexpress 有时候我们希望使用(local) 就可以访问,此时就可以利用别名 1.MSSQ ...
 - Atlas+Keepalived系列一:安装Atlas:
			
1:下载Atlas https://github.com/Qihoo360/Atlas/releases/download/2.2.1/Atlas-2.2.1.el6.x86_64.rpm 2:安装A ...
 - expdp ORA-39070:Unable to open the log file
			
Oracle中,当执行expdp或impdp的时候,有时候会出现错误: [oracle@bi-dw ~]$ expdp dp_user/dp_password@dw directory=expdp_d ...
 - 如何快速学习Scala
			
大数据学习过程中,会学习非常多的技术,但SCALA无疑是必不可少,那我们在大数据技术的学习过程中,如何快速的认识scala,并且学习它,感谢科多大数据公司的余老师提供的详细素材,本人整理成章,希望对你 ...
 - SQL 中的LastIndexOf,截取最后一次出现字符后面的字符(转)
			
SQL如何取出一个字符串中最后一个特殊字符右边的字符,例如:10*20*300,怎样得到300? 使用reverse配合charindex来实现. reverse是把字符串倒置,然后通过charind ...
 - 【iCore4 双核心板_FPGA】例程四:Signal Tapll 实验——逻辑分析仪
			
实验现象: 三色led轮流闪烁,具体的逻辑分析仪使用教程请参考iCore3逻辑分析仪例程 核心代码: module signal_ctrl( input clk_25m, input rst_n, o ...
 - ssh-remote-port-forwarding
			
1.ssh免密码登录(A登录到B) 1.1.在A上执行并在~/.ssh下生成id_rsa和id_rsa.pub两个文件 ssh-keygen -t rsa -P '' 1.2.拷贝id_rsa.pub ...
 - React Native 进的第一个坑
			
Bundling index.ios.js [development, non-minified, hmr disabled] 0.0% (0/1), failed. error: bundling ...
 - opencv 无法使用 dll 动态链接库 UnsatisfiedLinkError java.library.path  Can't find dependent libraries
			
System.loadLibrary(Core.NATIVE_LIBRARY_NAME) 使用如上方法加载本地 dll文件. 一般会出现两种错误: 1. UnsatisfiedLinkError ja ...