Foxtable(狐表)用户栏目专家坐堂 → [求助]删除


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

主题:[求助]删除

帅哥哟,离线,有人找我吗?
江南小镇
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1710 积分:11410 威望:0 精华:0 注册:2015/6/22 8:11:00
  发帖心情 Post By:2019/11/9 12:29:00 [只看该作者]

老师,代码修改后还是报错。

.NET Framework 版本:2.0.50727.8669
Foxtable 版本:2017.4.22.1
错误所在事件:窗口,出库,Button16,Click
详细错误信息:
给定的文件路径以目录分隔符字符结尾。
参数名: file


 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2019/11/9 12:41:00 [只看该作者]

删除文件必预先判断该文件是否存在,否则会报错,比如,重复删除同一个文件时!

 回到顶部
帅哥,在线噢!
有点蓝
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107241 积分:545466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/11/9 14:06:00 [只看该作者]

msgbox(e.Form.Controls("路径").text & "\" & e.Form.Controls("文件名").text) '文件路径是否正确?

 回到顶部
帅哥哟,离线,有人找我吗?
江南小镇
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1710 积分:11410 威望:0 精华:0 注册:2015/6/22 8:11:00
  发帖心情 Post By:2019/11/9 15:37:00 [只看该作者]

老师,可以这样做吗?

If Tables("出库.出库明细") .Rows.count = 0  Then
    MessageBox.Show("没有可删除!")
    Return
End If
If Tables("出库.出库明细") .Rows.count > 0 AndAlso   Tables("出库.出库明细") .Current.Isnull("审核人") = False  Then
    MessageBox.Show("已审核,请反审!")
    Return
End If
=DialogResult.OK Then
If Tables("出库.出库明细") .Current.Isnull("审核人") = True   Then
    If MessageBox.Show("是否删除?","确认",MessageBoxButtons.OKCancel,MessageBoxIcon.Question) =DialogResult.OK Then       
        If Tables("出库.出库明细").Current Is Nothing Then
            msgbox("表格为空,不能删除")
        Else        
            If GetConfigValue("文件夹路径1" & ComputerId,"") = "" Then
                MessageBox.Show("请先指定存储路径!","提醒")
                Return
            End If            
            If Tables("出库.出库明细").Current.isnull("送货单") = True Then  '若未存储文件名
                MessageBox.Show("未上传文件!","提醒")
                Return
            End If            
            If e.Form.Controls("文件名").text = "文件已被删除!" Then
                Tables("出库.出库明细").Current("送货单") = Nothing
                e.Form.Controls("文件名").text = "未上传文件!"
                Return
            End If
            If MessageBox.Show("是否删除文件?","提醒",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
                filesys.DeleteFile(e.Form.Controls("路径").text & "\" & e.Form.Controls("文件名").text,2,2)
                e.Form.Controls("文件名").text  = "未上传文件!"
                Tables("出库.出库明细").Current("送货单") = Nothing            
                Tables("出库.出库明细") .Current.Delete
            End If
        End If       
    End If
End If

 回到顶部
帅哥,在线噢!
有点蓝
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107241 积分:545466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/11/9 15:42:00 [只看该作者]

可不可以自己测试一下不就知道了!

最主要的是确定文件是存在的,如果判断的文件是否存在,参考:http://www.foxtable.com/webhelp/topics/0337.htm

 回到顶部
帅哥哟,离线,有人找我吗?
江南小镇
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1710 积分:11410 威望:0 精华:0 注册:2015/6/22 8:11:00
  发帖心情 Post By:2019/11/9 16:12:00 [只看该作者]

老师,上面代码是可以用的,还有一列也是图片列在同一行上。也要先清空文件夹中的图片再删除行,怎样在上面的代码中再添加代码。

 回到顶部
帅哥,在线噢!
有点蓝
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107241 积分:545466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/11/9 16:20:00 [只看该作者]

用法不都一样吗?删除第一列图片会,删除第二列的图片就不会?

重复同样的代码,改改列名...

 回到顶部
帅哥哟,离线,有人找我吗?
江南小镇
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1710 积分:11410 威望:0 精华:0 注册:2015/6/22 8:11:00
  发帖心情 Post By:2019/11/9 21:24:00 [只看该作者]

老师,下面代码在没有保存的时候清空图片列和删除行都可以的,通过按钮保存后再用下面代码为报错。

图片点击可在新窗口打开查看此主题相关图片如下:image 1.png
图片点击可在新窗口打开查看


 If Tables("出库.出库明细") .Rows.count = 0  Then
    MessageBox.Show("没有可删除!")
    Return
End If
If Tables("出库.出库明细") .Rows.count > 0 AndAlso   Tables("出库.出库明细") .Current.Isnull("审核人") = False  Then
    MessageBox.Show("已审核,请反审!")
    Return
End If
If Tables("出库.出库明细") .Current.Isnull("审核人") = True   Then
    If MessageBox.Show("是否删除?","确认",MessageBoxButtons.OKCancel,MessageBoxIcon.Question) =DialogResult.OK Then
        If GetConfigValue("文件夹路径1" & ComputerId,"") = "" Then
            MessageBox.Show("请先指定存储路径!","提醒")
            Return
        End If
        
        If Tables("出库.出库明细").Current.isnull("送货单") = True Then  '若未存储文件名
            MessageBox.Show("未上传文件!","提醒")
            Return
        End If
        
        If e.Form.Controls("文件名").text = "文件已被删除!" Then
            Tables("出库.出库明细").Current("送货单") = Nothing
            e.Form.Controls("文件名").text = "未上传文件!"
            
            Return
        End If
        If MessageBox.Show("是否删除文件?","提醒",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
            filesys.DeleteFile(e.Form.Controls("路径").text & "\" & e.Form.Controls("文件名").text,2,2)
            e.Form.Controls("文件名").text  = "未上传文件!"
            Tables("出库.出库明细").Current("送货单") = Nothing
            Tables("出库.出库明细") .Current.Delete
        End If
    End If
End If

 回到顶部
帅哥,在线噢!
有点蓝
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107241 积分:545466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/11/10 20:34:00 [只看该作者]

代码看不出有什么问题。自己调试一下看是那一句代码出错?

可能是表事件影响到的,把表事件全部屏蔽试试

 回到顶部
帅哥哟,离线,有人找我吗?
江南小镇
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1710 积分:11410 威望:0 精华:0 注册:2015/6/22 8:11:00
  发帖心情 Post By:2019/11/10 21:05:00 [只看该作者]

老师,通过下面代码打开图片后再用删除按钮就不报错。

If GetConfigValue("文件夹路径1" & ComputerId,"") = "" Then
    MessageBox.Show("请先指定存储路径!","提醒")
    Return
End If

If Tables("出库.出库明细").Current.isnull("送货单") = True Then  '若未存储文件名
    MessageBox.Show("未上传文件!","提醒")
    Return
End If

If e.Form.Controls("文件名").text = "文件已被删除!" Then
    Tables("出库.出库明细").Current("送货单") = Nothing
    e.Form.Controls("文件名").text = "未上传文件!"
    e.Form.Controls("PictureBox1").image = getimage("other.png")
    Return
End If

msgbox(e.Form.Controls("路径").text)
msgbox(e.Form.Controls("文件名").text)
Dim proc As new Process
proc.File = e.Form.Controls("路径").text & "\" & Tables("出库.出库明细").Current("送货单")
proc.Start

 回到顶部
总数 48 上一页 1 2 3 4 5 下一页