如何将FMPXMLRESULT转换为XFA?

时间:2012-02-27 19:39:40

标签: xml forms pdf filemaker xfa

我正在尝试创建一个将FMPXMLRESULT文件转换为符合XFA的xml文件的XSL。目的是填写pdf表格。

问题是Filemaker中的所有字段名称都与pdf格式不同。

以下是fmpxmlresult文件的片段:

<?xml version="1.0" encoding="UTF-8" ?>
<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
<ERRORCODE>0</ERRORCODE>     
<PRODUCT BUILD="01-25-2011" NAME="FileMaker" VERSION="ProAdvanced 11.0v3"/>
<DATABASE DATEFORMAT="Yyyy-m-d" LAYOUT="" NAME="maisem" RECORDS="59" TIMEFORMAT="k:mm:ss "/>

<METADATA>
    <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="reportCode" TYPE="TEXT"/>
    <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="appraisalDate" TYPE="DATE"/>
    <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="buildingValue" TYPE="NUMBER"/>
    <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="landValue" TYPE="NUMBER"/>
    <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="totalValue" TYPE="NUMBER"/>
    ...
</METADATA>
<RESULTSET FOUND="1">
    <ROW MODID="1156" RECORDID="119">
        <COL><DATA>TEST-141-361-2-0-A</DATA></COL>
        <COL><DATA>2011-02-10</DATA></COL>
        <COL><DATA>57000</DATA></COL>
        <COL><DATA>6500</DATA></COL>
        <COL><DATA>63500</DATA></COL>
        ...
    </ROW>
</RESULTSET>
</FMPXMLRESULT>

以下是XFA中的等效内容:

<?xml version="1.0" encoding="UTF-8"?>
<xfa:data xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/">
<form1>
    <subform>
        <reference_number>TEST-141-361-2-0-A</reference_number>
        <date_of_appraisal>2011-02-10</date_of_appraisal>
        <cityBuildingAssess>57000</cityBuildingAssess>
        <cityLandAssess>6500</cityLandAssess>
        <cityTotalAssess/>63500</cityTotalAssess>
        ...
    </subform>
</form1>
...
</xfa:data>

我找到了这些字段具有相同名称的示例,但当前系统并非如此。

这只是田地的一小部分。填写表格有600多个字段。所以,我知道这将是一项巨大的工作。 :S

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

Here's an earlier answer显示了如何按名称获取列值。如果您的导出文件是平的,即所有数据都在同一个表中,那么第二个示例就是您所需要的(它没有xsl:stylesheet,从问题中复制它)。将其扩展到600个字段,将FileMaker字段与PDF字段匹配。