root/trunk/projects/bos/statistics/all-contracts.lxsl

Revision 1994, 2.9 kB (checked in by hhubner, 2 years ago)

Add total sqm sales graphics

Line 
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:loop="http://informatik.hu-berlin.de/loop">
3  <xsl:output method="xml"/>
4
5  <xsl:template match="/response">
6   <xsl:variable name="total_sqms_sold">
7    <xsl:value-of select="sum(contract/@sqm-count)"/>
8   </xsl:variable>
9   <graphData>
10    <sets>
11     <set title="Contracts" marker-type="none" color="#00ff00">
12      <xsl:for-each select="contract">
13       <measure>
14        <xvalue><xsl:value-of select="@universal-time"/></xvalue>
15        <yvalue><xsl:value-of select="@sqm-count + sum(preceding-sibling::*/@sqm-count)"/></yvalue>
16       </measure>
17      </xsl:for-each>
18     </set>
19    </sets>
20    <minx><xsl:value-of select="/response/contract[1]/@universal-time"/></minx>
21    <maxx><xsl:value-of select="/response/contract[last()]/@universal-time"/></maxx>
22    <miny>0</miny>
23    <maxy><xsl:value-of select="$total_sqms_sold"/></maxy>
24    <title>Total square meters sold</title>
25    <xvalues>
26     <xsl:for-each select="/response/contract">
27      <xsl:choose>
28
29       <xsl:when test="(substring(preceding-sibling::*[1]/@date-time, 5, 2) != substring(@date-time, 5, 2)) and (substring(@date-time, 5, 2) = '01')">
30        <xvalue>
31         <value><xsl:value-of select="@universal-time"/></value>
32         <label>Q1/<xsl:value-of select="substring(@date-time, 1, 4)"/></label>
33         <gridline>true</gridline>
34        </xvalue>
35       </xsl:when>
36
37       <xsl:when test="(substring(preceding-sibling::*[1]/@date-time, 5, 2) != substring(@date-time, 5, 2)) and (substring(@date-time, 5, 2) = '04')">
38        <xvalue>
39         <value><xsl:value-of select="@universal-time"/></value>
40         <label>Q2/<xsl:value-of select="substring(@date-time, 1, 4)"/></label>
41         <gridline>true</gridline>
42        </xvalue>
43       </xsl:when>
44
45       <xsl:when test="(substring(preceding-sibling::*[1]/@date-time, 5, 2) != substring(@date-time, 5, 2)) and (substring(@date-time, 5, 2) = '07')">
46        <xvalue>
47         <value><xsl:value-of select="@universal-time"/></value>
48         <label>Q3/<xsl:value-of select="substring(@date-time, 1, 4)"/></label>
49         <gridline>true</gridline>
50        </xvalue>
51       </xsl:when>
52
53       <xsl:when test="(substring(preceding-sibling::*[1]/@date-time, 5, 2) != substring(@date-time, 5, 2)) and (substring(@date-time, 5, 2) = '10')">
54        <xvalue>
55         <value><xsl:value-of select="@universal-time"/></value>
56         <label>Q4/<xsl:value-of select="substring(@date-time, 1, 4)"/></label>
57         <gridline>true</gridline>
58        </xvalue>
59       </xsl:when>
60
61      </xsl:choose>
62     </xsl:for-each>
63    </xvalues>
64    <yvalues>
65     <loop:for name="i" from="10000" to="$total_sqms_sold" step="10000">
66      <yvalue>
67       <value><xsl:value-of select="$i"/></value>
68       <label><xsl:value-of select="$i"/></label>
69       <gridline>true</gridline>
70      </yvalue>
71     </loop:for>
72    </yvalues>
73   </graphData>
74  </xsl:template>
75 </xsl:stylesheet>
Note: See TracBrowser for help on using the browser.