`
妮子321
  • 浏览: 82179 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多

在项目的开发中会遇到这样的需求:要求在生成word文件的时候,在文件的指定位置生成不定数目的表格,每个表格的结构是一样的,但是需要根据数据库中的数据记录对每个表格填充不同的数据。上面所说的这个需求的基本模型可以认为是在word文件的指定位置开始生成工资条,因为工资条的特点就是每个人的表格都一样,只是表格里面的信息不一样。

解决思路: 使用PageOffice实现这个需求模型的话需要一个模板template.doc,模板template.doc中包含了一个设计好的工资条的表格,在用PageOffice打开正式的文件(比如:zhengshi.doc)之前,用PageOffice的WordDocument对象获取到zhengshi.doc中要插入表格的那个指定位置,然后用DataRegion对象插入模板文件template.doc到这个位置,再使用Table对象把数据库中的值填充到表格中,接着在这个表格后面重复前面插入表格的方法插入新的表格和数据,直到所有的表格都生成完毕。

详细效果请参考PageOffice开发包中Samples4示例:
三、10、插入Word表格模板动态生成工资条

示例说明: 为了便于分析PageOffice 实现动态插入表格的核心代码,此演示打开了一个空白的Word文件作为正式文件来生成工资单。编写代码在文件末尾循环动态创建数据区域,并在数据区域中插入template.doc和填充数据,最终在word文件中生成所有员工的工资条信息。

  1. 模板template.doc 的表格如下:
员工编号 员工姓名 所属部门 工资 发放时间
.        
  1. 示意代码如下:
WordDocument doc = new WordDocument();
DataRegion data = null;
Table table = null;
int i = 0;
while (rs.next()) {
	data = doc.createDataRegion("reg" + i,DataRegionInsertType.Before, "[End]");
	data.setValue("[word]doc/template.doc[/word]");//插入模板中表格到文件中
	//给单元格赋值
	table = data.openTable(1);
	table.openCellRC(2, 1).setValue(rs.getString("ID"));	
	table.openCellRC(2, 2).setValue(rs.getString("UserName"));
	table.openCellRC(2, 3).setValue(rs.getString("DeptName"));
	table.openCellRC(2, 4).setValue(rs.getString("Salary"));
	table.openCellRC(2, 7).setValue(rs.getString("DateTime"));
	i++;
}
  1. 在111.doc中生成的表格如下:
员工编号 员工姓名 所属部门 工资 发放时间
0001 张志强 技术 8000 2013-2-2
员工编号 员工姓名 所属部门 工资 发放时间
0002 李志 技术 9000 2013-2-2

……

 

分享到:
评论

相关推荐

    PageOffice Java 动态填充Word模版

    以生成工资条为例,演示了通过PageOffice开发平台,用Java语言实现Word文档的在线打开、编辑和保存,数据区域数据的动态填充和提交,数据区域插入Word文件,动态填充和提交Word文件中Tabel的数据

    C#向word文档动态插入数据并打印预览

    myWordApp.Selection.Sections[1].Footers[Microsoft.Office.Interop.Word.WdHeaderFooterIndex.wdHeaderFooterPrimary].PageNumbers.NumberStyle = Microsoft.Office.Interop.Word.WdPageNumberStyle....

    SpringBoot实现的在线实时编辑文档SpringBoot(30) 整合PageOffice实现在线编辑Word和Excel

    PageOffice提供了丰富的API,可以满足更多复杂的需求,如插入图片、表格等。通过深入学习和实践,你可以进一步优化这个功能,提高用户体验,例如添加错误处理、支持更多格式的文档等。 需要注意的是,实际部署时,...

    PageOffice 基础教程.pdf

    这些类和对象使得编辑模板中的数据区域、动态填充Word文档、动态插入表格和创建数据区域、实现点击事件以及编辑区域控制等功能变得可能。此外,还涵盖了如何实现Word文档的全文检索和版本对比,以及用户自定义Word...

    利用office工具进行word转html

    在VBA编辑器中,插入一个新的模块,并输入以下代码: ```vba Option Explicit Sub SplitPagesAsDocuments() Dim oSrcDoc As Document, oNewDoc As Document Dim strSrcName As String, strNewName As String Dim...

    PageOffice3_Java示例和所需jar包

    PageOffice3是一款强大的Java库,专门用于在Web应用程序中实现在线查看和编辑Office文档的功能。这个库使得开发者能够在不离开浏览器的情况下,为用户提供类似于桌面应用的Office文档处理体验。PageOffice3支持各种...

    java调用PageOffice实例代码

    PageOffice提供了丰富的API,可以进行文本插入、图片插入、表格操作、样式设置等。例如,插入文本: ```java poCtrl.writeText(50, 50, "Hello, PageOffice!"); ``` 参数分别为插入位置的X坐标、Y坐标和文本...

    vc 操作word 绘制表格 合并单元格 填写页眉页脚等等

    9. **页码插入**:页码可以通过`pHeaderFooter->PageNumbers->Add(wdAlignPageNumberRight)`添加,这里的wdAlignPageNumberRight表示页码居右对齐。 10. **关闭和释放对象**:记得在完成操作后,关闭Word应用并释放...

    pageoffice java版demo

    4. **功能扩展**:除了基本的编辑功能,PageOffice还提供了图片插入、表格创建、公式编辑、超链接添加等高级功能,满足用户多样化的文档处理需求。 5. **API接口**:PageOffice的Java API接口是其核心部分,开发者...

    pageoffice.jar

    PageOffice.jar是一款强大的Java组件,主要用于在Web应用中实现在线编辑和预览Office文档的功能,如Word、Excel、PDF和WPS等。它与点聚和金格等类似产品一样,提供了一种高效且便捷的方式来处理各种办公文档,无需...

    JAVA WORD中实现电子印章效果 文字浮于印章上面

    Apache POI提供了一组API,可以用来操作Word文档的各个元素,如段落、表格、图片等。对于电子印章的实现,我们需要用到`XWPFDocument`类来创建和编辑Word文档,`XWPFParagraph`类来创建和修改段落,以及`XWPFPicture...

    pageoffice

    - **Word编辑**:通过poword示例,PageOffice可以实现网页中的Word文档编辑,支持文本格式化、图片插入、表格操作等常见功能。 - **Excel处理**:exceldemo展示了如何在线编辑Excel表格,支持单元格公式计算、数据...

    Java根据word 模板,生成自定义内容的word 文件

    Apache POI是一个流行的开源项目,它允许Java开发者读写Microsoft Office格式的文件,包括Word(.doc和.docx)文件。通过使用Apache POI,我们可以操作Word文档中的文本、样式、图片等各种元素。 接下来,我们要...

    pageOffice

    PageOffice是一款强大的在线文档编辑与管理系统,它集成了多种办公软件的功能,如Word、Excel、PPT等,让用户能够在Web浏览器中直接进行文档的创建、编辑、预览和保存。这款系统极大地提升了协同工作的效率,尤其...

    在网页中编辑office word excel文件_效果跟office word一模一样.但是只支持IE浏览器.zip

    使用PageOffice,开发者可以通过JavaScript API与文档交互,执行各种操作,如打开、保存、打印文档,以及插入图片、表格和公式。此外,由于支持多种文件格式,PageOffice还能够实现不同类型的文件之间的转换和兼容性...

    PageOffice_4.3.0.3_PHP

    这个压缩包包含了PHP版本的PageOffice组件,允许开发者在网页上直接编辑、创建、预览和保存Word、Excel、PowerPoint等Office文档,而无需借助Microsoft Office软件本身。 在Web应用中,PageOffice的核心功能包括: ...

    pageoffice控件demo

    1. **基本功能**:如何在网页中插入PageOffice控件,实现文本编辑、格式设置、图片插入、表格操作等基本文档处理功能。通过这些示例,开发者可以学习到如何初始化控件、设置属性以及调用各种API方法。 2. **文件...

    Word+office快捷键大全.pdf

    本资源提供了Word中各种快捷键的总结,包括字符格式和段落格式的快捷键、编辑和移动文字及图形的快捷键、插入特殊字符的快捷键、选定文字和图形的快捷键等。这些快捷键可以帮助用户快速地完成工作,提高效率和生产力...

    基于Java的实例源码-专业版集成微软OFFICE功能的Java控件平台PageOffice.zip

    3. **编辑Office文档**:在服务器端,PageOffice可以实现对文档内容的编辑,例如修改文本、替换样式、插入图表等。 4. **转换文档格式**:PageOffice支持不同Office格式之间的转换,例如将.doc转换为.docx,或者将....

Global site tag (gtag.js) - Google Analytics