Beispiele für das Verarbeiten von Aufträgen in einer XML-Datei
Dieses Thema enthält Beispiele für XML-Eingabedetaien, XPath-Ausdrücke, XSLT-Stylesheets
und von den XSLT-Stylesheets produzierte RICOH ProcessDirector-Überschreibungsdateien. Diese Beispiele arbeiten mit dem Einsatzszenario für das
Verarbeiten von Aufträgen in einer XML-Datei.
XML-Eingabedatei
<?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>
Hinweis: Um zu verhindern, dass die Beispiel-XML-Eingabedatei im DownloadFile-Schritt Fehler verursacht, ersetzen Sie die URLs zu Durckdateien auf Ihrer Website
durch die URLs im Beispiel.
Erster Xpath-Ausdruck
/seller/order
Für Jobs erstellte XML-Dateien
- Auftragsnummer 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>
- Auftragsnummer 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>
XSLT-Stylesheet für den ersten ApplyXSLTransform-Schritt
<?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>
Vom ersten ApplyXSLTransform-Schritt erstellte Überschreibungsdateien
- Auftragsnummer 00060310
-
Job.Info.Attr1=00060310Job.CustomerName=Metropolis Real Estate
- Auftragsnummer 00060311
-
Job.Info.Attr1=00060311Job.CustomerName=Town Point Realty
Zweiter Xpath-Ausdruck
/order/item/printfile/ancestor::item
Für Druckelement-Jobs erstellte XML-Dateien
Wenn die XML-Eingabedatei die Auftragsnummer 00060310 enthält, erstellt RICOH ProcessDirector diese XML-Dateien.
- Element 001
-
<?xml version="1.0" encoding="utf-8"?> <item number="001"> <printfile>http://www.metropolishomeexperts.com/brochures/br096.pdf</printfile> <quantity>10</quantity> </item>
- Element 002
-
<?xml version="1.0" encoding="utf-8"?> <item number="002"> <printfile>http://www.metropolishomeexperts.com/posters/po014.pdf</printfile> <quantity>5</quantity> </item>
Dritter Xpath-Ausdruck
/order/item/stock/ancestor::item
Für Werbeelement-Jobs erstellte XML-Datei
Wenn die XML-Eingabedatei die Auftragsnummer 00060310 enthält, erstellt RICOH ProcessDirector diese XML-Datei.
<?xml version="1.0" encoding="utf-8"?>
<item number="003">
<stock number="mug036"/>
<quantity>5</quantity>
</item>
XSLT-Stylesheet für den zweiten ApplyXSLTransform-Schritt (Druckelemente)
<?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>
Vom zweiten ApplyXSLTransform-Schritt erstellte Überschreibungsdateien
- Element 001
-
Job.DownloadFile=http://www.metropolishomeexperts.com/brochures/br096.pdfJob.Copies=10
- Element 002
-
Job.DownloadFile=http://www.metropolishomeexperts.com/posters/po014.pdfJob.Copies=5
XSLT-Stylesheet für den dritten ApplyXSLTransform-Schritt (Werbeelemente)
<?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>
Vom dritten ApplyXSLTransform-Schritt erstellte Überschreibungsdatei
Job.Info.Attr2=mug036Job.Copies=5