Unpaid Transactions Report (cash-05) is too long
- Article Type: General
- Product: Aleph
- Product Version: 16.02
Description:
We are unhappy with the look of our Unpaid Transactions Letters (p_cash_05). Some patrons end up with multiple pages reflecting credits and debits that cancel each other out. For example, a patron may have had 3 books returned very late, each one has a $5 processing fee and $25 lost material replacement cost associated with it. But these are credited to them when the item is returned. Their 3-page report with 9 separate transactions on it would boil down to a $5 fine for each book and this would've fit nicely on one page.
Patrons do not want to look through a multiple page report to determine why they owe money.
Resolution:
If the report were a table (see below xsl) instead of an often multi-page list, listing all the pluses and minuses would be less of a hassle and more of a feature. There is a limit to the number of fields that can be displayed because of the width of the table, but perhaps that is a positive point, too (all the fields from the original format appear in the new one, but some are commented out.).
- - - - - - - -
cash-user-letter.xsl in Table Format
- - - - - - - -
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes"/>
<xsl:include href="funcs.xsl"/>
<xsl:template match="/">
<xsl:call-template name="header"/>
<!--section-01 (FREE)-->
<xsl:for-each select="//section-01">
<xsl:call-template name="section-01"/>
</xsl:for-each>
<!--section-02 (GRID)-->
<xsl:for-each select="//section-02">
<xsl:if test="position() = 1">
<xsl:call-template name="section-02">
<xsl:with-param name="header" select="'header'"/>
</xsl:call-template>
</xsl:if>
<xsl:call-template name="section-02"/>
</xsl:for-each>
<!--section-03 (FREE)-->
<xsl:for-each select="//section-03">
<xsl:call-template name="section-03"/>
</xsl:for-each>
<xsl:call-template name="signature"/>
</xsl:template>
<!-- START DATA -->
<xsl:template name="header">
<xsl:call-template name="header-gen">
<xsl:with-param name="title" select="'Unpaid Transactions Letter'"/>
</xsl:call-template>
</xsl:template>
<!--SECTION-01 (FREE)-->
<xsl:template name="section-01">
<xsl:call-template name="sublib-address"/>
<xsl:call-template name="patron-address"/>
<xsl:call-template name="generic-line">
<xsl:with-param name="line" select="'salutation_string####following please find a list of unpaid transactions,
including amounts you owe (debits), and amounts that the library owes you (credits).##We have referred the handling of this
debt to our Accounting Department.##Please contact them to settle your account.'"/>
</xsl:call-template>
<xsl:call-template name="table-close"/>
</xsl:template>
<!--SECTION-02 (GRID)-->
<xsl:template name="section-02">
<xsl:param name="header"/>
<xsl:if test="$header!=''">
<xsl:call-template name="start-grid"/>
</xsl:if>
<tr>
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Sublibrary'"/>
<xsl:with-param name="value" select="./z30-sub-library"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Barcode'"/>
<xsl:with-param name="value" select="./z30-barcode"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Amount'"/>
<xsl:with-param name="value" select="./z31-sum"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Transaction Type'"/>
<xsl:with-param name="value" select="./z31-description"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
<!--
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Call No.'"/>
<xsl:with-param name="value" select="./z30-call-no"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Volume'"/>
<xsl:with-param name="value" select="./z30-enumeration-a"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Copy Number'"/>
<xsl:with-param name="value" select="./z30-copy-id"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Item Status'"/>
<xsl:with-param name="value" select="./z30-item-status"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Description'"/>
<xsl:with-param name="value" select="./z30-description"/>
<xsl:with-param name="header" select="$header"/>
</xsl:call-template>
-->
<xsl:call-template name="display-grid-gen">
<xsl:with-param name="label" select="'Loaned'"/>
<xsl:with-param name="value" select="concat(./z36-loan-date,' ',./z36-loan-hour)"/>
<xs
- Article last edited: 10/8/2013