Difference between revisions of "Including XML on an MS Word Merge Document"
From SmartWiki
Line 7: | Line 7: | ||
For single values from an XML node use the following syntax in the "Values" section of the [[Custom Field Type: Special - MS Word Merge|Word Merge custom field]]: | For single values from an XML node use the following syntax in the "Values" section of the [[Custom Field Type: Special - MS Word Merge|Word Merge custom field]]: | ||
− | :''Mergefield''=@xml.''fieldname.sectionname.nodename''(''childnodename''.nodevalue)@ | + | :''Mergefield''=@xml.''fieldname.sectionname.nodename''(''childnodename''.nodevalue)@; |
:'''Example:''' project_budget=@xml.Submission Budget.Total-Expenses.total-exp.currency(total-expenses.nodevalue)@; | :'''Example:''' project_budget=@xml.Submission Budget.Total-Expenses.total-exp.currency(total-expenses.nodevalue)@; | ||
Line 14: | Line 14: | ||
and delimit the cells using pipes ("|"). Note that there is a pipe ("|") at the beginning and end of the row. | and delimit the cells using pipes ("|"). Note that there is a pipe ("|") at the beginning and end of the row. | ||
− | :''table_x''=@xml.''fieldname.sectionname.nodename''[#|~''childnodename.nodevalue~|~childnodename.nodevalue''~|#]@ | + | :''table_x''=@xml.''fieldname.sectionname.nodename''[#|~''childnodename.nodevalue~|~childnodename.nodevalue''~|#]@; |
:'''Example:''' table_5=@xml.Submission Budget.Other-Grants.Funders[#|~Funder.nodevalue~|~currency(Amount.nodevalue)~|#]@; | :'''Example:''' table_5=@xml.Submission Budget.Other-Grants.Funders[#|~Funder.nodevalue~|~currency(Amount.nodevalue)~|#]@; |
Revision as of 12:16, 21 August 2013
This article explains how to use the data stored within a SmartSimple XML field on a Word Merge document.
Word Merges can either draw in a single value from an XML "node" or the XML data can be displayed as a table.
Syntax
For single values from an XML node use the following syntax in the "Values" section of the Word Merge custom field:
- Mergefield=@xml.fieldname.sectionname.nodename(childnodename.nodevalue)@;
- Example: project_budget=@xml.Submission Budget.Total-Expenses.total-exp.currency(total-expenses.nodevalue)@;
To display data in a table (dynamic number of rows) use the same syntax as used on a web page view (Custom_Field_Type:_Special_-_XML_Data) and delimit the cells using pipes ("|"). Note that there is a pipe ("|") at the beginning and end of the row.
- table_x=@xml.fieldname.sectionname.nodename[#|~childnodename.nodevalue~|~childnodename.nodevalue~|#]@;
- Example: table_5=@xml.Submission Budget.Other-Grants.Funders[#|~Funder.nodevalue~|~currency(Amount.nodevalue)~|#]@;
- This example would render in a table with two columns.
- To specify the table use: "table_x =" where x is the table number as it appears in the template document.
- In the example above, the XML data will be merged into the fifth table in the Word document.
- Each XML section must be displayed in a separate table.
See Also
To set up a Word merge:
- Step 1 - Create the MS Word document that will be used as the template.
- Step 2 - Upload the Word document to a SmartFolder.
- Step 3 - Create a Special - MS Word Merge custom field.
Advanced Word Merge Features Include:
- Exporting List View Results to Microsoft Word
- Uploading a MS Word Merge Document to a Custom Field
- Including Tables in a Word Merge Document
- Using ReportProperty with a Word Merge Document
- Including Check Boxes on an MS Word Merge Document
- Including XML on an MS Word Merge Document
- Using Conditional Logic on a MS Word Merge Document