ExportToXml¶
Exports the data table content to XML data. For each row in the data table, a new XML child element is created at the specified XPath location.
1 | |
An expression for the column, which can be a calculation or transformation.
Name : string
The name of the column to use in the results. If not specified, the
XPath : string
An XPath expression to map data to the column.>
An array of columns to include in the result set.
Map : (node: Xml) => void
A custom mapper function to apply to each node in the result set.
MaxLength : number
The maximum number of rows to return. If not set, all rows are returned.
Node : Xml
The root node for the mapping. If not specified, the global
Order : Array<Expression : string
The expression to use for ordering the results.
Type : ( ... | ... | ... )
The type of ordering (ascending or descending). If not specified, defaults to "Ascending".>
An array of order expressions to sort the results.
Parameters : object
Additional parameters to pass to the query.
Start : number
The starting index for the rows to return.
SubQueries : Array<Columns : Array<Expression : ...
An expression for the column, which can be a calculation or transformation.
Name : ...
The name of the column to use in the results. If not specified, the
XPath : ...
An XPath expression to map data to the column.>
An array of columns to include in the result set.
MaxLength : number
The maximum number of rows to return. If not set, all rows are returned.
Name : string
The name of the sub-query. The relation name can be used as the name.
Order : Array<...>
An array of order expressions to sort the results.
Parameters : object
Additional parameters to pass to the query.
Relation : string
The name of the relation to use for the sub-query.
Start : number
The starting index for the rows to return.
SubQueries : SubQuery[]
An array of sub-queries to include in the result set.
TargetSchema : string
The name of the schema to execute the query against.
TargetTable : string
The name of the table to execute the query against.
Where : Blocks : ...
An array of nested query blocks.
Condition : ...
The condition to combine this block with the next one. If not specified, defaults to "And".
Criteria : ...
An array of criteria to apply within this block.
The criteria to filter the query results.
XPath : string
The XPath expression to export the data to.>
An array of sub-queries to include in the result set.
TargetSchema : string
The name of the schema to execute the query against.
TargetTable : string
The name of the table to execute the query against.
Where : Blocks : Array<...>
An array of nested query blocks.
Condition : ( "And" | "Or" )
The condition to combine this block with the next one. If not specified, defaults to "And".
Criteria : Array<...>
An array of criteria to apply within this block.
The criteria to filter the query results.
XPath : string
The root XPath expression to map the data to.):DataTable
Parameters¶
Columns : Array<Expression : string
An expression for the column, which can be a calculation or transformation.
Name : string
The name of the column to use in the results. If not specified, the
XPath : string
An XPath expression to map data to the column.>
An array of columns to include in the result set.
Map : (node: Xml) => void
A custom mapper function to apply to each node in the result set.
MaxLength : number
The maximum number of rows to return. If not set, all rows are returned.
Node : Xml
The root node for the mapping. If not specified, the global
Order : Array<Expression : string
The expression to use for ordering the results.
Type : ( ... | ... | ... )
The type of ordering (ascending or descending). If not specified, defaults to "Ascending".>
An array of order expressions to sort the results.
Parameters : object
Additional parameters to pass to the query.
Start : number
The starting index for the rows to return.
SubQueries : Array<Columns : Array<Expression : ...
An expression for the column, which can be a calculation or transformation.
Name : ...
The name of the column to use in the results. If not specified, the
XPath : ...
An XPath expression to map data to the column.>
An array of columns to include in the result set.
MaxLength : number
The maximum number of rows to return. If not set, all rows are returned.
Name : string
The name of the sub-query. The relation name can be used as the name.
Order : Array<...>
An array of order expressions to sort the results.
Parameters : object
Additional parameters to pass to the query.
Relation : string
The name of the relation to use for the sub-query.
Start : number
The starting index for the rows to return.
SubQueries : SubQuery[]
An array of sub-queries to include in the result set.
TargetSchema : string
The name of the schema to execute the query against.
TargetTable : string
The name of the table to execute the query against.
Where : Blocks : ...
An array of nested query blocks.
Condition : ...
The condition to combine this block with the next one. If not specified, defaults to "And".
Criteria : ...
An array of criteria to apply within this block.
The criteria to filter the query results.
XPath : string
The XPath expression to export the data to.>
An array of sub-queries to include in the result set.
TargetSchema : string
The name of the schema to execute the query against.
TargetTable : string
The name of the table to execute the query against.
Where : Blocks : Array<...>
An array of nested query blocks.
Condition : ( "And" | "Or" )
The condition to combine this block with the next one. If not specified, defaults to "And".
Criteria : Array<...>
An array of criteria to apply within this block.
The criteria to filter the query results.
XPath : string
The root XPath expression to map the data to. query
A query that defines the data to export.
Returns¶
A DataTable instance containing the exported data.
Remarks¶
When the IncludeAllColumns parameter is not specified, the default behavior is that the query returns only explicitly specified columns. If no columns are specified, the query returns all defined columns in the table.
The design of your XML data model and SQL table columns is key for ease of use. When XML node and table column names are identical, this method maps them automatically.
Info
The ,$Database.ExportToXml, and ,$Database.ImportFromXml, methods require a unique primary key field on the database table and data model.
Map function A map function can be used to transform values before saving, for example, encrypting a password before saving it to the database. See ,$Database.ImportFromXml, for more details.
Example¶
1 2 3 4 5 6 7 8 9 10 | |
Exporting database content into XML¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | |
Exporting with sub-queries¶
1 2 3 4 5 6 7 8 9 10 11 | |
Info
Assume you have two SQL tables, ,Corporations, and ,SubCorporations,, and a one-to-many relation from the ,Corporations, table to the ,SubCorporations, table, also named ,SubCorporations,. Also, do not forget to set this relation's update rule to ,Cascade,.
Having defined the table columns with identical names to the XML fields, this code lets you export each corporation from SQL table into XML fields, exporting also its related SubCorporations into the SubCorporations XML nodes and resulting in the following XML data.
Exported XML Data¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | |
Exporting with nested sub-queries¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | |
Exporting with XML mappings¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | |