以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  麻烦老师帮我看看 为什么word生成文件会导致保存两次呢?经常提示文件为只读,有没有办法强制覆盖文件?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=179238)

--  作者:cnsjroom
--  发布时间:2022/8/13 23:55:00
--  麻烦老师帮我看看 为什么word生成文件会导致保存两次呢?经常提示文件为只读,有没有办法强制覆盖文件?

麻烦老师帮我看看 为什么word生成文件会导致保存两次呢?经常提示文件为只读,有没有办法强制覆盖文件?

 

当前代码如下:

 

Public Sub form319_word1_Ajax(rq as Request) 
 Dim e As RequestEventArgs = rq.e
Dim cmd As SQLCommand = rq.cmd 
Dim time As String =Format(Date.now,"yyyyMMddHHmmss")
Dim tm As String  = ProjectPath & "Attachments\\讯问通知书存根联.doc" \'指定模板文件
Dim f1 As String = ProjectPath & "Reports\\讯问通知书存根联"& e.Values("创建人") & e.Values("guid") & time &".doc" \'指定目标文件
Dim f2 As String = ProjectPath & "Reports\\讯问通知书存根联"& e.Values("创建人") & e.Values("guid") & time &".pdf" \'指定目标PDF文件
Dim wrt As New WordReport(tm,f1)
wrt.AddDataTable("讯问通知书","主数据源","S elect * from {讯问通知书} where guid = \'" & e.Values("guid") & "\' ")
wrt.Build()
\'wrt.SaveToPDF(f2) \'保存为PDF文件
\'wrt.Quit() \'退出 
wrt.Show()
 \'返回生产的报表路径
 e.WriteString("\\Reports\\讯问通知书存根联"& e.Values("创建人") & e.Values("guid") & time &".doc")
End Sub


--  作者:有点蓝
--  发布时间:2022/8/14 19:40:00
--  
除非前端提交了2次请求,否则不会保存2次的。服务端应该直接退出wrt.Quit(),而不是打开文件wrt.Show()