Foxtable(狐表)用户栏目专家坐堂 → [分享]在查询窗口中查看上传的图片 给新人看的


  共有3000人关注过本帖树形打印复制链接

主题:[分享]在查询窗口中查看上传的图片 给新人看的

帅哥哟,离线,有人找我吗?
huangfanzi
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
[分享]在查询窗口中查看上传的图片 给新人看的  发帖心情 Post By:2020/4/3 16:01:00 [显示全部帖子]

今天在蓝老师的帮助下,把我使得了2年的项目中关于查看上传图片的功能优化了下,现在可以在查询窗口中显示上传的合同扫描件了
全局代码:
Public _Bmlm As String '定义双击单元格所对应的表名与列名
Public _Mrlj As String '定义默认路径

合同表BeforeAttachFile事件
Dim dr As DataRow = e.DataRow
If dr.IsNull("合同号")  Then
    MessageBox.Show("请先输入合同号!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    e.Cancel = True
Else
    Dim t As String = Format(Date.Now,"yyyyMMddhhmmss")
    e.FileName = _UserName & "-" & t & "-" & dr("合同号") & "." & e.FileName.SubString(e.FileName.LastIndexof(".") + 1)  ‘上传文件时生成一个由用户名+时间+合同号的文件名,这样可以防止由于同名而覆盖掉老文件,_UserName是人全局变量,用于记录当前登录用户的名字
End If

查询窗口中有一按钮与一个table控件
查询按钮:
Tables(e.Form.Name & "_Table1").Fill("S elect  合同号,扫描件 From {原料采购合同}  Where 扫描件 IS NOT NULL","ShcsErpSql",True)
table表控件 设置SQLQuery类型  DoubleClick表事件

If e.Col.name = "扫描件" AndAlso e.Row.isnull("扫描件") = False
    _Bmlm = e.Table.Name & "." & e.Col.Name
    _Mrlj = "\\SERVER-NEW\ShcsErpSql文件目录$\采购合同扫描件"
    DataTables(e.Table.Name).DataCols(e.Col.name).DefaultFolder = _Mrlj  '指定文件的存储位置
    Forms("扫描件查看").show()
End If

扫描件查看窗口,就一个PictureViewer控件
窗口AfterLoad事件
Dim pv As WinForm.PictureViewer = e.Form.Controls("PictureViewer1") '关闭PictureViewer的命令
pv.AddCommand.Visible = False
pv.DeleteCommand.Visible = False
pv.ClearCommand.Visible = False
pv.BindingField = _Bmlm  '全局变量 表名列名 定义绑定字段

AfterClose
_Bmlm = Nothing
_Mrlj = Nothing


 回到顶部