Foxtable(狐表)用户栏目专家坐堂 → 用excel报表生成网页时的图片路径问题


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

主题:用excel报表生成网页时的图片路径问题

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
用excel报表生成网页时的图片路径问题  发帖心情 Post By:2021/8/27 9:15:00 [只看该作者]

我现在的foxtable文件保存在一个文件夹中,比如server;
网页文件保存在另一个文件夹,比如www,包括excel模板文件也是在这个文件夹。
这样的好处是,前后端文件分开,便于管理。

目前碰到的问题是,excel模板使用图片列时,这些图片还必须放到foxtable项目所在的images文件夹中才能正常生成报表,否则就没办法显示。
我现在想把图片放到其他文件夹里,怎么处理呢?

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


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/27 9:22:00 [只看该作者]

图片列指定存放目录:http://www.foxtable.com/webhelp/topics/0088.htm

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2021/8/27 9:47:00 [只看该作者]

参考高级版帮助,加上了以下代码:
Dim Book As New XLS.Book(bk)
book.AddDataTable("员工","test","S e l e c t * f r o m 员工 w h e r e 姓名 = '王伟'")
book.DataTables("员工").DataCols("照片").ExtendType = ExtendTypeEnum.Images
book.DataTables("员工").DataCols("照片").SourceFolder = "d:\www\images"
但后面两行代码出错,提示不存在名为“员工”的datatable

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


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/27 9:51:00 [只看该作者]

要在主表的列属性里设置,在之前存储图片的时候就要存储为正确的路径即可。生成报表的时候不需要加这个

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2021/8/27 9:58:00 [只看该作者]

我这个foxtable项目里,用于生成excel报表的都是基于后台的临时datatable:


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


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


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2021/8/27 10:01:00 [只看该作者]

我教你一个最直接粗暴的方法,我现在分享的A2迷你产品报价系统,excel导出带图片,就是这个方法

图片列直接写绝对路径,就能导出

在导出前,对明细表加一个临时列存放图片,然后循环一次明细表,把图片的绝对路径写在临时列里,excel模板也放这个

 dr("TempPicCol") = "c:\aa.jpg"

 

此主题相关图片如下:1.png
按此在新窗口浏览图片

图片点击可在新窗口打开查看


我的需求比你还复杂,我还要把客户上传的图片,先压缩放到某个临时的文件夹里,然后引用去生成excel,最后再删除文件夹。
狐表的生成Excel有内存限制,基本上超过20m的带图片excel,都会生成失败,一定要压缩。
我也是后端生成报表,情况跟你一样



[此贴子已经被作者于2021/8/27 10:05:36编辑过]

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


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/27 10:04:00 [只看该作者]

没错,就是【后台的临时datatable】图片列使用的是绝对路径即可

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2021/8/27 10:05:00 [只看该作者]

这样总觉得别扭啊,我的www文件夹就是放前端文件的,图片都在这个目录里,从这里直接读取最好。
问题是,我按照5楼帮助里的写法,是报错的,不知道这是不是bug

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


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/27 10:07:00 [只看该作者]

报什么错?5楼的用法是ftp的,不要和3楼的用法搞混了,不是一回事

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


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2021/8/27 10:08:00 [只看该作者]

别直接读取,客户传的说不定是小米11拍的50m一张的图片,2张你的excel就爆了

肯定是先压缩,再引用到excel,最后删除缓存的压缩图片,科学办法

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