Ejemplos de procesamiento de órdenes en un archivo XML
Este tema contiene ejemplos de archivos de entrada XML, expresiones XPath, hojas de
estilo XSLT y RICOH ProcessDirector altera los archivos producidos por las hojas de estilo XSLT. Estos ejemplos funcionan
con el caso de ejemplo de uso para procesar órdenes en un archivo XML.
Archivo de entrada XML
<?xml version="1.0" encoding="utf-8"?>
<seller id="000364">
<order number="00060310">
<customername>Metropolis Real Estate</customername>
<shipto>
<address1>100 Main St</address1>
<address2>></address2>
<city>Metropolis</city>
<state>OH</state>
<zip_code>45416</zip_code>
</shipto>
<item number="001">
<printfile>http://www.metropolishomeexperts.com/brochures/br096.pdf</printfile>
<quantity>10</quantity>
</item>
<item number="002">
<printfile>http://www.metropolishomeexperts.com/posters/po014.pdf</printfile>
<quantity>5</quantity>
</item>
<item number="003">
<stock number="mug036"></stock>
<quantity>5</quantity>
</item>
</order>
<order number="00060311">
<customername>Town Point Realty</customername>
<shipto>
<address1>450 Broadway</address1>
<address2>Suite 12</address2>
<city>Parkview</city>
<state>IL</state>
<zip_code>60404</zip_code>
</shipto>
<item number="001">
<printfile>http://http://www.townpointrealty.com/print/0196.pdf</printfile>
<quantity>20</quantity>
</item>
<item number="002">
<stock number="cap0342"></stock>
<quantity>10</quantity>
</item>
</order>
</seller>
Nota: Para evitar que el archivo de entrada XML de muestra cause errores en el paso DownloadFile, cambie las URL para imprimir archivos de su sitio web por las URL del archivo de
muestra.
Primera expresión Xpath
/seller/order
Archivos XML creados para trabajos
- Número de pedido 00060310
-
<?xml version="1.0" encoding="UTF-8"?> <order number="00060310"> <customername>Metropolis Real Estate</customername> <shipto> <address1>100 Main St</address1> <address2>></address2> <city>Metropolis</city> <state>OH</state> <zip_code>45416</zip_code> </shipto> <item number="001"> <printfile>http://www.metropolishomeexperts.com/brochures/br096.pdf</printfile> <quantity>10</quantity> </item> <item number="002"> <printfile>http://www.metropolishomeexperts.com/posters/po014.pdf</printfile> <quantity>5</quantity> </item> <item number="003"> <stock number="mug036"/> <quantity>5</quantity> </item> </order>
- Número de pedido 00060311
-
<?xml version="1.0" encoding="UTF-8"?> <order number="00060311"> <customername>Town Point Realty</customername> <shipto> <address1>450 Broadway</address1> <address2>Suite 12</address2> <city>Parkview</city> <state>IL</state> <zip_code>60404</zip_code> </shipto> <item number="001"> <printfile>http://www.impactonthenet.com/buildsales.pdf</printfile> <quantity>20</quantity> </item> <item number="002"> <stock number="cap0342"/> <quantity>10</quantity> </item> </order>
Hoja de estilo XSLT para el primer paso ApplyXSLTransform
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0">
<xsl:output method="text" encoding="UTF-8"/>
<xsl:template match="/">
<xsl:variable name="var1_initial" select="."/>
<xsl:for-each select="order">
<xsl:variable name="var2_current" select="."/>
<xsl:value-of select="concat('Job.Info.Attr1=', @number, '
', 'Job.CustomerName=', customername)"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Archivos de alteraciones temporales creados por el primer paso ApplyXSLTransform
- Número de pedido 00060310
-
Job.Info.Attr1=00060310Job.CustomerName=Metropolis Real Estate
- Número de pedido 00060311
-
Job.Info.Attr1=00060311Job.CustomerName=Town Point Realty
Segunda expresión Xpath
/order/item/printfile/ancestor::item
Archivos XML creados para trabajos de elemento de impresión
Cuando el archivo de entrada XML contiene el número de pedido 00060310, RICOH ProcessDirector crea estos archivos XML.
- Elemento 001
-
<?xml version="1.0" encoding="utf-8"?> <item number="001"> <printfile>http://www.metropolishomeexperts.com/brochures/br096.pdf</printfile> <quantity>10</quantity> </item>
- Elemento 002
-
<?xml version="1.0" encoding="utf-8"?> <item number="002"> <printfile>http://www.metropolishomeexperts.com/posters/po014.pdf</printfile> <quantity>5</quantity> </item>
Tercera expresión Xpath
/order/item/stock/ancestor::item
Archivo XML creado para trabajo de elemento promocional
Cuando el archivo de entrada XML contiene el número de pedido 00060310, RICOH ProcessDirector crea este archivo XML.
<?xml version="1.0" encoding="utf-8"?>
<item number="003">
<stock number="mug036"/>
<quantity>5</quantity>
</item>
Hoja de estilo XSLT para el segundo paso ApplyXSLTransform (elementos de impresión)
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0">
<xsl:output method="text" encoding="UTF-8"/>
<xsl:template match="/">
<xsl:variable name="var1_initial" select="."/>
<xsl:for-each select="item">
<xsl:variable name="var2_current" select="."/>
<xsl:value-of select="concat('Job.DownloadFile=', printfile, '
', 'Job.Copies=', quantity)"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Archivos de alteraciones temporales creados por el segundo paso ApplyXSLTransform
- Elemento 001
-
Job.DownloadFile=http://www.metropolishomeexperts.com/brochures/br096.pdfJob.Copies=10
- Elemento 002
-
Job.DownloadFile=http://www.metropolishomeexperts.com/posters/po014.pdfJob.Copies=5
Hoja de estilo XSLT para el tercer paso ApplyXSLTransform (elementos promocionales)
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0">
<xsl:output method="text" encoding="UTF-8"/>
<xsl:template match="/">
<xsl:variable name="var1_initial" select="."/>
<xsl:for-each select="item">
<xsl:variable name="var2_current" select="."/>
<xsl:value-of select="concat('Job.Info.Attr2=', stock/@number, '
', 'Job.Copies=', quantity)"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Archivo de alteraciones temporales creado por el tercer paso ApplyXSLTransform
Job.Info.Attr2=mug036Job.Copies=5