Ⅰ 如何用web报表工具去制作报表
报表设计的制作步骤基本上是这样的:1、新建数据连接;
2、新建模板与数据集;
3、模板样式设计及数据绑定;
4、模板预览效果查看。
思迈特软件Smartbi经过多年持续自主研发,凝聚大量商业智能最佳实践经验,整合了各行业的数据分析和决策支持的功能需求。满足最终用户在企业级报表、数据可视化分析、自助探索分析、数据挖掘建模、AI智能分析等大数据分析需求。SmartBI是国产BI中比较成熟的报表引擎,提供了强大的可配置定制化功能,可以实现你能想到的几乎所有数据呈现形式。
Smartbi在国内市场份额位居榜首。它内置了成熟的数据分析模型,不需要写复杂的公式或代码就可以完成个项目的计算分析。界面美观,也可以处理复杂的中国式报表。还内置了各个行业常见的报表模板,比如资产负债表的模板。各种专业的报表功能,表格的制作、同步、保存、分享、权限控制都支持。官方网站提供个人免费版本,而且是永久免费,商用收费。
思迈特软件Smartbi个人用户全功能模块长期免费试用
马上免费体验:Smartbi一站式大数据分析平台
Ⅱ 报表输出成html怎么实现分页
用Jatools打印插件,目前好像都是收费的版本,但我在网上找到个免费的版本就拿来用了,做的练习。
可实现分页,打印。
<script type="text/javascript">
function JatoolsPrinterViewPDFReport(page){
var frm = document.getElementById("toolsForm");
var url = "<%=webapp %>/B1F216Action.do?method=JatoolsPrinterViewPDFReport";
url+="&page="+page;
frm.action=url;
frm.target='_self';
frm.submit();
}
function doPrint(how)
{
//打印文档对象
var myDoc = {
documents:document, // 打印页面(div)们在本文档中
rights:'杰创软件拥有版权 www.jatools.com'
};
// 调用打印方法
if(how == '打印预览...')
jatoolsPrinter.printPreview(myDoc,true ); // 打印预览
else if(how == '打印...')
jatoolsPrinter.print(myDoc ,true); // 打印前弹出打印设置对话框
else
jatoolsPrinter.print(myDoc ,false); // 不弹出对话框打印
}
<body style="margin:10px;">
<html:form styleId="toolsForm" method="post"
action="/B1F216Action.do?method=JatoolsPrinterViewPDFReport"
enctype="multipart/form-data">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td width="50%"> </td>
<td align="left">
<hr size="1" color="#000000">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td width="10%" align="left"><img src="<%=webapp
%>/jasReports/images/reload.GIF" border="0"
onclick="JatoolsPrinterViewPDFReport(0);"></td>
<td> </td>
<%
if (pageIndex > 0)
{
%>
<td>
<img src="<%=webapp %>/jasReports/images/first.GIF" border="0" onclick="JatoolsPrinterViewPDFReport(0);">
<img src="<%=webapp
%>/jasReports/images/previous.GIF" border="0"
onclick="JatoolsPrinterViewPDFReport(<%=pageIndex - 1%>);">
</td>
<%
}
else
{
%>
<td>
<img src="<%=webapp %>/jasReports/images/first_grey.GIF" border="0">
<img src="<%=webapp %>/jasReports/images/previous_grey.GIF" border="0">
</td>
<%
}
if (pageIndex < lastPageIndex)
{
%>
<td>
<img src="<%=webapp %>/jasReports/images/next.GIF"
border="0" onclick="JatoolsPrinterViewPDFReport(<%=pageIndex +
1%>);">
<img src="<%=webapp %>/jasReports/images/last.GIF"
border="0"
onclick="JatoolsPrinterViewPDFReport(<%=lastPageIndex%>);">
</td>
<%
}
else
{
%>
<td>
<img src="<%=webapp %>/jasReports/images/next_grey.GIF" border="0">
<img src="<%=webapp %>/jasReports/images/last_grey.GIF" border="0">
</td>
<%
}
%>
<td width="50%" align="center">
<input type="button" value="打印预览..." onclick="doPrint(this.value);">
<input type="button" value="打印..." onclick="doPrint(this.value);">
<input type="button" value="直接打印" onclick="doPrint(this.value);">
</td>
</tr>
</table>
<hr size="1" color="#000000">
</td>
<td width="50%"> </td>
</tr>
<tr>
<td width="50%"> </td>
<td align="center">
<%=sbuffer%>
</td>
<td width="50%"> </td>
</tr>
</table>
</html:form>
</body>
后台代码
// 1.html显示
JRHtmlExporter exporter = new JRHtmlExporter();
//设置导出参数
request.getSession().setAttribute( BaseHttpServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE, jasperPrint);
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_WRITER, out);
exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN, Boolean.FALSE);//页面显示图片为X,可设置false
exporter.setParameter(JRExporterParameter.CHARACTER_ENCODING, "GBK");
int pageIndex = 0;
int lastPageIndex = 0;
if (jasperPrint.getPages() != null)
{
lastPageIndex = jasperPrint.getPages().size() - 1;
}
String pageStr = request.getParameter("page");
try
{
pageIndex = Integer.parseInt(pageStr);
}
catch(Exception e)
{
}
if (pageIndex < 0)
{
pageIndex = 0;
}
if (pageIndex > lastPageIndex)
{
pageIndex = lastPageIndex;
}
StringBuffer sbuffer = new StringBuffer();
exporter.setParameter(JRExporterParameter.PAGE_INDEX, Integer.valueOf(pageIndex));
exporter.setParameter(JRHtmlExporterParameter.HTML_HEADER, "");
exporter.setParameter(JRHtmlExporterParameter.BETWEEN_PAGES_HTML, "");
exporter.setParameter(JRHtmlExporterParameter.HTML_FOOTER, "");
exporter.setParameter(JRExporterParameter.OUTPUT_STRING_BUFFER, sbuffer);
request.setAttribute("pageIndex", pageIndex);
request.setAttribute("lastPageIndex", lastPageIndex);
request.setAttribute("sbuffer", sbuffer);
//此处就是html导出方式,打印部分在页面通过插件实现
exporter.exportReport();
Ⅲ javaweb中怎么实现分页查询
目前已知有些框架自带分页,比如easyui,要么你就用过sql手写分页,比如mysql的limit a,b等
Ⅳ 在Web报表中怎么按图片格式分页导出PDF文件
lass ExportToPdf {
public static void main(String[] args) {
try{ String report = "D:/toExcel.raq"; //报表模板位置 String pdfPath= "D:/test.pdf"; String licenceFile = "D:/2009-12-31V4.0Windows.lic"; //授权文件位置
//读取报表模板 ReportDefine rd = (ReportDefine) ReportUtils.read( report ); //第二步,设置报表授权文件,运算报表 ExtCellSet.setLicenseFileName( licenceFile ); Context context = new Context(); Engine enging = new Engine( rd, context); IReport iReport = enging.calc();
ReportUtils.exportToPDF(pdfPath,iReport,true,true);
Ⅳ java web项目中,如何把自己上传的excel文件,用分页的形式,显示在页面,
用流操作,读取,然后将读取结果放在一个集合里,然后将集合放在request.setAttribute()里,在JSP页面将这个集合遍历,分页的话,设置页面显示的行数,当前行,总共行数……
Ⅵ 表格如何做分页 怎么给表格做分页
1、打开MicrosoftExecl软件(一般电脑都会安装的),选择一个工作报表。
2、打开工作报表后,在菜单栏中选择视图—分页预览。
3、打开分页预览后,点击一下,就可实现分页效果了,效果如下。
4、再设置好分页效果后,有兴趣的人士还可调节下工作报表的宽度,调节下边框线就可以了。
5、另外,还进行筛选,在菜单栏中选择开始—自动筛选,就可实现了,以便于能选择合适的信息。
Ⅶ 报表中怎么设置分组分页合计
不写一行代码就能在区域报表,页面/RDL报表中实现分页合计的功能:
区域报表
关键点:区域报表中TextBox属性SummaryType设置为PageTotal;
RDL报表
关键点:使用ReportItems!TextBoxName.Value进行合计;
具体的实现步骤,请参考下面的博客
http://blog.gcpowertools.com.cn/post/SumOnPage.aspx
Ⅷ 自动生成报表软件怎样快速生成报表
思迈特软件Smartbi简单、高效、智能,可快速搭建的企业级Web报表。从报表开发的数据准备、样式设计、数据计算、数据可视化到互动逻辑、共享发布。它满足各种格式的行业监管报表、内部管理报表的需求。包括:清单报表、交叉报表、分组报表、多源分片报表、分块报表、表单报表、图形报表、回写报表、假设分析报表、二次计算报表、套打报表、段落式报表、预警报表(Excel条件格式)、组合报表(智能评语)。Excel也能设计回写类报表。
任何有报表开发、展现需要的机构与人员;任何行业的IT人员、业务人员、高层管理人员或从事数据分析工作的人员,都将从Smartbi Insight 中获益。
IT部门:IT用户在平台上轻松完成多业务系统或者文件数据对接和整合、数据语义模型构建、可视化自助ETL处理、复杂报表/可视化报告生成等多项工作。同时可使用同一的可视化运维界面来监控用户的运行状况,通过银行级的多级权限管理来实现集团权限管控,让IT运维省心、安心。
业务人员: 可随时使用思迈特软件Smartbi进行自助式即席查询和多维度分析。再不用提需求给IT 后进入到漫长的流程等待,自己掌控业务开展,实现“数据不求人”。
高层管理者:弥合数据与决策制定之间的差距,通过可视化界面实时查看业务关键指标,为决策分析提供辅助支撑。使数据实时回归到业务部门,缩短数据从基层部门到管理层汇总周期,提高管理层决策的时效性和准确性。
任何从事数据分析工作的人员: 无论是专业数据分析的研究人员,还是希望从Smartbi中学习数据分析的方法的学生和利用Smartbi进行个人工作的分析汇报的人员,都可以使用Smartbi Insight满足其想法。
思迈特软件Smartbi平台通用化、标准化、易于使用、专业,可帮助企业获取更深入的数据见解,连接到数据并对数据进行可视化。经过多年持续自主研发,凝聚大量商业智能最佳实践经验,整合了各行业的数据分析和决策支持的功能需求。满足最终用户在企业级报表、数据可视化分析、自助探索分析、数据挖掘建模、AI智能分析等大数据分析需求。
思迈特软件Smartbi个人用户全功能模块长期免费试用
马上免费体验:Smartbi一站式大数据分析平台
Ⅸ 怎样在web中实现报表打印和打印预览
一、 浏览器的菜单打印功能
这是最简单的,只需点击页面上的打印菜单,但是也是问题最多的,基本上是不能满足用户需要。比如:不能精确分页,有出现打出半行字的风险;改变纸型后打印出的格式和页面显示的格式相差太大;页眉页脚也需要从菜单中去设置,等等等等。这种方案最大的优势就是不需要做任何代码,点击打印就可以了。
二、 window.Print()
这实际上,是浏览器打印功能菜单的一种程序调用。与点击打印功能菜单一样,不能精确分页,不能设置纸型,套打的问题更加无从谈起,只不过,可以让用户不用去点菜单,直接点击网页中的一个按钮,或一个链接里面调用罢了。
需要指出的是这种方法提供一个打印前和打印后的事件onbeforeprint、onafterprint。可以在打印前的时候重新编辑一些格式,专门送去打印,打印后又处理回来。
function window.onbeforeprint()
{
//将一些不需要打印的隐藏
}
function window.onafterprint()
{
//放开隐藏的元素
}
事实上,很多用户都是采用这种方式打印,但是这种方式最致命的缺点是不能设置打印参数,比如纸型,页边距,选择打印机等等。
三、 导出excel导出pdf文件的打印
将需要打印的数据导出excel文件或者导出pdf文件,然后打开excel文件或者pdf文件重新打印,用这种方案能实现精确的打印,套打也能实现,但是需要客户端安装excel和adobe软件,操作起来也有些麻烦,并且导出的excel文件可以重新修改编辑,一般用户都会要求系统提供这种导出的方案,也同时需要直接打印的功能,所以个人觉得这种方案也不能很好的解决打印的问题。
四、 纯ActiveX控件
这种方案其实就是编写一个C/S的打印控件,然后嵌入到页面里面,将要打印的数据装入到控件中,然后打印。这种方案的优点是打印精度高,分页,设置打印参数等等都能实现。但是缺点也是很明显的,嵌入ActiveX控件破坏了web应用的整体html风格,且这样的控件通常都比较大,一般都超过1M,下载很慢。