Compare commits
No commits in common. 'master' and 'rpta_0.3_Release' have entirely different histories.
master
...
rpta_0.3_R
14 changed files with 126 additions and 1430 deletions
@ -1,443 +0,0 @@
@@ -1,443 +0,0 @@
|
||||
--freemarker template |
||||
<#include "RPTA-Makros"/> |
||||
<sqlvars> |
||||
<sqlvar name="rpta_exam_unit_dim_studiengang_exists"> |
||||
select count(*) from rpta_resultset where uniquename='rpta_exam_unit_dim_studiengang'; |
||||
</sqlvar> |
||||
<sqlvar name="rpta_resultset"> |
||||
select uniquename from rpta_resultset where uniquename='rpta_exam_unit_dim_studiengang'; |
||||
</sqlvar> |
||||
</sqlvars> |
||||
<#assign rpta_column_layouts = [{"uniquename":"rpta_exam_unit_dim_studiengang_note", |
||||
"caption":"Prüfungsergebnisse", |
||||
"rpta_resultset":"rpta_exam_unit_dim_studiengang", |
||||
"whereclause":"((modulart=''P'' and sourcesystem=6) or (part=''MP'' and sourcesystem=5))", |
||||
"description":"Prüfung und Noten" |
||||
}] |
||||
/> |
||||
|
||||
<#assign rpta_columns = [ |
||||
|
||||
{"uniquename":"dim_studiengang_stg", |
||||
"srcfieldname":"dim_studiengang_stg", |
||||
"column_type":"physicalColumn", |
||||
"col_function":"", |
||||
"format_code":"", |
||||
"caption":"Fach", |
||||
"is_visible":"1", |
||||
"is_aggregate":0, |
||||
"visible_size":10, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"dim_studiengang_abschluss", |
||||
"srcfieldname":"dim_studiengang_abschluss", |
||||
"column_type":"physicalColumn", |
||||
"col_function":"", |
||||
"format_code":"", |
||||
"caption":"Abschluss", |
||||
"is_visible":"1", |
||||
"is_aggregate":0, |
||||
"visible_size":10, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"sem_der_pruefung", |
||||
"srcfieldname":"sem_der_pruefung", |
||||
"targetfieldname":"sem_der_pruefung", |
||||
"column_type":"logicalColumn", |
||||
"col_function":"sem_der_pruefung", |
||||
"format_code":"", |
||||
"caption":"Semester der Prüfung", |
||||
"is_visible":"0", |
||||
"is_aggregate":0, |
||||
"visible_size":5, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"sem_der_pruefung_min_process", |
||||
"srcfieldname":"sem_der_pruefung", |
||||
"targetfieldname":"sem_der_pruefung_min_process", |
||||
"column_type":"processingColumn", |
||||
"col_function":"min", |
||||
"format_code":"", |
||||
"caption":"Semester der Prüfung (Min)", |
||||
"is_visible":"1", |
||||
"is_aggregate":1, |
||||
"visible_size":5, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"sem_der_pruefung_max_process", |
||||
"srcfieldname":"sem_der_pruefung", |
||||
"targetfieldname":"sem_der_pruefung_max_process", |
||||
"column_type":"processingColumn", |
||||
"col_function":"max", |
||||
"format_code":"", |
||||
"caption":"Semester der Prüfung (Max)", |
||||
"is_visible":"1", |
||||
"is_aggregate":1, |
||||
"visible_size":5, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"elementnr", |
||||
"srcfieldname":"elementnr", |
||||
"column_type":"physicalColumn", |
||||
"col_function":"", |
||||
"format_code":"", |
||||
"caption":"pnr", |
||||
"is_visible":"1", |
||||
"is_aggregate":0, |
||||
"visible_size":10, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"pdtxt", |
||||
"srcfieldname":"pdtxt", |
||||
"column_type":"physicalColumn", |
||||
"col_function":"", |
||||
"format_code":"", |
||||
"caption":"Name der Prüfung", |
||||
"is_visible":"1", |
||||
"is_aggregate":0, |
||||
"visible_size":40, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"summe", |
||||
"srcfieldname":"summe", |
||||
"column_type":"physicalColumn", |
||||
"col_function":"sum", |
||||
"format_code":"", |
||||
"caption":"Teilnehmer", |
||||
"is_visible":"1", |
||||
"is_aggregate":1, |
||||
"visible_size":15, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"note_case", |
||||
"srcfieldname":"note", |
||||
"targetfieldname":"note_case", |
||||
"column_type":"logicalColumn", |
||||
"col_function":"(case when note > 6 then null else note end)", |
||||
"format_code":"", |
||||
"caption":"Durchschnittsnote % *", |
||||
"is_visible":"0", |
||||
"is_aggregate":0, |
||||
"visible_size":5, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"note_schnitt", |
||||
"srcfieldname":"note_case", |
||||
"targetfieldname":"note_schnitt", |
||||
"column_type":"processingColumn", |
||||
"col_function":"avg", |
||||
"format_code":"", |
||||
"caption":"Durchschnittsnote *", |
||||
"is_visible":"0", |
||||
"is_aggregate":1, |
||||
"visible_size":5, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"note_schnitt_case", |
||||
"srcfieldname":"note_schnitt", |
||||
"targetfieldname":"note_schnitt_case", |
||||
"column_type":"computedColumn", |
||||
"col_function":"case when summe < 5 then null else note_schnitt end", |
||||
"format_code":"", |
||||
"caption":"Durchschnittsnote *", |
||||
"is_visible":"1", |
||||
"is_aggregate":1, |
||||
"visible_size":25, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"pstatus_nb", |
||||
"srcfieldname":"pstatus", |
||||
"targetfieldname":"pstatus_nb", |
||||
"column_type":"logicalColumn", |
||||
"col_function":"(case when pstatus in (''NB'',''EN'') then 1 else 0 end)", |
||||
"format_code":"", |
||||
"caption":"Durchfallquote in % *", |
||||
"is_visible":"0", |
||||
"is_aggregate":0, |
||||
"visible_size":5, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"pstatus_nb_sum", |
||||
"srcfieldname":"pstatus_nb", |
||||
"targetfieldname":"pstatus_nb_sum", |
||||
"column_type":"processingColumn", |
||||
"col_function":"sum", |
||||
"format_code":"", |
||||
"caption":"Durchfallquote in % *", |
||||
"is_visible":"0", |
||||
"is_aggregate":1, |
||||
"visible_size":5, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"pstatus_nb_quote", |
||||
"srcfieldname":"pstatus_nb_sum", |
||||
"targetfieldname":"pstatus_nb_quote", |
||||
"column_type":"computedColumn", |
||||
"col_function":"case when summe < 5 then null else pstatus_nb_sum/summe::decimal(18,2)*100 end", |
||||
"format_code":"DEC_2", |
||||
"caption":"Durchfallquote in % *", |
||||
"is_visible":"1", |
||||
"is_aggregate":1, |
||||
"visible_size":25, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"pvermerk_ne", |
||||
"srcfieldname":"pvermerk", |
||||
"targetfieldname":"pvermerk_ne", |
||||
"column_type":"logicalColumn", |
||||
"col_function":"(case when pvermerk in (''NE'',''N'') then 1 else 0 end)", |
||||
"format_code":"", |
||||
"caption":"Nicht erschienen", |
||||
"is_visible":"0", |
||||
"is_aggregate":0, |
||||
"visible_size":5, |
||||
"description":""}, |
||||
|
||||
{"uniquename":"pvermerk_ne_sum", |
||||
"srcfieldname":"pvermerk_ne", |
||||
"targetfieldname":"pvermerk_ne_sum", |
||||
"column_type":"processingColumn", |
||||
"col_function":"sum", |
||||
"format_code":"INTEGER", |
||||
"caption":"Nicht erschienen", |
||||
"is_visible":"1", |
||||
"is_aggregate":1, |
||||
"visible_size":25, |
||||
"description":""} |
||||
|
||||
|
||||
] /> |
||||
|
||||
|
||||
---ab hier nicht mehr ändern: |
||||
|
||||
CREATE temp TABLE tmp_rpta_column |
||||
( |
||||
uniquename varchar(255) NOT NULL, |
||||
caption varchar(255), |
||||
srcfieldname varchar(255), |
||||
targetfieldname varchar(255), |
||||
column_type integer, |
||||
col_function text, |
||||
is_visible smallint, |
||||
visible_size smallint, |
||||
is_aggregate smallint, |
||||
resultset_id integer, |
||||
sortnr integer, |
||||
description TEXT, |
||||
format_code_uniquename varchar(255), |
||||
format_code_id integer |
||||
); |
||||
|
||||
CREATE temp TABLE tmp_rpta_column_layout |
||||
( |
||||
uniquename varchar(255) NOT NULL, |
||||
caption varchar(255), |
||||
resultset_id integer, |
||||
whereclause text, |
||||
description text |
||||
); |
||||
|
||||
|
||||
<#foreach rpta_column_layout in rpta_column_layouts> |
||||
|
||||
insert into tmp_rpta_column_layout( |
||||
resultset_id, |
||||
uniquename, |
||||
caption, |
||||
whereclause, |
||||
description |
||||
) |
||||
select tid, |
||||
'${rpta_column_layout.uniquename}', |
||||
'${rpta_column_layout.caption}', |
||||
'${rpta_column_layout.whereclause}', |
||||
'${rpta_column_layout.description}' |
||||
FROM rpta_resultset |
||||
where uniquename='${rpta_column_layout.rpta_resultset}'; |
||||
|
||||
</#foreach > |
||||
|
||||
<#assign sortnr=0 /> |
||||
<#foreach column in rpta_columns> |
||||
<#assign sortnr=sortnr +1 /> |
||||
|
||||
INSERT INTO tmp_rpta_column |
||||
(resultset_id, |
||||
uniquename, |
||||
caption, |
||||
srcfieldname, |
||||
targetfieldname, |
||||
column_type, |
||||
col_function, |
||||
is_visible, |
||||
visible_size, |
||||
is_aggregate, |
||||
sortnr, |
||||
description, |
||||
format_code_uniquename |
||||
) |
||||
select R.tid, |
||||
'${column.uniquename}', |
||||
'${column.caption}', |
||||
'${column.srcfieldname}', |
||||
<#if !column.targetfieldname?exists || column.targetfieldname=="">null::varchar <#else>'${column.targetfieldname}' </#if>, |
||||
T.tid as column_type, |
||||
<#if column.col_function?exists>'${column.col_function}'<#else>null::varchar </#if>, |
||||
${column.is_visible}, |
||||
${column.visible_size}, |
||||
${column.is_aggregate}, |
||||
${sortnr*10}, |
||||
<#if column.description?exists>'${column.description}'<#else>null::varchar </#if>, |
||||
<#if column.format_code?exists>'${column.format_code}'<#else>null::varchar </#if> |
||||
FROM rpta_resultset R, rpta_column_type T |
||||
where R.uniquename='${rpta_resultset}' |
||||
and T.uniquename='${column.column_type}'; |
||||
|
||||
</#foreach> |
||||
|
||||
update tmp_rpta_column set format_code_id=C.tid |
||||
from rpta_format_code C |
||||
where C.uniquename=tmp_rpta_column.format_code_uniquename |
||||
and format_code_uniquename is not null; |
||||
|
||||
|
||||
select * into temp tmp_rpta_column2layout |
||||
from rpta_column2layout |
||||
where layout_id in (select L.tid |
||||
from rpta_column_layout L,rpta_resultset R |
||||
where R.tid=L.resultset_id |
||||
and R.uniquename='${rpta_resultset}' |
||||
and L.uniquename in ( |
||||
<#foreach rpta_column_layout in rpta_column_layouts> |
||||
'${rpta_column_layout.uniquename}', |
||||
</#foreach>'xy') |
||||
) |
||||
; |
||||
|
||||
select * into temp tmp_rpta_column_layout_target |
||||
from rpta_column_layout |
||||
where resultset_id in (select tid |
||||
FROM rpta_resultset |
||||
where uniquename='${rpta_resultset}') |
||||
and uniquename in (select uniquename from tmp_rpta_column_layout) |
||||
; |
||||
|
||||
insert into rpta_column_layout |
||||
(uniquename, |
||||
caption, |
||||
resultset_id, |
||||
whereclause, |
||||
description) |
||||
select uniquename, |
||||
caption, |
||||
resultset_id, |
||||
whereclause, |
||||
description |
||||
FROM tmp_rpta_column_layout T |
||||
where 0=(select count(*) from tmp_rpta_column_layout_target T2 |
||||
where T.uniquename=T2.uniquename); |
||||
|
||||
drop table tmp_rpta_column_layout_target; |
||||
|
||||
delete from rpta_column2layout |
||||
where layout_id in (select L.tid |
||||
from rpta_column_layout L,rpta_resultset R |
||||
where R.tid=L.resultset_id |
||||
and R.uniquename='${rpta_resultset}' |
||||
and L.uniquename in ( |
||||
<#foreach rpta_column_layout in rpta_column_layouts> |
||||
'${rpta_column_layout.uniquename}', |
||||
</#foreach>'xy') |
||||
) |
||||
; |
||||
|
||||
select * into temp tmp_rpta_column2 |
||||
from tmp_rpta_column T |
||||
where (resultset_id,uniquename) not in |
||||
(select resultset_id,uniquename from rpta_column); |
||||
|
||||
INSERT INTO rpta_column |
||||
(resultset_id, |
||||
uniquename, |
||||
caption, |
||||
srcfieldname, |
||||
targetfieldname, |
||||
column_type, |
||||
col_function, |
||||
is_aggregate, |
||||
description, |
||||
custom |
||||
) |
||||
select |
||||
resultset_id, |
||||
uniquename, |
||||
caption, |
||||
srcfieldname, |
||||
targetfieldname, |
||||
column_type, |
||||
col_function, |
||||
is_aggregate, |
||||
description, |
||||
0 as custom |
||||
from tmp_rpta_column2; |
||||
|
||||
--evtl. neuen Satz einfügen, dann alle updaten |
||||
|
||||
update rpta_column set ( caption, |
||||
srcfieldname, |
||||
targetfieldname, |
||||
column_type, |
||||
col_function, |
||||
is_aggregate, |
||||
description) |
||||
= (select caption, |
||||
srcfieldname, |
||||
targetfieldname, |
||||
column_type, |
||||
col_function, |
||||
is_aggregate, |
||||
description |
||||
from tmp_rpta_column T |
||||
where T.resultset_id=rpta_column.resultset_id |
||||
and T.uniquename=rpta_column.uniquename) |
||||
where custom=0 |
||||
and (resultset_id,uniquename) in |
||||
(select T.resultset_id,T.uniquename |
||||
from tmp_rpta_column T) |
||||
; |
||||
|
||||
drop table tmp_rpta_column2; |
||||
|
||||
insert into rpta_column2layout(column_id, |
||||
layout_id, |
||||
sortnr, |
||||
is_visible, |
||||
visible_size, |
||||
caption, |
||||
description, |
||||
format_code_id) |
||||
select C.tid as column_id, |
||||
L.tid as layout_id, |
||||
T.sortnr, |
||||
T.is_visible, |
||||
T.visible_size, |
||||
T.caption, |
||||
T.description, |
||||
T.format_code_id |
||||
FROM rpta_column C, rpta_column_layout L, tmp_rpta_column T |
||||
where C.uniquename=T.uniquename |
||||
and C.resultset_id=T.resultset_id |
||||
and L.uniquename in ( |
||||
<#foreach rpta_column_layout in rpta_column_layouts> |
||||
'${rpta_column_layout.uniquename}', |
||||
</#foreach>'xy') |
||||
and L.resultset_id=T.resultset_id |
||||
; |
||||
drop table tmp_rpta_column; |
||||
drop table if exists tmp_rpta_column2; |
||||
drop TABLE tmp_rpta_column_layout; |
||||
|
||||
|
||||
|
||||
|
@ -1,414 +0,0 @@
@@ -1,414 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!-- Created with Jaspersoft Studio version 6.21.3.final using JasperReports Library version 6.21.3-4a3078d20785ebe464f18037d738d12fc98c13cf --> |
||||
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="Leistungen und Studiengänge" language="groovy" pageWidth="842" pageHeight="5595" orientation="Landscape" columnWidth="818" leftMargin="12" rightMargin="12" topMargin="12" bottomMargin="12" uuid="d58082fe-8941-478b-b06e-8d7250737b92"> |
||||
<property name="net.sf.jasperreports.export.xls.create.custom.palette" value="true"/> |
||||
<property name="net.sf.jasperreports.export.xls.detect.cell.type" value="true"/> |
||||
<property name="net.sf.jasperreports.export.xls.one.page.per.sheet" value="true"/> |
||||
<property name="net.sf.jasperreports.export.xls.remove.empty.space.between.columns" value="true"/> |
||||
<property name="net.sf.jasperreports.export.xls.remove.empty.space.between.rows " value="true"/> |
||||
<property name="net.sf.jasperreports.print.create.bookmarks" value="true"/> |
||||
<property name="net.sf.jasperreports.export.xls.exclude.origin.band.1" value="pageHeader"/> |
||||
<property name="net.sf.jasperreports.export.xls.exclude.origin.band.2" value="pageFooter"/> |
||||
<property name="net.sf.jasperreports.export.xlsx.exclude.origin.band.1" value="pageHeader"/> |
||||
<property name="net.sf.jasperreports.export.xlsx.exclude.origin.band.2" value="pageFooter"/> |
||||
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="Prüfungsergebnisse"/> |
||||
<property name="com.jaspersoft.studio.unit." value="pixel"/> |
||||
<property name="com.jaspersoft.studio.unit.pageHeight" value="pixel"/> |
||||
<property name="com.jaspersoft.studio.unit.pageWidth" value="pixel"/> |
||||
<property name="com.jaspersoft.studio.unit.topMargin" value="pixel"/> |
||||
<property name="com.jaspersoft.studio.unit.bottomMargin" value="pixel"/> |
||||
<property name="com.jaspersoft.studio.unit.leftMargin" value="pixel"/> |
||||
<property name="com.jaspersoft.studio.unit.rightMargin" value="pixel"/> |
||||
<property name="com.jaspersoft.studio.unit.columnWidth" value="pixel"/> |
||||
<property name="com.jaspersoft.studio.unit.columnSpacing" value="pixel"/> |
||||
<template><![CDATA["simple_table.jrtx"]]></template> |
||||
<style name="TableRowDetail" mode="Opaque" forecolor="#000000" backcolor="#FFFFFF" hTextAlign="Right" vTextAlign="Middle" isBlankWhenNull="true" fontName="Liberation Sans" fontSize="8" isBold="false"> |
||||
<box rightPadding="2"> |
||||
<pen lineColor="#000000"/> |
||||
<topPen lineWidth="0.5" lineColor="#030303"/> |
||||
<leftPen lineWidth="0.5" lineColor="#030303"/> |
||||
<bottomPen lineWidth="0.5" lineColor="#030303"/> |
||||
<rightPen lineWidth="0.5" lineColor="#030303"/> |
||||
</box> |
||||
<paragraph leftIndent="2" rightIndent="1" spacingBefore="0" spacingAfter="0"/> |
||||
<conditionalStyle> |
||||
<conditionExpression><![CDATA[Boolean.valueOf( $V{PAGE_COUNT} % 2 == 1 )]]></conditionExpression> |
||||
<style mode="Opaque" forecolor="#000000" backcolor="#E3E8EB"/> |
||||
</conditionalStyle> |
||||
</style> |
||||
<queryString language="xPath"> |
||||
<![CDATA[/ergebnisse/ergebnis/ergebniselement[@ordnr='0']/sqlerg/row]]> |
||||
</queryString> |
||||
<field name="REPORT_HEADING_INSTITUTION" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/generalinfo/REPORT_HEADING_INSTITUTION]]></fieldDescription> |
||||
</field> |
||||
<field name="REPORT_HEADING_URL" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/generalinfo/REPORT_HEADING_URL]]></fieldDescription> |
||||
</field> |
||||
<field name="REPORT_LOGO_FILE" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/generalinfo/REPORT_LOGO_FILE]]></fieldDescription> |
||||
</field> |
||||
<field name="REPORT_HEADING_ADRESS" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/generalinfo/REPORT_HEADING_ADRESS]]></fieldDescription> |
||||
</field> |
||||
<field name="REPORT_EMAIL" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/generalinfo/REPORT_EMAIL]]></fieldDescription> |
||||
</field> |
||||
<field name="REPORT_DOCUMENTATION_URL" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/generalinfo/REPORT_DOCUMENTATION_URL]]></fieldDescription> |
||||
</field> |
||||
<field name="Berichtsname" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis[ @ordnr='0']/maskenname]]></fieldDescription> |
||||
</field> |
||||
<field name="Erlaeuterung" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis[ @ordnr='0']/explanation]]></fieldDescription> |
||||
</field> |
||||
<field name="Hinweis" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis[ @ordnr='0']/hinweis]]></fieldDescription> |
||||
</field> |
||||
<field name="Fach" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[col[@id="0" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="Abschluss" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[col[@id="1" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="Semester der Prüfung (Schlüssel)" class="java.lang.Integer"> |
||||
<fieldDescription><![CDATA[col[@id="2" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="Semester der Prüfung" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[col[@id="3" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="pnr" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[col[@id="4" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="Name der Prüfung" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[col[@id="5" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="Teilnehmer" class="java.lang.Integer"> |
||||
<fieldDescription><![CDATA[col[@id="6" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="Durchschnittsnote *" class="java.lang.Double"> |
||||
<fieldDescription><![CDATA[col[@id="7" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="Durchfallquote in % *" class="java.lang.Double"> |
||||
<fieldDescription><![CDATA[col[@id="8" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="Nicht erschienen" class="java.lang.Integer"> |
||||
<fieldDescription><![CDATA[col[@id="9" and wert!=""]/wert]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Seit Semester_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="Seit Semester"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Seit Semester_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="Seit Semester"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Bis Semester_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="Bis Semester"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Bis Semester_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="Bis Semester"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Semestertyp_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="Semestertyp"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Semestertyp_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="Semestertyp"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Studiengang_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="Studiengang"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Studiengang_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="Studiengang"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Fächer_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="Fächer"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Fächer_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="Fächer"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Abschluss_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="Abschluss"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Abschluss_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="Abschluss"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_bis Fachsemester_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="bis Fachsemester"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_bis Fachsemester_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="bis Fachsemester"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Spaltenlayout_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="Spaltenlayout"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Spaltenlayout_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="Spaltenlayout"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Spalten_label" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/completefields/feld [@varname="Spalten"]/@varname]]></fieldDescription> |
||||
</field> |
||||
<field name="legende_Spalten_value" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis/felder/feld [@varname="Spalten"]/value_caption]]></fieldDescription> |
||||
</field> |
||||
<field name="standdatum" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/ergebnis[ @ordnr='0']/stand]]></fieldDescription> |
||||
</field> |
||||
<field name="user" class="java.lang.String"> |
||||
<fieldDescription><![CDATA[/ergebnisse/user]]></fieldDescription> |
||||
</field> |
||||
<variable name="tabellennr" class="java.lang.Integer"> |
||||
<variableExpression><![CDATA[0]]></variableExpression> |
||||
</variable> |
||||
<variable name="MinSemester" class="java.lang.Integer" resetType="Group" resetGroup="Abschluss" calculation="Lowest"> |
||||
<variableExpression><![CDATA[$F{Semester der Prüfung (Schlüssel)}]]></variableExpression> |
||||
</variable> |
||||
<variable name="MaxSemester" class="java.lang.Integer" resetType="Group" resetGroup="Abschluss" calculation="Highest"> |
||||
<variableExpression><![CDATA[$F{Semester der Prüfung (Schlüssel)}]]></variableExpression> |
||||
</variable> |
||||
<group name="tabellennr"> |
||||
<groupExpression><![CDATA[$V{tabellennr}]]></groupExpression> |
||||
</group> |
||||
<group name="Fach"> |
||||
<groupExpression><![CDATA[$F{Fach}]]></groupExpression> |
||||
</group> |
||||
<group name="Abschluss" isStartNewPage="true"> |
||||
<groupExpression><![CDATA[$F{Abschluss}]]></groupExpression> |
||||
<groupHeader> |
||||
<band height="60"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="pixel"/> |
||||
<textField> |
||||
<reportElement style="LegendLabel" x="0" y="30" width="818" height="20" uuid="b5c9a9db-b01b-48ab-9dca-3478eae8829e"/> |
||||
<textElement verticalAlignment="Bottom"> |
||||
<font isBold="true"/> |
||||
</textElement> |
||||
<textFieldExpression><![CDATA["Filterkriterien: "]]></textFieldExpression> |
||||
</textField> |
||||
<textField textAdjust="StretchHeight"> |
||||
<reportElement style="LegendContent" x="0" y="50" width="818" height="10" isPrintWhenDetailOverflows="true" backcolor="#FFFFFF" uuid="0d6743c3-cd7a-471f-baca-226acf0a9dbc"/> |
||||
<box topPadding="10" leftPadding="2" bottomPadding="10" rightPadding="2"/> |
||||
<textFieldExpression><![CDATA[""+(($F{legende_Seit Semester_value}==null || $F{legende_Seit Semester_value}=="")?"":($F{legende_Seit Semester_label}+": "+$F{legende_Seit Semester_value}+"; ")) |
||||
+(($F{legende_Bis Semester_value}==null || $F{legende_Bis Semester_value}=="")?"":($F{legende_Bis Semester_label}+": "+$F{legende_Bis Semester_value}+"; ")) |
||||
+(($F{legende_Semestertyp_value}==null || $F{legende_Semestertyp_value}=="")?"":($F{legende_Semestertyp_label}+": "+$F{legende_Semestertyp_value}+"; ")) |
||||
+(($F{legende_Spaltenlayout_value}==null || $F{legende_Spaltenlayout_value}=="")?"":($F{legende_Spaltenlayout_label}+": "+$F{legende_Spaltenlayout_value}+"; ")) |
||||
+"Datenstand: "+ $F{standdatum} + "; " + "Erstellt: "+ DATEFORMAT( TODAY(), "dd.MM.YYYY")]]></textFieldExpression> |
||||
</textField> |
||||
<textField> |
||||
<reportElement x="0" y="0" width="818" height="30" uuid="cd4ea430-054a-4958-a410-35ce51cec7d5"> |
||||
<propertyExpression name="net.sf.jasperreports.export.xls.sheet.name"><![CDATA[$F{Fach}+" "+$F{Abschluss}]]></propertyExpression> |
||||
</reportElement> |
||||
<textElement textAlignment="Left" verticalAlignment="Middle"> |
||||
<font size="14" isBold="true"/> |
||||
</textElement> |
||||
<textFieldExpression><![CDATA[$F{Fach}+" "+$F{Abschluss}]]></textFieldExpression> |
||||
</textField> |
||||
</band> |
||||
</groupHeader> |
||||
<groupFooter> |
||||
<band height="55"> |
||||
<staticText> |
||||
<reportElement x="0" y="15" width="818" height="20" uuid="63ced6b8-8393-407e-aebf-76351478ff2c"> |
||||
<property name="com.jaspersoft.studio.unit.y" value="px"/> |
||||
</reportElement> |
||||
<text><![CDATA[* Bei weniger als 5 Prüfungsteilnehmern werden keine Durchschnittsnoten oder Durchfallquoten ausgewiesen.]]></text> |
||||
</staticText> |
||||
<staticText> |
||||
<reportElement x="0" y="35" width="818" height="20" uuid="30399079-73f3-4bf2-8a55-f7f313aab901"/> |
||||
<text><![CDATA[Die Spalte "Nicht erschienen" dient zur ergänzenden Information, d.h. die hier angegebenen "Nicht erschienen" sind in den Spalten "Teilnehmer", "Durchschnittsnote" und "Durchfallquote in %" enthalten.]]></text> |
||||
</staticText> |
||||
</band> |
||||
</groupFooter> |
||||
</group> |
||||
<group name="Semester"> |
||||
<groupExpression><![CDATA[$F{Semester der Prüfung (Schlüssel)}]]></groupExpression> |
||||
<groupHeader> |
||||
<band height="45"> |
||||
<staticText> |
||||
<reportElement positionType="Float" x="0" y="30" width="51" height="15" uuid="b2beb035-a6bc-40a4-844d-d9fe2f5891a4"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="1.0"/> |
||||
<leftPen lineWidth="1.0"/> |
||||
<bottomPen lineWidth="1.0"/> |
||||
<rightPen lineWidth="1.0"/> |
||||
</box> |
||||
<textElement textAlignment="Center" verticalAlignment="Middle"> |
||||
<font isBold="true"/> |
||||
</textElement> |
||||
<text><![CDATA[pnr]]></text> |
||||
</staticText> |
||||
<staticText> |
||||
<reportElement positionType="Float" x="435" y="30" width="128" height="15" uuid="b8f5202b-2d0a-427f-81de-c923cbe2f094"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="1.0"/> |
||||
<leftPen lineWidth="1.0"/> |
||||
<bottomPen lineWidth="1.0"/> |
||||
<rightPen lineWidth="1.0"/> |
||||
</box> |
||||
<textElement textAlignment="Center" verticalAlignment="Middle"> |
||||
<font isBold="true"/> |
||||
</textElement> |
||||
<text><![CDATA[Durchschnittsnote *]]></text> |
||||
</staticText> |
||||
<staticText> |
||||
<reportElement positionType="Float" x="358" y="30" width="77" height="15" uuid="7e3c57b7-1ed1-470e-92a4-fe799dae0d9f"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="1.0"/> |
||||
<leftPen lineWidth="1.0"/> |
||||
<bottomPen lineWidth="1.0"/> |
||||
<rightPen lineWidth="1.0"/> |
||||
</box> |
||||
<textElement textAlignment="Center" verticalAlignment="Middle"> |
||||
<font isBold="true"/> |
||||
</textElement> |
||||
<text><![CDATA[Teilnehmer]]></text> |
||||
</staticText> |
||||
<staticText> |
||||
<reportElement positionType="Float" x="691" y="30" width="127" height="15" uuid="c77831d1-4cc7-4401-aef8-585d8a64e7a9"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="1.0"/> |
||||
<leftPen lineWidth="1.0"/> |
||||
<bottomPen lineWidth="1.0"/> |
||||
<rightPen lineWidth="1.0"/> |
||||
</box> |
||||
<textElement textAlignment="Center" verticalAlignment="Middle"> |
||||
<font isBold="true"/> |
||||
</textElement> |
||||
<text><![CDATA[Nicht erschienen]]></text> |
||||
</staticText> |
||||
<staticText> |
||||
<reportElement positionType="Float" x="51" y="30" width="307" height="15" uuid="1c8d7170-556e-4e09-a555-94f72f81509e"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="1.0"/> |
||||
<leftPen lineWidth="1.0"/> |
||||
<bottomPen lineWidth="1.0"/> |
||||
<rightPen lineWidth="1.0"/> |
||||
</box> |
||||
<textElement textAlignment="Center" verticalAlignment="Middle"> |
||||
<font isBold="true"/> |
||||
</textElement> |
||||
<text><![CDATA[Name der Prüfung]]></text> |
||||
</staticText> |
||||
<staticText> |
||||
<reportElement positionType="Float" x="563" y="30" width="128" height="15" uuid="8cd3f230-31bf-4855-8009-22e8e5fcc20b"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="1.0"/> |
||||
<leftPen lineWidth="1.0"/> |
||||
<bottomPen lineWidth="1.0"/> |
||||
<rightPen lineWidth="1.0"/> |
||||
</box> |
||||
<textElement textAlignment="Center" verticalAlignment="Middle"> |
||||
<font isBold="true"/> |
||||
</textElement> |
||||
<text><![CDATA[Durchfallquote in % *]]></text> |
||||
</staticText> |
||||
<textField> |
||||
<reportElement x="0" y="0" width="818" height="30" uuid="dde46984-9757-4065-970a-042ac9e725c4"/> |
||||
<textElement textAlignment="Left" verticalAlignment="Middle"> |
||||
<font size="14" isBold="true"/> |
||||
</textElement> |
||||
<textFieldExpression><![CDATA["Prüfungen nach dem "+$F{Semester der Prüfung}]]></textFieldExpression> |
||||
</textField> |
||||
</band> |
||||
</groupHeader> |
||||
<groupFooter> |
||||
<band height="50"/> |
||||
</groupFooter> |
||||
</group> |
||||
<detail> |
||||
<band height="15" splitType="Stretch"> |
||||
<property name="com.jaspersoft.studio.layout" value="com.jaspersoft.studio.editor.layout.spreadsheet.SpreadsheetLayout"/> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
<textField textAdjust="StretchHeight" isBlankWhenNull="true"> |
||||
<reportElement stretchType="ContainerHeight" x="0" y="0" width="51" height="15" uuid="ab1dcbe4-f124-430c-9831-e3a1aba7e82d"> |
||||
<property name="com.jaspersoft.studio.unit.x" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="0.5"/> |
||||
<leftPen lineWidth="0.5"/> |
||||
<bottomPen lineWidth="0.5"/> |
||||
<rightPen lineWidth="0.5"/> |
||||
</box> |
||||
<textElement textAlignment="Left" verticalAlignment="Middle"/> |
||||
<textFieldExpression><![CDATA[$F{pnr}]]></textFieldExpression> |
||||
<patternExpression><![CDATA[]]></patternExpression> |
||||
</textField> |
||||
<textField textAdjust="StretchHeight" isBlankWhenNull="true"> |
||||
<reportElement stretchType="ContainerHeight" x="51" y="0" width="307" height="15" uuid="e0421889-bb9a-4324-bcf3-edc738d36828"> |
||||
<property name="com.jaspersoft.studio.unit.x" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="0.5"/> |
||||
<leftPen lineWidth="0.5"/> |
||||
<bottomPen lineWidth="0.5"/> |
||||
<rightPen lineWidth="0.5"/> |
||||
</box> |
||||
<textElement textAlignment="Left" verticalAlignment="Middle"/> |
||||
<textFieldExpression><![CDATA[$F{Name der Prüfung}]]></textFieldExpression> |
||||
<patternExpression><![CDATA[]]></patternExpression> |
||||
</textField> |
||||
<textField textAdjust="StretchHeight" isBlankWhenNull="true"> |
||||
<reportElement stretchType="ContainerHeight" x="358" y="0" width="77" height="15" uuid="6fcce53f-6e5b-43f5-bee1-74ca78fda172"/> |
||||
<box> |
||||
<topPen lineWidth="0.5"/> |
||||
<leftPen lineWidth="0.5"/> |
||||
<bottomPen lineWidth="0.5"/> |
||||
<rightPen lineWidth="0.5"/> |
||||
</box> |
||||
<textElement textAlignment="Right" verticalAlignment="Middle"/> |
||||
<textFieldExpression><![CDATA[$F{Teilnehmer}]]></textFieldExpression> |
||||
<patternExpression><![CDATA["#,##0"]]></patternExpression> |
||||
</textField> |
||||
<textField textAdjust="StretchHeight" isBlankWhenNull="true"> |
||||
<reportElement stretchType="ContainerHeight" x="435" y="0" width="128" height="15" uuid="74f016aa-b70a-44c5-97c7-4a2c458ad6d7"/> |
||||
<box> |
||||
<topPen lineWidth="0.5"/> |
||||
<leftPen lineWidth="0.5"/> |
||||
<bottomPen lineWidth="0.5"/> |
||||
<rightPen lineWidth="0.5"/> |
||||
</box> |
||||
<textElement textAlignment="Right" verticalAlignment="Middle"/> |
||||
<textFieldExpression><![CDATA[$F{Durchschnittsnote *}]]></textFieldExpression> |
||||
<patternExpression><![CDATA["#,##0.00;-#,##0.00"]]></patternExpression> |
||||
</textField> |
||||
<textField textAdjust="StretchHeight" isBlankWhenNull="true"> |
||||
<reportElement stretchType="ContainerHeight" x="563" y="0" width="128" height="15" uuid="e02a56f9-bdf2-4ca3-8933-73cded7631de"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="0.5"/> |
||||
<leftPen lineWidth="0.5"/> |
||||
<bottomPen lineWidth="0.5"/> |
||||
<rightPen lineWidth="0.5"/> |
||||
</box> |
||||
<textElement textAlignment="Right" verticalAlignment="Middle"/> |
||||
<textFieldExpression><![CDATA[$F{Durchfallquote in % *}]]></textFieldExpression> |
||||
<patternExpression><![CDATA["#,##0.00;-#,##0.00"]]></patternExpression> |
||||
</textField> |
||||
<textField textAdjust="StretchHeight" isBlankWhenNull="true"> |
||||
<reportElement stretchType="ContainerHeight" x="691" y="0" width="127" height="15" uuid="39488aeb-b9b9-4656-8e15-f7f00b5f02ea"> |
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/> |
||||
</reportElement> |
||||
<box> |
||||
<topPen lineWidth="0.5"/> |
||||
<leftPen lineWidth="0.5"/> |
||||
<bottomPen lineWidth="0.5"/> |
||||
<rightPen lineWidth="0.5"/> |
||||
</box> |
||||
<textElement textAlignment="Right" verticalAlignment="Middle"/> |
||||
<textFieldExpression><![CDATA[$F{Nicht erschienen}]]></textFieldExpression> |
||||
<patternExpression><![CDATA["#,##0"]]></patternExpression> |
||||
</textField> |
||||
</band> |
||||
</detail> |
||||
</jasperReport> |
@ -1,320 +0,0 @@
@@ -1,320 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<xsl:stylesheet version="1.0" |
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> |
||||
<xsl:import href="pageComponents_html.xsl" /> |
||||
<!--In diesem Stylesheet können Sie individuelle templates unterbringen, |
||||
die in ihrer Präzedenz das normale Stylesheet |
||||
pageComponents_html.xsl überragt. --> |
||||
<xsl:import href="pageComponents_html_final.xsl" /> |
||||
<xsl:import href="resultset_html.xsl" /> |
||||
<xsl:import href="interLinks_html.xsl" /> |
||||
<xsl:decimal-format name="German" grouping-separator="." NaN="" zero-digit ="0" decimal-separator="," /> |
||||
|
||||
<xml:output method="application/vnd.ms-excel" /> |
||||
<xsl:template match="/"> |
||||
<xsl:call-template name="xlsworkbook"/> |
||||
</xsl:template> |
||||
<xsl:template name="xlsworkbook"> |
||||
<xls_workbook vorlage=""> |
||||
|
||||
<!-- define the xl styles--> |
||||
<xsl:call-template name="xls_Styles" /> |
||||
<!--Seitenformat--> |
||||
<xsl:call-template name="xls_PageFormat" /> |
||||
<!-- define the xl data for the first sheet --> |
||||
<xsl:for-each select="ergebnisse/ergebnis/ergebniselement"> |
||||
<xsl:choose> |
||||
<xsl:when test="@typ='image'"> |
||||
<xsl:text> |
||||
|
||||
</xsl:text> |
||||
</xsl:when> |
||||
<xsl:when test="@typ='tabelle'"> |
||||
|
||||
<xsl:call-template name="xslsheet"/> |
||||
|
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
</xsl:for-each> |
||||
|
||||
</xls_workbook> |
||||
</xsl:template> |
||||
|
||||
<xsl:template name="xslsheet"> |
||||
<xls_sheet name="{substring-after(substring-after(../felder/feld[ @varname='Studiengang']/value,'_'),'_')}"> |
||||
|
||||
<xls_row height="600"> |
||||
<xls_cell style="maskenname" width="10000"><xsl:value-of select="../maskenname" /></xls_cell> |
||||
</xls_row> |
||||
|
||||
|
||||
<xsl:call-template name="legende_xl"> </xsl:call-template> |
||||
<xls_row height="1000"><xls_cell></xls_cell></xls_row> |
||||
|
||||
<xsl:call-template name="xlsheader"/> |
||||
|
||||
<xsl:call-template name="xslrows"/> |
||||
</xls_sheet> |
||||
</xsl:template> |
||||
|
||||
<xsl:template name="xslrows"> |
||||
<xsl:for-each select="sqlerg/row"> |
||||
<xsl:call-template name="xslsinglerow"/> |
||||
</xsl:for-each> |
||||
</xsl:template> |
||||
|
||||
|
||||
<xsl:template name="xslsinglerow"> |
||||
<xsl:variable name="erglevelmax"> |
||||
<xsl:if test="count(../../sqlerg/row/col [ f_name = 'ebene' ]) > 0"> |
||||
<xsl:choose> |
||||
<xsl:when test="count(../../sqlerg/row/col [ f_name = 'ebene' ] /wert [ . = '4']) > 0"> |
||||
<xsl:text>4</xsl:text> |
||||
</xsl:when> |
||||
<xsl:when test="count(../../sqlerg/row/col [ f_name = 'ebene' ] /wert [ . = '3']) > 0"> |
||||
<xsl:text>3</xsl:text> |
||||
</xsl:when> |
||||
<xsl:when test="count(../../sqlerg/row/col [ f_name = 'ebene' ] /wert [ . = '2']) > 0"> |
||||
<xsl:text>2</xsl:text> |
||||
</xsl:when> |
||||
<xsl:when test="count(../../sqlerg/row/col [ f_name = 'ebene' ] /wert [ . = '1']) > 0"> |
||||
<xsl:text>1</xsl:text> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<xsl:text>5</xsl:text> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
</xsl:if> |
||||
</xsl:variable> |
||||
<!--Hinweis: Wenn für die row eine Ebene angegeben ist, wird die Darstellung vom Server definiert |
||||
Style der Zelle (z.B. body_dec) wird ignoriert, Attribut numeric ist wichtig für Darstellung, |
||||
per datatype decimal wird Nachkommastellenanzeige eingestellt--> |
||||
<xls_row> |
||||
<!-- DQ 14.12.07 In Zukunft noch erglevelmax auswerten when$erglevelmax = 5 and --> |
||||
<xsl:if test="count(col[ f_name = 'ebene' ]) > 0"> |
||||
<xsl:attribute name="ebene"><xsl:value-of select="6-$erglevelmax+number(col[ f_name = 'ebene' ]/wert)" /></xsl:attribute> |
||||
</xsl:if> |
||||
<xsl:if test="@issumme='true'"> |
||||
<xsl:attribute name="ebene"><xsl:value-of select="'summe'" /></xsl:attribute> |
||||
</xsl:if> |
||||
<!--MB keine Zelle für Linkspalten, 4/2010 keine versteckten Spalten--> |
||||
<xsl:for-each select="col[(starts-with(f_name,'hidden'))=false and starts-with(f_name,'next') = false ]"> |
||||
<xls_cell> |
||||
|
||||
<xsl:variable name="checkname"><xsl:value-of select="concat('hidden',f_name,'dp')"/></xsl:variable> |
||||
<xsl:choose> <!--MB wenn es eine versteckte hidden_decimalpl gibt auswerten--> |
||||
|
||||
<!--MB 4/2010 wenn decimalzahl aber decimalplaces=0 als nicht als decimal sondern integer ausgeben s.u. --> |
||||
<!-- typ 8 timestamp nicht als Decimalzahl sondern Text ausgeben --> |
||||
<xsl:when test="(@typ='2' or @typ='3') and count(../col[f_name=$checkname]) = 0"> <!-- DecimalFormat --> |
||||
<xsl:attribute name="style">body_dec</xsl:attribute> |
||||
<xsl:attribute name="numeric">true</xsl:attribute> |
||||
<xsl:attribute name="datatype">decimal</xsl:attribute> |
||||
<xsl:choose> |
||||
<xsl:when test="wert != ''"> |
||||
<xsl:value-of select="wert" /> |
||||
<!--<xsl:value-of select="format-number(wert,'###.###.###.###.##0,00','German')" />--> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<xsl:value-of select="' '" /> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
</xsl:when> |
||||
<xsl:when test="(@typ='2' or @typ='3') and count(../col[f_name=$checkname]) >0 and ../col[f_name=$checkname]/wert!='0'"> <!-- DecimalFormat --> |
||||
<xsl:attribute name="style">body_dec</xsl:attribute> <!-- row.ebene überlagert ggfs! --> |
||||
<xsl:attribute name="numeric">true</xsl:attribute> |
||||
<xsl:attribute name="datatype">decimal</xsl:attribute> |
||||
<!--<xsl:value-of select="wert" />--> |
||||
<xsl:choose> |
||||
<xsl:when test="wert != ''"> |
||||
<xsl:value-of select="wert" /> |
||||
<!--<xsl:value-of select="format-number(wert,'###.###.###.###.##0,00','German')" />--> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<xsl:value-of select="' '" /> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
|
||||
</xsl:when> |
||||
|
||||
<xsl:when test="../col[f_name=$checkname]/wert='0' or @typ='4' or @typ='5'"> <!-- MB: Integer/ auch typ 5 Smallint --> |
||||
<xsl:attribute name="style">body_int</xsl:attribute> <!-- row.ebene überlagert ggfs! --> |
||||
<xsl:attribute name= "numeric">true</xsl:attribute> |
||||
<xsl:attribute name="datatype">integer</xsl:attribute> |
||||
<!--<xsl:value-of select="wert" />--> |
||||
<xsl:choose> |
||||
<xsl:when test="wert != ''"> |
||||
<!-- MB formatierung format-number(wert,'###.###.###.###.###','German') raus, macht Excel selbst --> |
||||
<xsl:value-of select="wert " /> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<xsl:value-of select="' '" /> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
|
||||
</xsl:when> |
||||
<!-- deutsche datumsfelder können von POI noch nicht richtig verarbeitet werden |
||||
<xsl:when test="@typ='91'"> |
||||
<xsl:attribute name="style">body_date</xsl:attribute> |
||||
<xsl:attribute name="datatype">date</xsl:attribute> |
||||
<xsl:value-of select="wert " /> |
||||
</xsl:when> |
||||
--> |
||||
<xsl:otherwise> |
||||
<!--Typ=1 ist string und wird defaultmäßig behandelt --> |
||||
<xsl:attribute name="style">body</xsl:attribute> <!-- row.ebene überlagert ggfs! --> |
||||
<xsl:call-template name="field_type" /> |
||||
<!-- MB 8/2015 da next... eh nicht angezeigt werden kann auf resultsetLink verzichtet werden, |
||||
so kommen bei Usern die emailadressen als reiner text raus |
||||
|
||||
<xsl:variable name="zs"> |
||||
<xsl:call-template name="field_value"> |
||||
</xsl:call-template> |
||||
</xsl:variable> |
||||
<xsl:call-template name="resultsetLink"> |
||||
<xsl:with-param name="zs2" select="$zs" /> |
||||
</xsl:call-template> |
||||
--> |
||||
<xsl:call-template name="field_value"/> |
||||
<!-- MB 5.5.08 ablegen in zs3 und aufruf von get_val_or_nbsp nicht nötig--> |
||||
|
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
|
||||
</xls_cell> |
||||
|
||||
</xsl:for-each><!--cell--> |
||||
|
||||
</xls_row> |
||||
</xsl:template> |
||||
|
||||
<xsl:template name="xlsheader"> |
||||
<xsl:choose> |
||||
<xsl:when test="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@hasAggregationHeaders='true'"> |
||||
<xsl:variable name="nr_rows"><xsl:value-of select="count(sqlerg/aggregationHeaders/tr)" /></xsl:variable> |
||||
<xsl:for-each select="sqlerg/aggregationHeaders/tr"> |
||||
<!-- AK 20.08.2014 Der Header bekommt eine höhere Zeile--> |
||||
<xls_row height="600"> |
||||
<xsl:if test="position()=1"> |
||||
<xsl:attribute name="repeating"><xsl:value-of select="$nr_rows" /></xsl:attribute> |
||||
</xsl:if> |
||||
<xsl:for-each select="th"> |
||||
<xsl:if test="starts-with(@f_name,'next') = false and starts-with(@f_name,'hidden') = false"> |
||||
<xls_cell style="heading"> |
||||
<xsl:attribute name="width"><xsl:value-of select="@width * 280" /> </xsl:attribute> |
||||
<xsl:if test="@colspan != ''"> |
||||
<xsl:attribute name="colspan"><xsl:value-of select="@colspan" /> </xsl:attribute> |
||||
</xsl:if> |
||||
<xsl:if test="@rowspan != ''"> |
||||
<xsl:attribute name="rowspan"><xsl:value-of select="@rowspan" /> </xsl:attribute> |
||||
</xsl:if> |
||||
<xsl:call-template name="removeBackslashN" > |
||||
<xsl:with-param name="derwert"><xsl:value-of select="." /></xsl:with-param> |
||||
<xsl:with-param name="format"><xsl:value-of select="'xls'" /></xsl:with-param> |
||||
</xsl:call-template> |
||||
</xls_cell> |
||||
</xsl:if> |
||||
</xsl:for-each> |
||||
</xls_row> |
||||
</xsl:for-each> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<!-- alt Normale headers --> |
||||
<xls_row repeating="true"> |
||||
<!--MB 04/2010 versteckte Spalten nicht kein Header für Linkspalten--> --> |
||||
<xsl:for-each select="sqlerg/headers/header[(starts-with(f_name,'hidden'))=false and starts-with(f_name,'next') = false ]"> |
||||
<xsl:call-template name="xlssingleheader"> |
||||
<xsl:with-param name="derwert" select="wert" /> |
||||
</xsl:call-template> |
||||
</xsl:for-each> |
||||
</xls_row> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
</xsl:template> |
||||
<xsl:template name="xlssingleheader"> |
||||
<xsl:param name="derwert" /> |
||||
<xls_cell style="heading"> |
||||
<xsl:attribute name="width"><xsl:value-of select="@width * 280" /> </xsl:attribute> |
||||
<!--max. 2 Umbrüche pro Zelle --> |
||||
<!--<xsl:value-of select="string($derwert) "/>--> |
||||
|
||||
<xsl:variable name="header1"> |
||||
<xsl:choose> |
||||
<xsl:when test="(contains(string($derwert),'\n'))"> |
||||
<xsl:value-of select="substring-before($derwert,'\n') "/> |
||||
<xsl:text> |
||||
</xsl:text> |
||||
<xsl:value-of select="substring-after($derwert,'\n') "/> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<xsl:copy-of select="$derwert" /> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
</xsl:variable> |
||||
<xsl:variable name="header2"> |
||||
<xsl:choose> |
||||
<xsl:when test="(contains(string($header1),'\n'))"> |
||||
<xsl:value-of select="substring-before($header1,'\n') "/> |
||||
<xsl:text> |
||||
</xsl:text> |
||||
<xsl:value-of select="substring-after($header1,'\n') "/> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<xsl:value-of select="$header1" /> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
</xsl:variable> |
||||
<xsl:choose> |
||||
<xsl:when test="(contains(string($header2),'\000'))"> |
||||
<xsl:value-of select="substring-before($header2,'\000') "/> |
||||
<xsl:text> |
||||
</xsl:text> |
||||
<xsl:value-of select="substring-after($header2,'\000') "/> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<xsl:value-of select="$header2" /> |
||||
</xsl:otherwise> |
||||
</xsl:choose> |
||||
|
||||
</xls_cell> |
||||
</xsl:template> |
||||
<xsl:template name="legende_xl"> |
||||
<xls_row height="1000"> |
||||
<xls_cell style="legende"> |
||||
<xsl:for-each select="../felder/feld"> |
||||
<xsl:if test="(value !='' or sicht/@isFirstInGroup='false' or @isstandtoday='false') and @varname != 'sort' and @varname != 'maxoffset' and @varname!='##line##' "> |
||||
<xsl:choose> |
||||
<xsl:when test="string-length(caption_short) > 0 and caption_short != 'null'" > |
||||
<![CDATA[]]><xsl:value-of select="normalize-space(string(caption_short))" /><![CDATA[]]> |
||||
</xsl:when> |
||||
<xsl:otherwise> |
||||
<![CDATA[]]><xsl:value-of select="normalize-space(string(@varname))" /><![CDATA[]]> |
||||
</xsl:otherwise> |
||||
</xsl:choose><xsl:text>: </xsl:text> |
||||
<![CDATA[]]><xsl:value-of select="normalize-space(string(value_caption))" /><![CDATA[]]> |
||||
<!-- bei Mehrfachauswahl keine Einschränkung auf 50 Zeichen sinnvoll |
||||
<xsl:if test="string-length(wert/caption) < 50"> |
||||
<![CDATA[]]><xsl:value-of select="normalize-space(string(value_caption))" /><![CDATA[]]> |
||||
</xsl:if> |
||||
<xsl:if test="string-length(wert/caption) > 49"> |
||||
<![CDATA[]]><xsl:value-of select="substring(value_caption,0,50)" /><![CDATA[]]><xsl:text>...</xsl:text> |
||||
</xsl:if>--> |
||||
<xsl:if test="sicht!=''"> |
||||
<![CDATA[]]><xsl:text> (</xsl:text><xsl:value-of select="sicht" /> |
||||
<xsl:if test="@stand!=''"><xsl:text> - Stand:</xsl:text><xsl:value-of select="@stand"/></xsl:if> |
||||
<xsl:text>)</xsl:text><![CDATA[]]> |
||||
</xsl:if> |
||||
<xsl:text>; </xsl:text> |
||||
</xsl:if> |
||||
</xsl:for-each> |
||||
<xsl:text>User: </xsl:text><xsl:value-of select="/ergebnisse/user" /> |
||||
<xsl:text>; Stand: </xsl:text><xsl:value-of select="../stand" /> |
||||
</xls_cell> |
||||
</xls_row> |
||||
<xsl:if test="../hinweis!=''"> |
||||
<xls_row height="1000"><xls_cell style="legende"><xsl:value-of select="../hinweis"/></xls_cell></xls_row> |
||||
</xsl:if> |
||||
</xsl:template> |
||||
</xsl:stylesheet> |
Loading…
Reference in new issue