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

目录:

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  下载

最新文章

  1. java程序转换excel中科学记数法的数据为date类型
  2. keytool的使用
  3. 【转】css学习专题-BFC
  4. jQuery插件 -- Form表单插件jquery.form.js
  5. Rman备份的保留策略(retention policy)
  6. nodejs前端自动化构建
  7. 0c-39-ARC下单对象内存管理
  8. JavaScript 高级程序设计(第3版)笔记——chapter6:面向对象的程序设计
  9. Bestcoder Round#45
  10. Java多线程之进程和线程
  11. windows服务用脚本无法启动
  12. SQL语句中的日期查询
  13. Spark的误解-不仅spark是内存计算,hadoop也是内存计算
  14. JAVA 新手注意事项
  15. Python+Selenium+Unittest框架使用——Selenium——定位元素(二)
  16. 自己手写一个SpringMVC 框架
  17. vue-cli 3.0
  18. js模板引擎art-Template(以前的artTemplate)
  19. .Net中使用ODP.net访问Oracle数据库
  20. python获取命令行参数的方法(汇总)

热门文章

  1. Internet Explorer 11:不要再叫我IE
  2. chapter15中使用generator来实现异步化操作的同步化表达的例子
  3. 【GPU编解码】GPU硬解码---DXVA (转)
  4. Windows平台下tomcat 性能调优
  5. nginx https 配置样例
  6. Django-启动文件的制作
  7. Pycharm中.py文件头信息配置
  8. vue中单选框,利用不存在的值标示选中状态
  9. docker运行中的container怎么修改之前run时的env
  10. linux每日命令(39):lsof命令