PCHD#31911 -- Toevoegen rapport tbv QRC

svn path=/Website/branches/v5.4.4/; revision=24340
This commit is contained in:
Arthur Egberink
2015-03-06 10:41:55 +00:00
parent 3f0b8a5db8
commit a12bc95ac3

View File

@@ -416,4 +416,168 @@
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="qrc_ins_new_page">
<xsl:param name="p_page"/>
<xsl:param name="p_rows"/>
<xsl:param name="p_cols"/>
<table>
<xsl:for-each select="//facilitor/rapport/rapport_data/data_row">
<xsl:sort select="FCLT_F_GEBOUW"/>
<xsl:sort select="FCLT_F_VERDIEPING"/>
<xsl:sort select="PLAATS"/>
<xsl:if test="position() &gt;= (($p_page - 1) * ($p_rows * $p_cols) + 1) and position() &lt;= ($p_page * ($p_rows * $p_cols))">
<xsl:if test="(position() mod $p_cols) = 0">
<xsl:comment>=== Na elke 1 records (1x1 passen op 1 regel) ===</xsl:comment>
<xsl:call-template name="qrc_ins_new_tr">
<xsl:with-param name="p_pos" select="position() - $p_cols + 1"/>
<xsl:with-param name="p_cols" select="$p_cols"/>
</xsl:call-template>
</xsl:if>
<xsl:if test="(position() = last()) and (position() mod $p_cols) != 0">
<xsl:comment>=== Na elke 1 records (1x1 passen op 1 regel) ===</xsl:comment>
<xsl:call-template name="qrc_ins_new_tr">
<xsl:with-param name="p_pos" select="floor(position() div $p_cols) * $p_cols + 1"/>
<xsl:with-param name="p_cols" select="$p_cols"/>
</xsl:call-template>
</xsl:if>
</xsl:if>
</xsl:for-each>
</table>
</xsl:template>
<xsl:template name="qrc_ins_new_tr">
<xsl:param name="p_pos"/>
<xsl:param name="p_cols"/>
<tr height="80px">
<xsl:for-each select="//facilitor/rapport/rapport_data/data_row">
<xsl:sort select="FCLT_F_SOORTMELDING"/>
<xsl:sort select="FCLT_F_LOCATIE"/>
<xsl:sort select="FCLT_F_GEBOUW"/>
<xsl:sort select="FCLT_F_VERDIEPING"/>
<xsl:sort select="PLAATS"/>
<xsl:sort select="FCLT_F_OBJECTGROEP"/>
<xsl:sort select="FCLT_F_OBJECTSOORT"/>
<xsl:sort select="INS_DEEL_OMSCHRIJVING"/>
<xsl:if test="position() &gt;= $p_pos and position() &lt;= $p_pos + $p_cols - 1">
<xsl:choose>
<xsl:when test="VARIABELE = 'INS_KEY'">
<td width="25%" style="text-align:center">
<xsl:element name="img">
<xsl:attribute name="style">height: 5cm</xsl:attribute>
<xsl:attribute name="src">
../../appl/shared/qrcode.asp?size=16&amp;text=%3Fu%3D<xsl:value-of select="HIDE_F_BOOKMARK_ID"/>%26ins_key%3D<xsl:value-of select="INS_DEEL_KEY"/>
</xsl:attribute>
</xsl:element>
<br/>
</td>
</xsl:when>
<xsl:when test="VARIABELE = 'RES_RUIMTE_KEY'">
<td width="25%" style="text-align:center">
<xsl:element name="img">
<xsl:attribute name="style">height: 5cm</xsl:attribute>
<xsl:attribute name="src">
../../appl/shared/qrcode.asp?size=16&amp;text=%3Fu%3D<xsl:value-of select="HIDE_F_BOOKMARK_ID"/>%26res_ruimte_key%3D<xsl:value-of select="RUIMTE_KEY"/>
</xsl:attribute>
</xsl:element>
<br/>
</td>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:for-each>
</tr>
<tr height="80px">
<xsl:for-each select="//facilitor/rapport/rapport_data/data_row">
<xsl:sort select="FCLT_F_SOORTMELDING"/>
<xsl:sort select="FCLT_F_LOCATIE"/>
<xsl:sort select="FCLT_F_GEBOUW"/>
<xsl:sort select="FCLT_F_VERDIEPING"/>
<xsl:sort select="PLAATS"/>
<xsl:sort select="FCLT_F_OBJECTGROEP"/>
<xsl:sort select="FCLT_F_OBJECTSOORT"/>
<xsl:sort select="INS_DEEL_OMSCHRIJVING"/>
<xsl:if test="position() &gt;= $p_pos and position() &lt;= $p_pos + $p_cols - 1">
<td width="25%" style="text-align:center">
<xsl:value-of select="FCLT_F_SOORTMELDING"/>
<br/>
<xsl:value-of select="FCLT_F_LOCATIE"/>
<br/>
<xsl:value-of select="PLAATS"/>
<br/>
<xsl:value-of select="FCLT_F_OBJECTGROEP"/>
<br/>
<xsl:value-of select="FCLT_F_OBJECTSOORT"/>
<br/>
<xsl:value-of select="INS_DEEL_OMSCHRIJVING"/>
<br/>
</td>
</xsl:if>
</xsl:for-each>
</tr>
</xsl:template>
<xsl:template match="rapport">
<xsl:choose>
<!--De generatie van QR-codes voor object-meldingen en reserveringen)-->
<xsl:when test="@view = 'pchx_v_rap_mld_qrc' or @view = 'PCHX_V_RAP_MLD_QRC'">
<xsl:variable name="p_rows" select="3"/>
<xsl:variable name="p_cols" select="2"/>
<table>
<tr height="200">
<td width="50%" align="center">
<span style="font-size:24pt;color:#000000">QR-codes</span>
</td>
</tr>
<tr height="200">
<td width="50%" align="center">
<span style="font-size:24pt;color:#000000">object-meldingen</span>
</td>
</tr>
<tr height="200">
<td width="50%" align="center">
<span style="font-size:24pt;color:#000000">(startpagina tbv. uitlijning)</span>
</td>
</tr>
</table>
<xsl:for-each select="//facilitor/rapport/rapport_data/data_row">
<xsl:sort select="FCLT_F_SOORTMELDING"/>
<xsl:sort select="FCLT_F_LOCATIE"/>
<xsl:sort select="FCLT_F_GEBOUW"/>
<xsl:sort select="FCLT_F_VERDIEPING"/>
<xsl:sort select="PLAATS"/>
<xsl:sort select="FCLT_F_OBJECTGROEP"/>
<xsl:sort select="FCLT_F_OBJECTSOORT"/>
<xsl:sort select="INS_DEEL_OMSCHRIJVING"/>
<xsl:if test="position() mod ($p_rows * $p_cols) = 0">
<div style="page-break-before:always">&#160;</div>
<xsl:comment>=== Na elke 2 records (2x1 passen op 1 A4) =====</xsl:comment>
<xsl:call-template name="qrc_ins_new_page">
<xsl:with-param name="p_page" select="floor(position() div ($p_rows * $p_cols))"/>
<xsl:with-param name="p_rows" select="$p_rows"/>
<xsl:with-param name="p_cols" select="$p_cols"/>
</xsl:call-template>
</xsl:if>
<xsl:if test="position() = last() and position() mod ($p_rows * $p_cols) != 0 ">
<div style="page-break-before:always">&#160;</div>
<xsl:comment>=== De laatste paar, zijn minder dan 2 =====</xsl:comment>
<xsl:call-template name="qrc_ins_new_page">
<xsl:with-param name="p_page" select="floor((position() div ($p_rows * $p_cols)) + 1)"/>
<xsl:with-param name="p_rows" select="$p_rows"/>
<xsl:with-param name="p_cols" select="$p_cols"/>
</xsl:call-template>
</xsl:if>
</xsl:for-each>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="." mode="cust"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>