=====================================

目录:

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、源码附件

工业单据与插件自定义弹窗交互2017-11-13  下载

十二、K3 WISE 开发插件《工业单据老单与自己添加的窗体 - 互相传值传参》的更多相关文章

  1. 十、K3 WISE 开发插件《SQL Profiler跟踪单据操作时产生的SQL语句》

    =================================== 目录: 1.查询帐套的数据库DBID 2.配置需要跟踪数据库的DBID 3.配置跟踪参数 4.跟踪进行 5.分析跟踪语句 === ...

  2. 四、K3 WISE 开发插件《工业单据老单插件开发新手指导》

    开发环境:K/3 Wise 13.0.K/3 Bos开发平台.Visual Basic 6.0 =============================================== 目录 一 ...

  3. 八、K3 WISE 开发插件《工业单据老单插件中获取登陆用户名》

    备注:如果是BOS新单,都有获取用户名的方法.在单据有m_BillInterface.K3Lib.User.UserId,在序时薄有m_ListInterface.K3Lib.User.UserID ...

  4. 三、K3 WISE 开发插件《K3 WISE开发手册》

    1.VB插件工程的命名.命名空间和生成的DLL命名要一致,否则导致注册不成功! 2.主控台的查询分析工具,添加sql直接报表,代码用到临时表,提示“在对应所需名称或序数的集合中未找到项目” 解决:在代 ...

  5. K3 WISE 开发插件《K3 WISE常用数据表整理》

    在后台数据库ICClassType表中,字段FID<0的是老单,FID>0的是新单. ----------------系统设置------------------------ FStatu ...

  6. 一、K3 WISE 开发插件《K3 WISE常用数据表整理》

    在后台数据库ICClassType表中,字段FID<0的是老单,FID>0的是新单. ----------------系统设置------------------------FStatus ...

  7. 二、K3 WISE 开发插件《 工业单据老单客户端插件事件、属性、方法》

    ===================== 目录: 1.插件事件说明如下 2.插件属性说明如下 3.插件方法说明如下 ===================== 1.插件事件说明如下:  序号 事   ...

  8. 九、K3 WISE 开发插件《工业单据老单序时薄插件工具栏按钮开发实例》

    =============================== 目录: 1.添加工具栏按钮 2.查询被添加工具栏按钮的业务单据的FMenuID和FID 3.添加工具栏按钮和业务单据的映射关系 4.工具 ...

  9. 五、K3 WISE 开发插件《K3 Wise 群发短信配置开发(二)之短信群发配置》

    开发环境:K/3 Wise 13.0.Sql Server 2005 目录 一.开启Sql Server Agent代理服务 二.短信发送原理 三.编写存储过程 四.开启Sql Server作业 一. ...

随机推荐

  1. Java.lang.Character类

    Character将一个char基本数据类型封装在类中.这个类中只有一char类型的变量.Character是基于unicode码进行的Character所有的方法,都是围绕着这个char基本数据类型 ...

  2. 使用别名访问MSSQL Express

    当MSSQL Express安装成功后,默认只能用 .\sqlexpress 或者 (local)\sqlexpress 有时候我们希望使用(local) 就可以访问,此时就可以利用别名 1.MSSQ ...

  3. 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 ...

  4. expdp ORA-39070:Unable to open the log file

    Oracle中,当执行expdp或impdp的时候,有时候会出现错误: [oracle@bi-dw ~]$ expdp dp_user/dp_password@dw directory=expdp_d ...

  5. 如何快速学习Scala

    大数据学习过程中,会学习非常多的技术,但SCALA无疑是必不可少,那我们在大数据技术的学习过程中,如何快速的认识scala,并且学习它,感谢科多大数据公司的余老师提供的详细素材,本人整理成章,希望对你 ...

  6. SQL 中的LastIndexOf,截取最后一次出现字符后面的字符(转)

    SQL如何取出一个字符串中最后一个特殊字符右边的字符,例如:10*20*300,怎样得到300? 使用reverse配合charindex来实现. reverse是把字符串倒置,然后通过charind ...

  7. 【iCore4 双核心板_FPGA】例程四:Signal Tapll 实验——逻辑分析仪

    实验现象: 三色led轮流闪烁,具体的逻辑分析仪使用教程请参考iCore3逻辑分析仪例程 核心代码: module signal_ctrl( input clk_25m, input rst_n, o ...

  8. 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 ...

  9. React Native 进的第一个坑

    Bundling index.ios.js [development, non-minified, hmr disabled] 0.0% (0/1), failed. error: bundling ...

  10. opencv 无法使用 dll 动态链接库 UnsatisfiedLinkError java.library.path Can't find dependent libraries

    System.loadLibrary(Core.NATIVE_LIBRARY_NAME) 使用如上方法加载本地 dll文件. 一般会出现两种错误: 1. UnsatisfiedLinkError ja ...