最近做的一个B/S项目,在打印时采用了在IE中嵌入.net winform控件和XML结合的方式(参见http://www.yesky.com/20030214/1652186.shtml),在实际应用过程中,有一些心得,和大家分享。 </xsl:stylesheet> 然后,在asp.net页面中,将查询出的结果作如下转换 是否取得了单据 billInfoDoc.LoadXml(billInfoXml) billXmlWr.Formatting = System.Xml.Formatting.Indented billTrans.Transform(billNav, Nothing, billXmlWr, Nothing) End If 返回的信息用javascript代码加载到打印控件: 注意,这里调用打印控件用了parent.frames….这是为了节省每次打开页面时加载打印控件的时间,使用了一个框架网页,把打印控件放在一个单独的页面中,从而不需每次加载。 第一次发帖,包涵,呵呵。 出处:品味技术 感受人生 BLOG
(一).使用通用模版格式化XML文件
系统中共用到了三种单据,分别为出库单,入库单,送货单,因此,定义三个模版文件,格式如下:
chukudan.xsl:
<?xml version=”1.0″ encoding=”GB2312″?>
<xsl:stylesheet version=”1.0″ xmlns:xsl=”http://www.w3.org/1999/XSL/Transform“>
<xsl:template match=”Bill”>
<root>
<pagesetting>
<landscape>false</landscape>
<paperkind>Custom</paperkind>
<paperwidth>800</paperwidth>
<paperheight>600</paperheight>
<paperleft>0</paperleft>
<paperight>0</paperight>
<papetop>0</papetop>
<papebottom>0</papebottom>
</pagesetting>
<reporttable>
<bill x=”55″ y=”19″ border=”0″ bordercolor=”white” maxlines=”6″>
<xsl:for-each select=”BillMaster”>
<toptable width=”743″>
<tr height=”20″>
<td width=”118″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>车次号:</td>
<td width=”449″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”><xsl:value-of select=”SERIAL_NO” /></td>
<td width=”35″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”></td>
<td width=”138″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”></td>
</tr>
</toptable>
</xsl:for-each>
<detailtable width=”373″>
<xsl:for-each select=”BillDetail”>
<tr height=”33″>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”><xsl:value-of select=”BILL_NO” /></td>
<td width=”173″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”PROD_MODEL_2″ /></td>
<td width=”55″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”><xsl:value-of select=”PROD_NUM” /></td>
<td width=”55″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”PIECE_NUM” /></td>
</tr>
</xsl:for-each>
</detailtable>
<mastertable width=”370″>
<xsl:for-each select=”BillMaster”>
<tr height=”33″>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”>
</td>
<td width=”280″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”ADDRESS” /></td>
</tr>
<tr height=”33″>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>
</td>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”><xsl:value-of select=”CONTACT_PERSON” /></td>
<td width=”70″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>
</td>
<td width=”120″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”><xsl:value-of select=”CONTACT_PHONE” /></td>
</tr>
<tr height=”33″>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”>
</td>
<td width=”280″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”DRIVER_UNIT” /></td>
</tr>
<tr height=”33″>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>
</td>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”DRIVER_NO” /></td>
<td width=”70″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>
</td>
<td width=”120″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”DRIVER_PERSON” /></td>
</tr>
<tr height=”33″>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>
</td>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”CAR_MODEL” />
</td>
<td width=”70″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>
</td>
<td width=”120″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”></td>
</tr>
<tr height=”33″>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>
</td>
<td width=”280″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”COME_TO” /></td>
</tr>
</xsl:for-each>
</mastertable>
<foottable width=”743″>
<xsl:for-each select=”BillMaster”>
<tr height=”35″>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”></td>
<td width=”173″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”></td>
<td width=”55″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”White”></td>
<td width=”55″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”></td>
<td width=”90″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”>
</td>
<td width=”280″ align=”right” fontsize=”10″ fontname=”宋体” fontcolor=”black” b=”true” i=”false” u=”false” bgcolor=”white”><xsl:value-of select=”REMARK” /></td>
</tr>
</xsl:for-each>
</foottable>
</bill>
</reporttable>
</root>
</xsl:template>
其中,toptable是表头,detailtable是表格左边的产品明细,mastertable是表格右边的运输信息等,foottable是最下面制表人等信息。
If billInfoXml <> Nothing Then
billInfoDoc.LoadXml(“http://111.111.111.111/stockmg/test.xsl“)
billTrans.Load(billFormatXmlUrl)
billXmlWr.Indentation = 4
billXmlWr.IndentChar = ” “
billXmlWr.Flush()
parent.frames.frmhidPrint.parent.frames.frmhidPrint.print1.SetXml(xmlResult); //SetMessage(xmlResult); parent.frames.frmhidPrint.parent.frames.frmhidPrint.print1.PrintAct();
利用xml实现通用web报表打印实际使用中的例子_xml技巧
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 利用xml实现通用web报表打印实际使用中的例子_xml技巧
相关推荐
-      ASP通过XMLDom在服务器端操作XML文件
-      ASP操作xml–显示xml文件中的所有节点
-      WEB页面工具语言XML(五)
-      ajax+xml的asp查询代码
-      XML与HTML文件的区别
-      WEB页面工具语言XML(二)
-      用ASP生成XML数据文档(RSS订阅)
-      WEB页面工具语言XML(四)