以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 出问题了  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=140122)

--  作者:susanhe
--  发布时间:2019/8/29 20:35:00
--  [求助] 出问题了

如图,请问为什么会出现这个问题 ? 第一个记录执行可以。可以后面几个就出现这个问题了,哪儿有错吗? 如果有错,有些记录执行是可以的。

 

Dim Book As New XLS.Book(ProjectPath & "Attachments\\Production Order.xlsx")
Dim Result As DialogResult
Dim Proc As New Process \'打开工作簿

 
Dim fl As String = ProjectPath & "Production Order\\" & Tables("生产任务单.生产投料单").current("生产任务单号") & ".xlsx"  

 

Book.Build()


 

If FileSys.FileExists(ProjectPath & "production order\\" & Tables("生产任务单.生产投料单").current("生产任务单号") & ".xlsx")  Then
    Result = Messagebox.Show(Tables("生产任务单.生产投料单").current("生产任务单号") & ".xlsx"&" 文件已经存在,是否要覆盖?","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
       
        Book.Save(fl) \'保存工作簿
        Proc.File = fl
        Proc.Start()

      End If
Else
Book.Save(fl) \'保存工作簿
Proc.File = fl
Proc.Start()

End If


此主题相关图片如下:捕获.jpg
按此在新窗口浏览图片
[此贴子已经被作者于2019/8/29 20:35:47编辑过]

--  作者:有点蓝
--  发布时间:2019/8/30 10:45:00
--  
没看到和后面几个有关的代码,完整代码贴出来
--  作者:susanhe
--  发布时间:2019/8/30 14:46:00
--  
老师,就这些,没有其它代码了。
--  作者:有点蓝
--  发布时间:2019/8/30 15:02:00
--  
第一句加上代码

if Tables("生产任务单.生产投料单").current is nothing then return

--  作者:susanhe
--  发布时间:2019/8/30 15:16:00
--  
老师,就是当前记录没有,所以就出现这个。可是当前的这个单号明明是有的呀。为什么第一笔记录可以,后续的都不可以呢 ?
--  作者:有点蓝
--  发布时间:2019/8/30 15:20:00
--  
具体原因发项目看看才知道。注意关联表和子表是不一样的,关联表数据会受到父表的影响