office-alexander-logistics/reports/cargosoft/cargosoft-1.0.0.imixs-report

1 line
No EOL
11 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><document xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><item name="attributes"><value xsi:type="xmlItem"><value xsi:type="xs:string">$uniqueid</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">$workflowgroup</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">$taskid</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">$workflowsummary</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">invoice.number</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">invoice.date</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">invoice.total</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">invoice.currency</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">cdtr.name</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">cdtr.iban</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">cdtr.bic</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">dbtr.name</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">dbtr.iban</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">dbtr.bic</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value><value xsi:type="xmlItem"><value xsi:type="xs:string">payment.type</value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value><value xsi:type="xs:string"></value></value></item><item name="contenttype"><value xsi:type="xs:string"></value></item><item name="encoding"><value xsi:type="xs:string">UTF-8</value></item><item name="txtdescription"><value xsi:type="xs:string">Cargosoft Export - only the XSL Template is needed here!</value></item><item name="txtname"><value xsi:type="xs:string">cargosoft</value></item><item name="txtquery"><value xsi:type="xs:string"></value></item><item name="xsl"><value xsi:type="xs:string">&lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt;&lt;xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"&gt; &lt;xsl:strip-space elements="*" /&gt; &lt;xsl:output method="xml" indent="yes" encoding="UTF-8" standalone="yes" /&gt; &lt;xsl:template match="/"&gt; &lt;xsl:variable name="date" select="/data/document/item[@name='$modified']/value" /&gt; &lt;Invoices version="2020.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt; &lt;Message&gt; &lt;SenderID&gt;Imixs-Office-Workflow&lt;/SenderID&gt; &lt;ReceiverID&gt;Cargosoft&lt;/ReceiverID&gt; &lt;MessageID&gt;&lt;xsl:value-of select="/data/document/item[@name='$uniqueid']/value" /&gt;&lt;/MessageID&gt; &lt;MessageDate&gt; &lt;DateTime&gt;&lt;xsl:value-of select="$date" /&gt;&lt;/DateTime&gt; &lt;/MessageDate&gt; &lt;/Message&gt; &lt;xsl:apply-templates select="/data/document[normalize-space(item[@name = '$workflowgroup']/value) = 'Cargosoft-Export']" /&gt; &lt;/Invoices&gt; &lt;/xsl:template&gt; &lt;!-- This template builds invoice info --&gt; &lt;xsl:template match="/data/document[normalize-space(item[@name = '$workflowgroup']/value) = 'Cargosoft-Export']"&gt; &lt;xsl:variable name="date" select="item[@name='$modified']/value"/&gt; &lt;xsl:variable name="currency" select="item[@name='invoice.currency']/value"/&gt; &lt;Invoice&gt; &lt;InvoiceHeader&gt; &lt;Client&gt; &lt;Codes&gt; &lt;!-- Als Typ muss „cs“ übermittelt werden und im Code wird dann der Cargosoft Mandant erwartet. --&gt; &lt;Code Type="cs"&gt;001&lt;/Code&gt; &lt;/Codes&gt; &lt;/Client&gt; &lt;!-- Hier muss eine eindeutige Belegnummer für jeden einzelnen Beleg übermittelt werden. Es muss sich um eine Nummer handeln, die pro Beleg hochgezählt wird und darf sich nicht überschneiden mit dem CargoSoft Belegnummernkreis. Daher den Nummernkreis vorher mit CargoSoft absprechen. --&gt; &lt;InvoiceNumber&gt;&lt;xsl:value-of select="item[@name='numsequencenumber']/value" /&gt;&lt;/InvoiceNumber&gt; &lt;InvoiceType&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;INVOICE&lt;/Code&gt; &lt;/Codes&gt; &lt;/InvoiceType&gt; &lt;InvoiceCurrency&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;&lt;xsl:value-of select="$currency" /&gt;&lt;/Code&gt; &lt;/Codes&gt; &lt;/InvoiceCurrency&gt; &lt;InvoiceAmount&gt; &lt;NetAmount&gt; &lt;Amount&gt; &lt;Currency&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;&lt;xsl:value-of select="$currency" /&gt;&lt;/Code&gt; &lt;/Codes&gt; &lt;/Currency&gt; &lt;Value&gt;&lt;xsl:value-of select="item[@name='order.total.netto']/value" /&gt;&lt;/Value&gt; &lt;ExchangeRate&gt;&lt;xsl:value-of select="item[@name='invoice.exchangerate']/value" /&gt;&lt;/ExchangeRate&gt; &lt;/Amount&gt; &lt;/NetAmount&gt; &lt;VATAmount&gt; &lt;Amount&gt; &lt;Currency&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;&lt;xsl:value-of select="$currency" /&gt;&lt;/Code&gt; &lt;/Codes&gt; &lt;/Currency&gt; &lt;Value&gt;&lt;xsl:value-of select="item[@name='order.total.tax']/value" /&gt;&lt;/Value&gt; &lt;ExchangeRate&gt;&lt;xsl:value-of select="item[@name='invoice.exchangerate']/value" /&gt;&lt;/ExchangeRate&gt; &lt;/Amount&gt; &lt;/VATAmount&gt; &lt;VATInformation&gt; &lt;VATAmount&gt; &lt;Amount isDomesticCurrency="true"&gt; &lt;Currency&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;&lt;xsl:value-of select="$currency" /&gt;&lt;/Code&gt; &lt;/Codes&gt; &lt;/Currency&gt; &lt;Value&gt;0&lt;/Value&gt; &lt;/Amount&gt; &lt;/VATAmount&gt; &lt;/VATInformation&gt; &lt;/InvoiceAmount&gt; &lt;CollectionInvoice&gt;false&lt;/CollectionInvoice&gt; &lt;xsl:if test="string-length(item[@name='invoice.period']/value) &gt; 0"&gt; &lt;BookingPeriod&gt;&lt;xsl:value-of select="item[@name='invoice.period']/value" /&gt;&lt;/BookingPeriod&gt; &lt;/xsl:if&gt; &lt;Booked&gt;false&lt;/Booked&gt; &lt;InvoiceDate&gt;&lt;xsl:value-of select="item[@name='invoice.date']/value" /&gt;&lt;/InvoiceDate&gt; &lt;InvoiceAddress type="CN"&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;&lt;xsl:value-of select="item[@name='cdtr.number']/value" /&gt;&lt;/Code&gt; &lt;/Codes&gt; &lt;/InvoiceAddress&gt; &lt;References&gt; &lt;Reference type="cs"&gt;&lt;xsl:value-of select="item[@name='invoice.number']/value" /&gt;&lt;/Reference&gt; &lt;/References&gt; &lt;!-- Attachements --&gt; &lt;xsl:if test="item[@name='$file.count']/value &gt; 0"&gt; &lt;Attachments&gt; &lt;xsl:for-each select="item[@name='$file']/value/item"&gt; &lt;Attachment&gt; &lt;xsl:attribute name="id"&gt;&lt;xsl:value-of select="./value/item[@name='md5checksum']/value" /&gt;&lt;/xsl:attribute&gt; &lt;xsl:attribute name="version"&gt;1&lt;/xsl:attribute&gt; &lt;Filename&gt;&lt;xsl:value-of select="./@name" /&gt;&lt;/Filename&gt; &lt;Description&gt;Imixs-Office-Workflow&lt;/Description&gt; &lt;Content&gt;&lt;xsl:value-of select="./value[2]" /&gt;&lt;/Content&gt; &lt;/Attachment&gt; &lt;/xsl:for-each&gt; &lt;/Attachments&gt; &lt;/xsl:if&gt; &lt;/InvoiceHeader&gt; &lt;InvoiceRows&gt; &lt;xsl:for-each select="item[@name='_childitems']/value"&gt; &lt;InvoiceRow&gt; &lt;Row&gt;&lt;xsl:value-of select="./item[@name='numpos']/value" /&gt;&lt;/Row&gt; &lt;FileNumber&gt;&lt;xsl:value-of select="./item[@name='name']/value" /&gt;&lt;/FileNumber&gt; &lt;InvoiceAmount&gt; &lt;NetAmount&gt; &lt;Amount&gt; &lt;Currency&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;&lt;xsl:value-of select="$currency" /&gt;&lt;/Code&gt; &lt;/Codes&gt; &lt;/Currency&gt; &lt;Value&gt;&lt;xsl:value-of select="./item[@name='amount']/value" /&gt;&lt;/Value&gt; &lt;/Amount&gt; &lt;/NetAmount&gt; &lt;VATInformation&gt; &lt;VAT&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;&lt;xsl:value-of select="./item[@name='tax']/value" /&gt;&lt;/Code&gt; &lt;/Codes&gt; &lt;/VAT&gt; &lt;/VATInformation&gt; &lt;/InvoiceAmount&gt; &lt;ActivityType&gt; &lt;Codes&gt; &lt;Code Type="cs"&gt;&lt;xsl:value-of select="./item[@name='category']/value" /&gt;&lt;/Code&gt; &lt;/Codes&gt; &lt;/ActivityType&gt; &lt;/InvoiceRow&gt; &lt;/xsl:for-each&gt; &lt;/InvoiceRows&gt; &lt;/Invoice&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;</value></item><item name="xslresource"><value xsi:type="xs:string">/office-alexander-logistics/reports/cargosoft/cargosoft-1.0.2.xsl</value></item></document>