在这里,我们用PHP与XML的PDF文档生成技术创建一个面向打印的报表:“库存历史事表”。这个报表包含的信息有:报表名称(协和库存历史事务表)、单位、建表日期等,另外就是从数据库中提取的数据了,品名(LLPROD)、批号(LLOC)、等级(LCLS)、仓库(LWHS)、库位(LLOCT)、数量(LNUM)、日期(LDATE)等。假设我们已经用XMLWriter生成了下面的原始XML文档(report.xml): 以下为引用的内容: <report> <report_param> <title>库存历史事务表</title> <unit>平方米</unit> <date>20020611</date> </report_param> <report_records> <record> <llprod>W2308</llprod> <lloc>1234</lloc> <lcls>a</lcls> <lwhs>01</lwhs> <lloct>0001</lloct> <lnum>200</lnum> <ldate>20020609</ldate> </record> <record> <llprod>W2307</llprod> <lloc>4321</lloc> <lcls>a</lcls> <lwhs>01</lwhs> <lloct>0001</lloct> <lnum>100</lnum> <ldate>20020609</ldate> </record> </report_records> </report>
该文档包含了这张报表的所有有用信息,我们需要用特定的XSL样式单为其加上格式信息。XMLTransformer执行转换的代码如下: <?php $xslt = new XMLTransformer ("report.xsl", "report.xml"); $xslt->apply("pdfreport.xml"); ?>
转换后生成的新的XML文档如下:
<?xml version="1.0" encoding="gb2312"?> <pdfreport pagetype="a4" pagesize="25" top="20" bottom="20" left="20" right="20"> <head> <line top="5" bottom="5" size="50%" linetype="single" show="false"/> <text fontsize="30" fontlaguage="cn" align="center">库存历史事务表</text> <line top="5" bottom="30" size="80%" linetype="double" show="true"/> <text fontsize="12" fontlaguage="cn" align="left">单位:平方米</text> </head>
<body> <table> <tr><th>品名</th><th>批号</th><th>等级</th><th>仓库</th><th>库位</th><th>数量</th><th>日期</th></tr> <tr><td>W2308</td><td>1234</td><td>a</td><td>01</td><td>0001</td><td>200</td><td>20020609</td></tr> <tr><td>W2307</td><td>4321</td><td>a</td><td>01</td><td>0001</td><td>100</td><td>20020609</td></tr> </table> </body> <foot> <line top="5" bottom="5" size="50%" linetype="single" show="false"/> |