Spidey Posted August 27, 2011 Posted August 27, 2011 Hi, I've just export my data using xml. Is there a way for me to export the data using the field's name "Field_1" instead of <COL><DATA> in the contents? Thanks. Kent <?xml version="1.0" encoding="UTF-8" ?> <FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult"> <ERRORCODE>0</ERRORCODE> <PRODUCT BUILD="06-11-2010" NAME="FileMaker" VERSION="ProAdvanced 11.0v2"/> <DATABASE DATEFORMAT="Yyyy-m-d" LAYOUT="xsl" NAME="xsl.fp7" RECORDS="5" TIMEFORMAT="h:mm:ss a"/> <METADATA> <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Field_1" TYPE="TEXT"/> <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Field_2" TYPE="TEXT"/> <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Field_3" TYPE="TEXT"/> </METADATA> <RESULTSET FOUND="5"> <ROW MODID="0" RECORDID="1"> <COL><DATA>111</DATA></COL> <COL><DATA>aaa</DATA></COL> <COL><DATA>This is A.</DATA></COL> </ROW> <ROW MODID="0" RECORDID="2"> <COL><DATA>222</DATA></COL> <COL><DATA>bbb</DATA></COL> <COL><DATA>This is B.</DATA></COL> </ROW>
comment Posted August 27, 2011 Posted August 27, 2011 Try choosing the FMPDSORESULT grammar when exporting.
beverly Posted October 4, 2011 Posted October 4, 2011 FMPDOSRESULT has been deprecated. You can use a stylesheet to transform the xml however you want... :)
comment Posted October 26, 2011 Posted October 26, 2011 (edited) [ In response to a post deleted by forum administration ] This "sample" is an almost exact copy of the custom_delim.xsl file that comes with the application. However, the original file includes the following notice (the emphasis was added by me): Copyright © 2002 FileMaker, Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. ... Edited October 26, 2011 by comment
Cabinetman Posted October 26, 2011 Posted October 26, 2011 My sincere apologies.... I meant to only delete the example section but apparently cut to much. Hard to imagine one would do so in a section showing 8 lines.... (I'll made sure to use the 'More Reply Options' this time just to be sure.) Howbeit in an effort to actually answer a post and provide something meaningful and useful to the poster I will re-post IN FULL the xsl with all examples and copyright notices. <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fmp="http://www.filemaker.com/fmpxmlresult"> <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/> <!-- File: custom_delim.xsl Transforms data in FMPXMLRESULT grammar into a text file with the specified characters as field and record delimiters. Note that it is possible to choose field and record delimiters that would result in an exported file that FileMaker Pro can no longer import. For example: Database data ============= White Johnson Red 33 Green Mark Red 100 Blue Sam Blue 201 Yellow Susan Green 839 Straight Wendy Orange 22 Output ====== White*Johnson*Red*33 Green*Mark*Red*100 Blue*Sam*Blue*201 Yellow*Susan*Green*839 Straight*Wendy*Orange*22 =============================================================== Copyright © 2002 FileMaker, Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the FileMaker, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. =============================================================== --><xsl:template match="fmp:FMPXMLRESULT"> <xsl:for-each select="fmp:RESULTSET/fmp:ROW"> <xsl:for-each select="fmp:COL"> <xsl:choose> <xsl:when test="position()=last()"> <xsl:value-of select="fmp:DATA"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="fmp:DATA"/> <xsl:value-of select="$delimiter"/> </xsl:otherwise> </xsl:choose> </xsl:for-each> <xsl:value-of select="$newrecord"/> <xsl:template match="fmp:FMPXMLRESULT"> <xsl:call-template name="header"/> <xsl:for-each select="fmp:RESULTSET/fmp:ROW"> <xsl:for-each select="fmp:COL"> <xsl:choose> <xsl:when test="position()=last()"> <xsl:value-of select="fmp:DATA"/> <xsl:value-of select="$newrecord"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="fmp:DATA"/> <xsl:value-of select="$delimiter"/> </xsl:otherwise> </xsl:choose> </xsl:for-each> </xsl:for-each> </xsl:template> <xsl:template name="header"> <xsl:text>Name address1 address2 city state zipcode</xsl:text> <xsl:value-of select="$newrecord"/> </xsl:template> <!-- Variable "delimiter" contains the character that will be inserted in the output between each field in the exported data. Change the "*" between the "xsl:text" tags to make customizations. --> <xsl:variable name="delimiter"> <xsl:text> </xsl:text> </xsl:variable> <!-- Variable "newline" contains the character that will be inserted in the output as the end of record character. By default the new record delimitter is a carriage return. Other characters may be inserted between the xsl:text tags to create different delimitters. --> <xsl:variable name="newrecord"> <xsl:text> </xsl:text> </xsl:variable> </xsl:stylesheet> 1
Recommended Posts
This topic is 4845 days old. Please don't post here. Open a new topic instead.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now