26
2019.2
Excel下载
作者: POPASP
虽然我们在“模型”中的“Excel下载”一节中已经讲过了Excel下载,但是有的时候,我们并不是直接从数据库取出数据而下载,比如自己设计的一些数据,或者从数据库中取出数据经过了加工改造,此时就不适宜用数据模型的db.Excel来下载Excel文档了。POPASP从2.3版本开始提供了POP_MVC.Dict.Excel方法来完成下载功能。
### POP_MVC.Dict.Excel
| 项目 | 说明 |
| ------------- | ------------- |
| 用法 | Excel( style,filename ) |
| 参数 | style为数组或用英文逗号分隔的字符串,代表各字段类型,包括Excel表格需要的五种类型:文本(text,t)、日期(date,d)、数字(number,n)、货币(currency,c,¥,$)、百分比(percent,p);filename为下载的文件名,不含后缀,如果为空,则取当前数据表名。 |
| 返回值 | 无|
举例如下:
入口文件download.asp
```brush:xml
<%
POP_MVC.appPath = "./home"
POP_MVC.mvc_dir = "../popasp_2.3/"
POP_MVC.run
%>
<%
Call A_("download/index")
%>
文件下载
下载
```
控制器文件download.asp
```brush:vb
<%
Class Download
sub down
dim dict
'随机取10篇文章,返回二维的Dictionary对象
set dict = M_("CMS_Article").db.field("CMS_ID as [编号],CMS_Title as [标题],CMS_Date as [发布日期]").getRand(10)
Call POP_MVC.Dict.Excel( dict , "n,t,d" , "随机文章" )
'程序必须在方法的底部结束,否则无法完成下载
response.end
end sub
End Class
%>
```
访问
http://serverName/download.asp
点击页面中的下载,可以完成Excel文档的下载。
在上面的例子中,我们完成了随机取10篇文章,并进行下载。