以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- 用Excel报表生成网页问题 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=196425) |
-- 作者:YDS -- 发布时间:2025/4/25 14:05:00 -- 用Excel报表生成网页问题 自定义函数--HttpRequest \'服务器连接的第一函数 Dim e As RequestEventArgs = args(0) Dim url As String = e.Path If url > "" Then If url.Contains(".") Then If Functions.Contains(url.Split(".")(0)) Then Functions.Execute(url.Split(".")(0), e) Else Functions.Execute("cw", e) \'没有指向页面 End If Else If Functions.Contains(url) Then Functions.Execute(url, e) Else Functions.Execute("cw", e) \'没有指向页面 End If End If Else Functions.Execute("index", e) \'首页 End If 自定义函数--xmgl Dim e As RequestEventArgs = args(0) Dim wb As New weui wb.Title = "项目管理汇总" If e.PostValues.ContainsKey("pw") Then Dim pw As String = e.PostValues("pw") If pw = Functions.Execute("Get", "设置", 6) Then Dim Book As New XLS.Book(ProjectPath & "Attachments\\项目管理.xls") e.WriteBookAsHTML(Book) Else wb.AddForm("", "form1", "xmgl.htm") With wb.AddMsgPage("", "msgpage", "密码错误", "密码输入错误,请重新输入。") .Icon = "warn" .AddButton("btn1", "重新输入", "xmgl.htm") End With e.WriteString(wb.Build) \'生成网页 End If Else wb.AddForm("", "form1", "xmgl.htm") With wb.AddInputGroup("form1", "ipg1", "请输入项目管理密码") .AddInput("pw", "密码", "password") End With With wb.AddButtonGroup("form1", "btg1", True) .Add("btn1", "查看项目管理汇总", "submit") End With e.WriteString(wb.Build) \'生成网页 End If 测试没有问题,发布以后一直提示页面【4caa846a1c.files\\sheet001.htm】不存在或者您没有该页面的访问权限,要如何处理? |
-- 作者:有点蓝 -- 发布时间:2025/4/25 14:24:00 -- execl生成网页比较特殊,会生成一堆临时文件,要特别注意使用路径:http://www.foxtable.com/mobilehelp/topics/0288.htm 注意下面红色代码,都有特殊意义的,不能省略 If e.Path.StartsWith("Reports\\") e.ResponseEncoding = "gb2312" |
-- 作者:有点蓝 -- 发布时间:2025/4/25 14:25:00 -- 所以最好是单独处理这些页面,不要使用1楼这种url.Split方法,会出错的 |
-- 作者:YDS -- 发布时间:2025/4/25 15:15:00 -- 好的,谢谢 |