Foxtable(狐表)用户栏目专家坐堂 → excel报表问题


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

主题:excel报表问题

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
excel报表问题  发帖心情 Post By:2019/5/5 9:58:00 [只看该作者]

如何将excel报表设计成所见及所得的预览方式 即 点击不同数据行 报表即刻预览?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/5 10:11:00 [只看该作者]

 

你可以自己生成和打开显示,也就是本来是按钮生成的,你把代码写到表格点击事件去而已。

 

 


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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/5/5 10:43:00 [只看该作者]

是的 意思我理解 只是现在要实现在窗口中预览 非常麻烦 用web的话客户端会有各种错误 显示不了

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/5 10:45:00 [只看该作者]

webbrowser显示即可。

 

在生成报表之前,先把webbrowser的address设置成nothing,同时把excel进程kill一下,再去生成新的报表。不然可能冲突。

 

又或者换一种思路:每次生成不同名称的excel文件,然后显示,即可。在关闭项目的时候,再删除那些excel文件。


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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/5/5 11:59:00 [只看该作者]

kill进程这个不太好办  因为有可能打开了其他excel报表  我现在遇到的问题是开发端能正常显示,但是客户端web显示一个红叉 ,有的又正常

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/5 12:03:00 [只看该作者]

以下是引用rjh4078在2019/5/5 11:59:00的发言:
kill进程这个不太好办  因为有可能打开了其他excel报表  我现在遇到的问题是开发端能正常显示,但是客户端web显示一个红叉 ,有的又正常

 

判断你进程的标题,为空的,可以kill

 

Dim ps As  System.Diagnostics.Process() = System.Diagnostics.Process.GetProcessesByName("excel")
For Each p As System.Diagnostics.Process In ps

    If p.MainWindowTitle = Nothing Then  p.kill
Next


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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/5/5 14:17:00 [只看该作者]

有的电脑 浏览的时候显示要打开文件 添加注册表无解

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/5 14:29:00 [只看该作者]

以下是引用rjh4078在2019/5/5 14:17:00的发言:
有的电脑 浏览的时候显示要打开文件 添加注册表无解

 

试试执行这个 http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=103646&skin=0

 

如果还是不行,建议嵌入excel程序,如

 

下载信息  [文件大小:876.3 KB  下载次数:48]
图片点击可在新窗口打开查看点击浏览该文件:嵌入exe最大化.zip

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=73007&skin=0


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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/5/5 15:15:00 [只看该作者]

发现一个问题 下面的代码 可以生成excel报表的父表数据  但是子表明细表数据没有
我的子表不是采用嵌套模式调用 采用的是类似与下面这个坐标调用
[@生产单.生产明细,材料规格,3] [@生产单.生产明细,交货日期,3]

Dim ps As  System.Diagnostics.Process() = System.Diagnostics.Process.GetProcessesByName("excel")
        For Each p As System.Diagnostics.Process In ps            
            If p.MainWindowTitle = Nothing Then  p.kill
        Next 
        DataTables("生产单").LoadFilter="计划日期='" & date.today & "' and 单号=‘1001’"
        DataTables("生产单").Load
        e.form.Controls("Web").address=Nothing       
        e.form.Controls("Web").address= Functions.Execute("预览","生产单","生产单") ‘’这个函数是生成一个excel报表返回地址




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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/5/5 15:16:00 [只看该作者]

单独用函数 Functions.Execute("预览","生产单","生产单") 在report文件夹下的文件是正常的

 回到顶部
总数 14 1 2 下一页