Power Designer 文件转成 html

很长时间没有用PowerDesigner 做数据库的概念模型/物理设计了。 记得当初做代码的自动生成, 根据这个cdm 或者 pdm 文件 来导出 每张表的表名和字段, 类型。然后把它们加入到数据字典相关的表里面。 做企业应用设计嘛, 都是跟数据库打交道的东东, 有了这些 schema 数据就可以自动生成 DAO 的代码。 甚至前台UI 的代码都可以生成。 当前自从知道PowerDesigner 的格式是 xml 时候自己还写了 给 xslt 来transform 成 纯粹的   table name ,  column name, column type, column length  这些最纯的 模型。 以前的代码在那台破 P4机器上 N年没有用料,只有网上搜了个拿来改改。 现在记在这个地方供自己以后用用。  如下 pdm.xslt :

<?xml version="1.0" encoding="gb2312"?>

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
<title>list table info.</title>
</head>
<body>
<xsl:apply-templates select="/Model/*[local-name()='RootObject']/*[local-name()='Children']/*[local-name()='Model']/*[local-name()='Tables']"/>
</body>
</html>
</xsl:template>

<xsl:template match="*[local-name()='Tables']">
    <xsl:for-each select="./*[local-name()='Table']">        
        <font size="10" color="red"> <xsl:text>tablename: </xsl:text> <xsl:value-of select="./*[local-name()='Name']" />  </font> 
        <table border="1">
        <tr><th width="200px">Column Name</th><th width="200px">Column Code</th><th width="200px">Type</th><th>Length</th><th width="200px">Memo</th></tr>
        <xsl:apply-templates select="./*[local-name()='Columns']"/>
        </table>
        <br/>
        <hr/>        
    </xsl:for-each>
</xsl:template>
<xsl:template match="*[local-name()='Columns']">
    <xsl:for-each select="./*[local-name()='Column']">
        <tr>
        <td width="200px" align="left"><xsl:value-of select="./*[local-name()='Name']" /></td>
        <td width="200px" align="left"><xsl:value-of select="./*[local-name()='Code']" /></td>
        <td width="200px" align="left"><xsl:value-of select="./*[local-name()='DataType']" /></td>
        <td width="200px" align="left"><xsl:value-of select="./*[local-name()='Length']" /></td>
        <td width="200px" align="left"><xsl:value-of select="./*[local-name()='Comment']" /></td>
        </tr>
    </xsl:for-each>
</xsl:template>
</xsl:stylesheet>

现在做这个仅仅是想把 pdm 格式的文件 导成 俺们喜欢的 html  方便阅读 打印。

另外去微软下了个 msxsl.exe 工具 :

     msxsl.exe     test.pdm  pdm.xslt   -o  dataStrucutre.html

运行如上命令就可以得到 dataStruture.html 文件了。  

顺便附上  msxsl.exe  和 这个 pdm.xsl  在 附件的  tool.zip 中。

猜你喜欢

转载自bruce008.iteye.com/blog/1601384