CyberStore Ecommerce 2023 Documentation
CustomerInvoiceDisplay.xslt

The following is the default XML transformation file applied to either a SORQID ouput or SORQND output for the Sales Order Invoice or Dispatch Invoice lookup.

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">
    <div class="divTable">
      <div class="divTableBody">          
        <div class="logoWrapper">
          <div class="divTableCell logo"></div>
          <div class="divTableCell title">Invoice</div>
        </div>
        <div class="divTableRow invoiceDetails">

          <div class="divTableCell">
            <!--Invoice #: <xsl:value-of select="string(number(//Header/DocumentNumber))"  />-->
            <div class="detailRow">
              <div class="orderdisplayLabel">Invoice Number: </div>
              <div class="orderdisplaydetailField"><xsl:value-of select="//Header/DocumentNumber"  /></div>
          </div>
          <div class="detailRow">
            <div class="orderdisplayLabel">Invoice Date:</div>
            <div class="orderdisplaydetailField">
            <xsl:variable name="LenCheck" select="substring(//Header/EntInvoiceDate, 6, 2)" />
            <xsl:choose>
              <xsl:when test="string-length($LenCheck) = 0">
              </xsl:when>
              <xsl:otherwise>
                <xsl:value-of
                  select="concat(substring(//Header/EntInvoiceDate, 6, 2), '/',substring(//Header/EntInvoiceDate, 9, 2), '/',substring(//Header/EntInvoiceDate, 1, 4))" />
              </xsl:otherwise>
            </xsl:choose>
            </div>
          </div>
            <!---->
            <!--<xsl:value-of select="concat(substring(//Header/EntInvoiceDate, 6, 2), '/', substring(//Header/EntInvoiceDate, 9, 2), '/', substring(//Header/EntInvoiceDate, 1, 4))" />-->
            <div class="detailRow">
            <div class="orderdisplayLabel">Due Date:</div>
            <div class="orderdisplaydetailField"><xsl:variable name="LenCheck2" select="substring(//Totals/InvoiceDueDate, 6, 2)" />
            <xsl:choose>
              <xsl:when test="string-length($LenCheck2) = 0">
              </xsl:when>
              <xsl:otherwise>
                <xsl:value-of
                  select="concat(substring(//Totals/InvoiceDueDate, 6, 2), '/',
              substring(//Totals/InvoiceDueDate, 9, 2), '/',
              substring(//Totals/InvoiceDueDate, 1, 4))" />
              </xsl:otherwise>
            </xsl:choose></div>
          </div>
       </div>
        <div class="divTableRow customerDetails">
          <div class="divTableCell divTableRight">
                             <div class="detailRow">
                  <div class="orderdisplayLabel"></div>
             <div class="orderdisplaydetailField"><xsl:value-of select="//Header/CustomerName" /></div>
           </div>
             
                             <div class="detailRow">
                  <div class="orderdisplayLabel"></div>
             <div class="orderdisplaydetailField"><xsl:value-of select="//Header/Contact" /></div>
           </div>
             
                             <div class="detailRow">
                  <div class="orderdisplayLabel"></div>
             <div class="orderdisplaydetailField"><xsl:value-of select="//Header/Email" /></div>
           </div>
             
                             <div class="detailRow">
                  <div class="orderdisplayLabel"></div>
             <div class="orderdisplaydetailField"><xsl:value-of select="//Header/CompanyName" /></div>
           </div>
             
                             <div class="detailRow">
                  <div class="orderdisplayLabel"></div>
             <div class="orderdisplaydetailField"><xsl:value-of select="//Header/CompanyAddress2" /></div>
           </div>
             
                             <div class="detailRow">
                  <div class="orderdisplayLabel"></div>
             <div class="orderdisplaydetailField"><xsl:value-of select="//Header/CompanyAddress3" />, 
             <xsl:value-of select="//Header/CompanyAddress4" /></div>
           </div>

                             <div class="detailRow">
                  <div class="orderdisplayLabel"></div>
             <div class="orderdisplaydetailField"><xsl:value-of select="//Header/CompanyAddress5" /></div>
           </div>
          </div>
        </div>
         </div>
      </div>
      
      <div class="divTableBody">

        <div class="divTableRow detailRow headerRow">
          <div class="divTableCell divTableHead divTableItem">Item</div>
          <div class="divTableCell divTableHead divTableDesc">Description</div>
          <div class="divTableCell divTableHead divTableQTY">Qty</div>
          <div class="divTableCell divTableHead divTableEA">EA</div>
          <div class="divTableCell divTableHead divTablePrice">Price</div>
        </div>
        <xsl:for-each select="//Merchandise">
          <div class="divTableRow itemDetails">
            <div class="divTableCell StockCode">
              <xsl:value-of select="MStockCode" />
            </div>
            <div class="divTableCell StockDes">
              <xsl:value-of select="MStockDes" />
            </div>
            <div class="divTableCell divTableRight Qty">
              <xsl:value-of select="format-number(MShipQty, '0')" />
            </div>
            <div class="divTableCell divTableRight Price format-currency">
              <xsl:value-of select="MPrice" />
            </div>
            <div class="divTableCell divTableRight Gross format-currency">
              <xsl:value-of select="LineGrossAmount" />
            </div>
          </div>
        </xsl:for-each>
        <div class="divTableRow invoiceTotals">
          <div class="divTableCell">Sub Total: </div>
          <div class="divTableCell divTableRight orderTotal">
            <span class='format-currency'>
              <xsl:value-of select="//Totals/TotalInvAmtExclTax" />
            </span>
          </div>
        </div>
        <div class="divTableRow invoiceTotals">
          <div class="divTableCell">Tax: </div>
          <div class="divTableCell divTableRight orderTotal">
            <span class='format-currency'>
              <xsl:value-of select="//Totals/TotalSalesTax" />
            </span>
          </div>
        </div>
        <div class="divTableRow invoiceTotals">
          <div class="divTableCell">Shipping: </div>
          <div class="divTableCell divTableRight orderTotal">
            <span class='format-currency'>
              <xsl:value-of select="//Totals/TotalFreightAmount" />
            </span>
          </div>
        </div>
        <div class="divTableRow invoiceTotals">
          <div class="divTableCell">Total: </div>
          <div class="divTableCell divTableRight orderTotal">
            <span class='format-currency'>
              <xsl:value-of select="//Totals/TotalInvoiceAmount" />
            </span>
          </div>
        </div>
      </div>
    </div>

  </xsl:template>
</xsl:stylesheet>