Compare commits
No commits in common. 'master' and 'makro_datasrc' have entirely different histories.
master
...
makro_data
47 changed files with 3165 additions and 9188 deletions
@ -1,20 +1 @@ |
|||||||
superx/WEB-INF/conf/edustore/db/module/viz/ |
/build/ |
||||||
# module generation artifacts for module viz |
|
||||||
src/edustore/edustore_viz.xml |
|
||||||
superx/WEB-INF/viz_dbforms-config_ids.xml |
|
||||||
superx/WEB-INF/viz_dbforms-config_pg.xml |
|
||||||
# Use wildcards as well |
|
||||||
*~ |
|
||||||
*.swp |
|
||||||
*ENV |
|
||||||
*.old* |
|
||||||
*tmp* |
|
||||||
*.log |
|
||||||
*.log.* |
|
||||||
*.err |
|
||||||
*.class |
|
||||||
*.zip |
|
||||||
*.tar* |
|
||||||
*.tgz |
|
||||||
*.jasper |
|
||||||
|
|
||||||
|
@ -1,6 +1,8 @@ |
|||||||
44000^Benutzer/in^50^0^0^150^200^1^integer^200^0^1^<<SQL>> select tid,nvl(name,benutzer) from userinfo order by 2;^hidden^^ |
44000^Benutzer/in^50^0^0^150^200^1^integer^200^0^1^<<SQL>> select tid,nvl(name,benutzer) from userinfo order by 2;^hidden^^ |
||||||
|
44001^Ausgabetabelle^10^0^0^150^80^1^integer^200^0^13^<<SQL>> select tid,name from qa_resultset where 1=1 /* and systeminfo_id=<<Komponente>> */ order by 2;^^^ |
||||||
44002^Eigenschaften verwalten^100^0^0^150^300^1^char^30^0^18^^^<<SQL>> select '../edit/viz/viz_property_list.jsp' from xdummy;^ |
44002^Eigenschaften verwalten^100^0^0^150^300^1^char^30^0^18^^^<<SQL>> select '../edit/viz/viz_property_list.jsp' from xdummy;^ |
||||||
44003^Name^20^0^0^150^150^1^sql^50^0^0^^^^ |
44003^Name^20^0^0^150^150^1^sql^50^0^0^^^^ |
||||||
44004^Komponente^1^0^0^150^200^1^integer^200^0^13^<<SQL>> select tid,name from systeminfo order by 2;^ ^^ |
44004^Komponente^1^0^0^150^200^1^integer^200^0^13^<<SQL>> select tid,name from systeminfo order by 2;^ ^^ |
||||||
44005^Eigenschaftsgruppen verwalten^200^0^0^150^300^1^char^30^0^18^^^<<SQL>> select '../edit/viz/viz_property_group_list.jsp' from xdummy;^ |
44005^Eigenschaftsgruppen verwalten^200^0^0^150^300^1^char^30^0^18^^^<<SQL>> select '../edit/viz/viz_property_group_list.jsp' from xdummy;^ |
||||||
|
44006^Projekt^5^0^0^150^200^1^integer^200^0^13^<<SQL>> select tid,name from qa_project where active=1 /* and systeminfo_id=<<Komponente>> */ order by 2;^^^ |
||||||
44007^Diagrammtypen verwalten^220^0^0^150^200^1^char^200^0^18^ ^^<<SQL>> select '../edit/viz/viz_type_list.jsp' from xdummy;^ |
44007^Diagrammtypen verwalten^220^0^0^150^200^1^char^200^0^18^ ^^<<SQL>> select '../edit/viz/viz_type_list.jsp' from xdummy;^ |
||||||
|
@ -1,6 +1,8 @@ |
|||||||
44000^44000^ |
44000^44000^ |
||||||
|
44000^44001^ |
||||||
44000^44002^ |
44000^44002^ |
||||||
44000^44003^ |
44000^44003^ |
||||||
44000^44004^ |
44000^44004^ |
||||||
44000^44005^ |
44000^44005^ |
||||||
|
44000^44006^ |
||||||
44000^44007^ |
44000^44007^ |
||||||
|
@ -1 +1 @@ |
|||||||
321^44000^ |
320^44000^ |
||||||
|
@ -1,37 +0,0 @@ |
|||||||
44020^Köpfe oder Fälle ?^0^0^0^140^150^1^sql^70^0^1^<<SQL>> select apnr, eintrag from koepfe_oder_faelle order by 2^apnr, eintrag^<<SQL>> select apnr, eintrag from koepfe_oder_faelle where eintrag='Köpfe';^ |
|
||||||
44021^Seit Semester^3^0^0^140^80^1^integer^30^0^1^<<SQL>> select tid, eintrag from semester order by tid DESC;^Eintrag^<<SQL>> select tid,eintrag from semester where today() between sem_beginn and sem_ende;^ |
|
||||||
44022^Stichtag^1^350^-1^140^100^1^sql^30^0^1^<<SQL>> select tid, name from sos_stichtag where stichtagsart='Studierende';^^<<SQL>> select tid, name from sos_stichtag where stichtagsart='Studierende' and appl_key='0';^ |
|
||||||
44023^Staatsangehörigkeit^36^0^0^130^150^10^char^30^0^12^<<SQL>> select tid,name,sortnr from sichten where art='SOS-Staaten-Sicht' order by 3,2;^^^ |
|
||||||
44024^Status^14^350^-1^140^180^1^sql^30^0^1^<<SQL>> select apnr,eintrag from sos_status order by 2^^<<SQL>> select apnr,eintrag from sos_status where eintrag='Alle ohne Beurl.';^ |
|
||||||
44025^Hörerstatus^33^0^0^140^170^1^sql^30^0^1^<<SQL>> select apnr, eintrag from hoererstatus order by 2^apnr, eintrag^<<SQL>> select apnr, eintrag from hoererstatus where eintrag='alle';^ |
|
||||||
44026^Weitere Tabellen^123^0^0^140^140^10^char^30^0^1^<<SQL>> select name,string_not_null(caption) || ' - ' || name from sx_tables where name in ('dim_studiengang','dim_staat')\ |
|
||||||
order by 2^^^ |
|
||||||
44027^bis Fachsemester^35^350^-1^140^100^1^integer^30^0^0^^^^ |
|
||||||
44029^Bis Semester^4^350^-1^140^80^1^integer^30^0^1^<<SQL>> select tid, eintrag from semester order by tid DESC;^Eintrag^<<SQL>> select tid,eintrag from semester where today() between sem_beginn and sem_ende;^ |
|
||||||
44030^Filter Studierende^119^0^0^140^150^1^sql^20^0^1^<<SQL>> SELECT id,caption from sx_repository where aktiv =1 and today() between gueltig_seit and gueltig_bis and art='SOS_STUD_FILTER' order by 2;^^^ |
|
||||||
44031^Geschlecht^37^0^0^140^80^1^integer^30^0^1^<<SQL>> SELECT apnr,druck FROM cif where key = 9003 and apnr between 1 and 4 order by 1;^^^ |
|
||||||
44032^Felder^125^0^0^150^190^10^char^30^0^1^<<SQL>>\ |
|
||||||
--freemarker template\ |
|
||||||
select trim(F.table_name) || '.' || F.name,trim(T.caption) || ':' || trim(F.caption) || ' - ' || trim(F.name) from sx_fields F,\ |
|
||||||
sx_tables T where F.table_name=T.name and F.currentlyused=1\ |
|
||||||
--Pseudonyme eingeschaltet:\ |
|
||||||
and (F.name != 'matrikel_nr' or 0=(select \ |
|
||||||
count(*) from konstanten where beschreibung='SOS_MTKNR_EXT'\ |
|
||||||
and apnr=1)) \ |
|
||||||
and F.table_name in ('sos_stg_aggr','dim_staat','dim_studiengang') \ |
|
||||||
order by 2;^^^ |
|
||||||
44033^Studiengang^6^0^0^140^150^50^char^30^0^12^<<SQL>> select tid,name,sortnr from sichten where art in ('SOS-Kostenstellen-Sicht', 'SOS-Studiengang-Sicht') order by 3,2;^^^ |
|
||||||
44034^Schlüssel anzeigen^150^0^0^100^100^1^integer^30^1^1^<<SQL>> select 1,'Ja' from xdummy union select 0,'Nein' from xdummy^^<<SQL>> select 1,'Ja' from xdummy^ |
|
||||||
44035^tablestylesheet^121^0^0^100^200^1^char^200^1^1^<<SQL>> select distinct filename,X.caption,ord from sx_stylesheets X,sx_mask_style S where X.tid=S.stylesheet_id and S.maskeninfo_id=44070 order by ord^^<<SQL>> select distinct filename,X.caption from sx_stylesheets X,sx_mask_style S where X.tid=S.stylesheet_id and S.maskeninfo_id=44070 and S.ord=1^ |
|
||||||
44036^Ausgabeformat^2001^0^0^100^150^1^char^200^1^1^<<SQL>> select element_value,description from menu_element where element='Ausgabeformat' and nature::smallint<100 order by nature::smallint^^<<SQL>> select element_value,description from menu_element where element='Ausgabeformat' and description='HTML'^ |
|
||||||
44037^Grafik^1000^300^-1^170^150^1^integer^30^0^1^<<SQL>> select tid, caption from viz_chart order by 2;^^ ^ |
|
||||||
44038^Jahrgang^42^350^-1^140^180^1^sql^30^0^13^<<SQL>> select attributevalue from personattribute_value_list where personattributetype_id = (select personattributetype_id from personattributetype where attributevalue = 'Jahrgang');^^^ |
|
||||||
44039^Name der Hochschule^15^350^-1^140^80^1^char^255^0^13^<<SQL>> select name from hochschulinfo;^Eintrag^<<SQL>> select name from hochschulinfo;^ |
|
||||||
44040^Spaltenanzahl^300^0^0^140^80^1^integer^30^0^1^<<SQL>> SELECT 1,'1-spaltig' from xdummy \ |
|
||||||
union SELECT 2,'2-spaltig' from xdummy \ |
|
||||||
union SELECT 3,'3-spaltig' from xdummy \ |
|
||||||
union SELECT 4,'4-spaltig' from xdummy \ |
|
||||||
order by 1;^^<<SQL>> SELECT 1,'1-spaltig' from xdummy^ |
|
||||||
44041^Abschluss^7^0^0^140^170^5^char^30^0^1^<<SQL>> select abint,dtxt from k_abint order by 2;^^^ |
|
||||||
44042^Matrikel-Nr.^20^350^-1^150^180^1^char^200^0^0^^{InputCheck:matrikelnummern}^^ |
|
||||||
44043^##line##^40^0^0^100^100^1^char^5000^0^8^^^1^ |
|
@ -1,23 +0,0 @@ |
|||||||
44020^44020^ |
|
||||||
44020^44021^ |
|
||||||
44020^44022^ |
|
||||||
44020^44023^ |
|
||||||
44020^44024^ |
|
||||||
44020^44025^ |
|
||||||
44020^44026^ |
|
||||||
44020^44027^ |
|
||||||
44020^44029^ |
|
||||||
44020^44030^ |
|
||||||
44020^44031^ |
|
||||||
44020^44032^ |
|
||||||
44020^44033^ |
|
||||||
44020^44034^ |
|
||||||
44020^44035^ |
|
||||||
44020^44036^ |
|
||||||
44020^44037^ |
|
||||||
44020^44038^ |
|
||||||
44020^44039^ |
|
||||||
44020^44040^ |
|
||||||
44020^44041^ |
|
||||||
44020^44042^ |
|
||||||
44020^44043^ |
|
@ -1 +0,0 @@ |
|||||||
44020^Studierende Datenblatt (Teiltabelle)^<sximport>select select_stmt from maskeninfo where tid=160440</sximport>^<sximport>select xil_proplist from maskeninfo where tid=160440</sximport>^Altersgruppe^Anzahl^Flexible Ausgabe der Studierendenstatistik, Studiengänge und Lehreinheiten^<sximport>select cleanup_stmt from maskeninfo where tid=160440</sximport>^^3^700^360^0^1^ ^ |
|
@ -1 +0,0 @@ |
|||||||
16^44020^ |
|
@ -1,25 +0,0 @@ |
|||||||
44070^Köpfe oder Fälle ?^0^0^0^140^150^1^sql^70^0^1^<<SQL>> select apnr, eintrag from koepfe_oder_faelle order by 2^apnr, eintrag^<<SQL>> select apnr, eintrag from koepfe_oder_faelle where eintrag='Köpfe';^ |
|
||||||
44071^Seit Semester^3^0^0^140^80^1^integer^30^0^1^<<SQL>> select tid, eintrag from semester order by tid DESC;^Eintrag^<<SQL>> select tid,eintrag from semester where today() between sem_beginn and sem_ende;^ |
|
||||||
44072^Stichtag^1^350^-1^140^100^1^sql^30^0^1^<<SQL>> select tid, name from sos_stichtag where stichtagsart='Studierende';^^<<SQL>> select tid, name from sos_stichtag where stichtagsart='Studierende' and appl_key='0';^ |
|
||||||
44073^Staatsangehörigkeit^36^0^0^130^150^10^char^30^0^12^<<SQL>> select tid,name,sortnr from sichten where art='SOS-Staaten-Sicht' order by 3,2;^hidden^^ |
|
||||||
44074^Status^14^350^-1^140^180^1^sql^30^0^1^<<SQL>> select apnr,eintrag from sos_status order by 2^^<<SQL>> select apnr,eintrag from sos_status where eintrag='Alle ohne Beurl.';^ |
|
||||||
44075^Hörerstatus^33^0^0^140^170^1^sql^30^0^1^<<SQL>> select apnr, eintrag from hoererstatus order by 2^apnr, eintrag^<<SQL>> select apnr, eintrag from hoererstatus where eintrag='alle';^ |
|
||||||
44076^Spaltenanzahl^300^0^0^140^80^1^integer^30^0^1^<<SQL>> SELECT 1,'1-spaltig' from xdummy \ |
|
||||||
union SELECT 2,'2-spaltig' from xdummy \ |
|
||||||
union SELECT 3,'3-spaltig' from xdummy \ |
|
||||||
union SELECT 4,'4-spaltig' from xdummy \ |
|
||||||
order by 1;^^<<SQL>> SELECT 3,'3-spaltig' from xdummy^ |
|
||||||
44077^bis Fachsemester^35^350^-1^140^100^1^integer^30^0^13^^^^ |
|
||||||
44079^Bis Semester^4^350^-1^140^80^1^integer^30^0^1^<<SQL>> select tid, eintrag from semester order by tid DESC;^Eintrag^<<SQL>> select tid,eintrag from semester where today() between sem_beginn and sem_ende;^ |
|
||||||
44080^Filter Studierende^119^0^0^140^150^1^sql^20^0^13^<<SQL>> SELECT id,caption from sx_repository where aktiv =1 and today() between gueltig_seit and gueltig_bis and art='SOS_STUD_FILTER' order by 2;^^^ |
|
||||||
44081^Geschlecht^37^0^0^140^80^1^integer^30^0^13^<<SQL>> SELECT apnr,druck FROM cif where key = 9003 and apnr between 1 and 4 order by 1;^^^ |
|
||||||
44083^Studiengang^6^0^0^140^150^50^char^30^0^12^<<SQL>> select tid,name,sortnr from sichten where art in ('SOS-Kostenstellen-Sicht', 'SOS-Studiengang-Sicht') order by 3,2;^^^ |
|
||||||
44084^Schlüssel anzeigen^150^0^0^100^100^1^integer^30^1^1^<<SQL>> select 1,'Ja' from xdummy union select 0,'Nein' from xdummy^hidden^<<SQL>> select 1,'Ja' from xdummy^ |
|
||||||
44085^tablestylesheet^150^0^0^100^100^1^char^255^1^1^<<SQL>> select filename,caption from sx_stylesheets S, sx_mask_style M where S.tid=M.stylesheet_id and M.maskeninfo_id=44070 order by ord^ ^<<SQL>> select filename,caption from sx_stylesheets S, sx_mask_style M where S.tid=M.stylesheet_id and M.maskeninfo_id=44070 and ord =1^ |
|
||||||
44087^Grafik^1000^300^-1^170^150^1^integer^30^0^1^<<SQL>> select tid, caption from viz_chart order by 2;^hidden^ ^ |
|
||||||
44088^Jahrgang^42^350^-1^140^180^1^sql^30^0^13^<<SQL>> select attributevalue from personattribute_value_list where personattributetype_id = (select personattributetype_id from personattributetype where attributevalue = 'Jahrgang');^^^ |
|
||||||
44089^Name der Hochschule^15^350^-1^140^80^1^char^255^0^13^<<SQL>> select name from hochschulinfo;^Eintrag^<<SQL>> select name from hochschulinfo;^ |
|
||||||
44090^##line##^30^0^0^100^100^1^char^5000^0^8^^^1^ |
|
||||||
44091^Abschluss^7^0^0^140^170^5^char^30^0^1^<<SQL>> select abint,dtxt from k_abint order by 2;^^^ |
|
||||||
44092^Matrikel-Nr.^20^350^-1^150^180^1^char^200^0^13^^{InputCheck:matrikelnummern}^^ |
|
||||||
44093^##line##^40^0^0^100^100^1^char^5000^0^8^^^1^ |
|
@ -1,21 +0,0 @@ |
|||||||
44070^44070^ |
|
||||||
44070^44071^ |
|
||||||
44070^44072^ |
|
||||||
44070^44073^ |
|
||||||
44070^44074^ |
|
||||||
44070^44075^ |
|
||||||
44070^44076^ |
|
||||||
44070^44077^ |
|
||||||
44070^44079^ |
|
||||||
44070^44080^ |
|
||||||
44070^44081^ |
|
||||||
44070^44083^ |
|
||||||
44070^44084^ |
|
||||||
44070^44085^ |
|
||||||
44070^44087^ |
|
||||||
44070^44088^ |
|
||||||
44070^44089^ |
|
||||||
44070^44090^ |
|
||||||
44070^44091^ |
|
||||||
44070^44092^ |
|
||||||
44070^44093^ |
|
@ -1,457 +0,0 @@ |
|||||||
44070^Studierenden-Entwicklung^--Freemarker Template\ |
|
||||||
<#include "SQL_lingua_franca"/>\ |
|
||||||
<#include "SuperX_general"/>\ |
|
||||||
<#include "SQL_multitable_output"/>\ |
|
||||||
\ |
|
||||||
--ram excelexport\ |
|
||||||
\ |
|
||||||
<sqlvars>\ |
|
||||||
<sqlvar name="basetable"><![CDATA[<#if "<<Köpfe oder Fälle ?>>"?index_of("S.gewichtung_id=")==-1>select 'sos_stg_aggr' from xdummy<#else>select 'sos_stud_gewichtung' from xdummy</#if>]]></sqlvar>\ |
|
||||||
<sqlvar name="restriction"><![CDATA[<#if basetable='sos_stg_aggr'>\ |
|
||||||
<#assign restrict=DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)/>;\ |
|
||||||
<#else>\ |
|
||||||
<#assign restrict=DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)?replace('sos_stg_aggr',basetable)?replace("'dim_studiengang'","'dim_studiengang_gew'")/>;\ |
|
||||||
</#if>\ |
|
||||||
select '${restrict?replace("\\x0027","\\x0027\\x0027")}' from xdummy;]]>\ |
|
||||||
</sqlvar>\ |
|
||||||
<sqlvar name="get_joins" type="hashsequence"><![CDATA[\ |
|
||||||
SELECT foreignkey_tab,min(table_name) as table_name,\ |
|
||||||
min(name) as name,\ |
|
||||||
min(foreignkey_col) as foreignkey_col,\ |
|
||||||
min(foreignkey_cond) as foreignkey_cond,\ |
|
||||||
min(foreignkey_func) as foreignkey_func\ |
|
||||||
from sx_fields\ |
|
||||||
where table_name in ('${basetable}'/* ,<<Weitere Tabellen>> */ ${restriction})\ |
|
||||||
and foreignkey_tab in ('${basetable}'/* ,<<Weitere Tabellen>> */ ${restriction})\ |
|
||||||
group by 1\ |
|
||||||
order by 1,2,3;\ |
|
||||||
]]>\ |
|
||||||
</sqlvar>\ |
|
||||||
<sqlvar name="semester"><![CDATA[\ |
|
||||||
select tid, eintrag from semester where 1=1\ |
|
||||||
/* and tid >= <<Seit Semester>> */\ |
|
||||||
/* and tid <= <<Bis Semester>>*/\ |
|
||||||
;]]>\ |
|
||||||
</sqlvar>\ |
|
||||||
<sqlvar name="get_felder_fk" type="hashsequence"><![CDATA[\ |
|
||||||
SELECT name,\ |
|
||||||
caption,\ |
|
||||||
table_name,\ |
|
||||||
foreignkey_tab,\ |
|
||||||
foreignkey_col,\ |
|
||||||
foreignkey_cap,\ |
|
||||||
foreignkey_cond,\ |
|
||||||
foreignkey_func,\ |
|
||||||
case when foreignkey_uniquename!='' then foreignkey_uniquename else foreignkey_col end as foreignkey_uniquename\ |
|
||||||
\ |
|
||||||
from sx_fields\ |
|
||||||
where table_name in ('${basetable}' /* ,<<Weitere Tabellen>> */ ${restriction}\ |
|
||||||
)\ |
|
||||||
and currentlyused=1\ |
|
||||||
--Pseudonyme eingeschaltet:\ |
|
||||||
and (name != 'matrikel_nr' or 0=(select \ |
|
||||||
count(*) from konstanten where beschreibung='SOS_MTKNR_EXT'\ |
|
||||||
and apnr=1))\ |
|
||||||
<#if basetable='sos_stg_aggr'>\ |
|
||||||
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>",FelderObject.allKeys)}\ |
|
||||||
<#else>\ |
|
||||||
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>"?replace("sos_stg_aggr","sos_stud_gewichtung")?replace("dim_studiengang.","dim_studiengang_gew."),\ |
|
||||||
FelderObject.allKeys?replace("sos_stg_aggr","sos_stud_gewichtung")?replace("dim_studiengang.","dim_studiengang_gew."))}\ |
|
||||||
</#if>\ |
|
||||||
and table_name !='dim_person_attribute_aggr'\ |
|
||||||
--hier Personattribute wg. Sortierung\ |
|
||||||
union\ |
|
||||||
SELECT F.name,\ |
|
||||||
P.attributevalue ,--caption,\ |
|
||||||
table_name,\ |
|
||||||
foreignkey_tab,\ |
|
||||||
foreignkey_col,\ |
|
||||||
foreignkey_cap,\ |
|
||||||
foreignkey_cond,\ |
|
||||||
foreignkey_func,\ |
|
||||||
case when foreignkey_uniquename!='' then foreignkey_uniquename else foreignkey_col end as foreignkey_uniquename\ |
|
||||||
\ |
|
||||||
from sx_fields F, personattributetype P\ |
|
||||||
where table_name in ('${basetable}' /* ,<<Weitere Tabellen>> */ ${restriction}\ |
|
||||||
)\ |
|
||||||
and currentlyused=1\ |
|
||||||
--Pseudonyme eingeschaltet:\ |
|
||||||
and (name != 'matrikel_nr' or 0=(select \ |
|
||||||
count(*) from konstanten where beschreibung='SOS_MTKNR_EXT'\ |
|
||||||
and apnr=1))\ |
|
||||||
<#if basetable='sos_stg_aggr'>\ |
|
||||||
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>",FelderObject.allKeys)}\ |
|
||||||
<#else>\ |
|
||||||
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>"?replace("sos_stg_aggr","sos_stud_gewichtung")?replace("dim_studiengang.","dim_studiengang_gew."),\ |
|
||||||
FelderObject.allKeys?replace("sos_stg_aggr","sos_stud_gewichtung")?replace("dim_studiengang.","dim_studiengang_gew."))}\ |
|
||||||
</#if>\ |
|
||||||
and table_name ='dim_person_attribute_aggr'\ |
|
||||||
and F.name='attribute' || P.personattributetype_id\ |
|
||||||
\ |
|
||||||
order by 2,3;\ |
|
||||||
]]>\ |
|
||||||
</sqlvar>\ |
|
||||||
</sqlvars>\ |
|
||||||
\ |
|
||||||
<#assign lehr_stg_ab="lehr_stg_ab"/>\ |
|
||||||
<#if "<<Köpfe oder Fälle ?>>"?index_of("S.gewichtung_id=")!=-1>\ |
|
||||||
<#assign lehr_stg_ab="lehr_stg_ab_gew"/>\ |
|
||||||
</#if>\ |
|
||||||
\ |
|
||||||
delete from dim_person_attribute_aggr;\ |
|
||||||
\ |
|
||||||
<#foreach einSemester in semester>\ |
|
||||||
insert into dim_person_attribute_aggr \ |
|
||||||
select dim_person_attribute.matrikel_nr, \ |
|
||||||
max(attribute1),max(attribute2),max(attribute3),max(attribute4),max(attribute5),max(attribute6)\ |
|
||||||
,max(attribute7),max(attribute8),max(attribute9),max(attribute10), semester.tid\ |
|
||||||
from dim_person_attribute, semester\ |
|
||||||
where (${einSemester.key} between semester_von and semester_bis and semester.tid = ${einSemester.key}) \ |
|
||||||
\ |
|
||||||
group by dim_person_attribute.matrikel_nr, semester.tid;\ |
|
||||||
</#foreach>\ |
|
||||||
\ |
|
||||||
\ |
|
||||||
--zum testen der sqlvars\ |
|
||||||
--select * from sx_fields\ |
|
||||||
-- <#if <<tablestylesheet>>='tabelle_html.xsl'>\ |
|
||||||
-- /*,<<Weitere Tabellen>> */\ |
|
||||||
-- <#else>\ |
|
||||||
-- , ${.vars["Weitere TabellenObject"].allKeys?replace("'","")}\ |
|
||||||
--</#if>\ |
|
||||||
--where 1=1 \ |
|
||||||
-- <#if <<tablestylesheet>>='tabelle_html.xsl'>\ |
|
||||||
-- /* and trim(table_name) || '.' || name in ( <<Felder>> )*/\ |
|
||||||
-- <#else>\ |
|
||||||
-- and trim(table_name) || '.' || name in (${FelderObject.allKeys})\ |
|
||||||
-- </#if>;\ |
|
||||||
\ |
|
||||||
--drop table if exists tmp_tabelle ;\ |
|
||||||
\ |
|
||||||
\ |
|
||||||
<#assign filter="\ |
|
||||||
/* and <<Hörerstatus>> */\ |
|
||||||
/* and sem_rueck_beur_ein >= <<Seit Semester>> */\ |
|
||||||
/* and sem_rueck_beur_ein <= <<Bis Semester>> */\ |
|
||||||
/* AND fach_sem_zahl <= <<bis Fachsemester>> */\ |
|
||||||
/* and "+basetable+".stichtag = <<Stichtag>> */\ |
|
||||||
/* and kz_rueck_beur_ein in(<<Status>>) */\ |
|
||||||
/* and geschlecht=<<Geschlecht>> */\ |
|
||||||
/* and ${<<Filter Studierende>>} */\ |
|
||||||
/* and L.abschluss in (<<Abschluss>>) */\ |
|
||||||
" />\ |
|
||||||
\ |
|
||||||
\ |
|
||||||
<#if "<<Matrikel-Nr.>>"!="">\ |
|
||||||
<#assign filter=filter+" and " + basetable + ".matrikel_nr in (<<Matrikel-Nr.>>)"?replace("'","")/>\ |
|
||||||
</#if>\ |
|
||||||
<#if "<<Köpfe oder Fälle ?>>"?index_of("S.gewichtung_id=")!=-1>\ |
|
||||||
<#assign filter=filter+" and "+.vars["Köpfe oder Fälle ?"]?replace('S.','sos_stud_gewichtung.')/>\ |
|
||||||
<#if "<<Weitere Tabellen>>"?index_of("dim_studiengang_gew")>-1>\ |
|
||||||
<#assign filter=filter+" and (dim_studiengang_gew.gewichtid is null or "+.vars["Köpfe oder Fälle ?"]?replace('S.','dim_studiengang_gew.')?replace("gewichtung_id","gewichtid")+")"/>\ |
|
||||||
</#if>\ |
|
||||||
<#elseif "<<Köpfe oder Fälle ?>>"!="">\ |
|
||||||
<#assign filter=filter+" and "+.vars["Köpfe oder Fälle ?"]/>\ |
|
||||||
</#if>\ |
|
||||||
\ |
|
||||||
\ |
|
||||||
<#assign filter = filter + " and 's_' || tid_stg in "+Studiengang.allNeededKeysList /> \ |
|
||||||
\ |
|
||||||
<#assign semester_von_filter="19000" />\ |
|
||||||
/* <#assign semester_von_filter="<<Seit Semester>>" /> */\ |
|
||||||
<#assign semester_bis_filter="30000" />\ |
|
||||||
/* <#assign semester_bis_filter="<<Bis Semester>>" /> */\ |
|
||||||
\ |
|
||||||
/*<#assign filter = filter + " and 0 < (select count(*) from personattribute PA, personattributetype TY\ |
|
||||||
where TY.personattributetype_id=PA.personattributetype_id\ |
|
||||||
and TY.attributevalue='Jahrgang'\ |
|
||||||
and PA.matrikel_nr="+basetable+".matrikel_nr\ |
|
||||||
and (${semester_von_filter} between PA.semester_von and PA.semester_bis\ |
|
||||||
or ${semester_bis_filter} between PA.semester_von and PA.semester_bis)\ |
|
||||||
and PA.attributevalue='<<Jahrgang>>') "/>*/\ |
|
||||||
\ |
|
||||||
/* <#assign filter = filter + " and 0 < (select count(*) from personattribute PA, personattributetype TY\ |
|
||||||
where TY.personattributetype_id=PA.personattributetype_id\ |
|
||||||
and TY.attributevalue='Status'\ |
|
||||||
and PA.matrikel_nr="+basetable+".matrikel_nr\ |
|
||||||
and (${semester_von_filter} between PA.semester_von and PA.semester_bis\ |
|
||||||
or ${semester_bis_filter} between PA.semester_von and PA.semester_bis)\ |
|
||||||
and PA.attributevalue='<<Zivilstatus>>') "/>*/\ |
|
||||||
\ |
|
||||||
\ |
|
||||||
/* <#assign filter = filter + " and '' || ca12_staat in "+Staatsangehörigkeit.allNeededKeysList /> --<<Staatsangehörigkeit>> */\ |
|
||||||
\ |
|
||||||
\ |
|
||||||
-- /*<#assign filter = filter + " and dim_person_attribute.attribute9 = '<<StatusZ>>'"/> */\ |
|
||||||
--/*<#assign jahrgang_filter = " and dim_person_attribute.attribute10 = '<<Jahrgang>>'"/>*/\ |
|
||||||
--<#assign filter = filter + jahrgang_filter />\ |
|
||||||
\ |
|
||||||
--first denormalize basetable:\ |
|
||||||
\ |
|
||||||
--get field_list_select\ |
|
||||||
<#assign field_list_select="''::char(250) as _meldung" />\ |
|
||||||
<#foreach feld in get_felder_fk>\ |
|
||||||
\ |
|
||||||
<#if feld.name="summe">\ |
|
||||||
<#assign field_list_select=field_list_select+", sum(summe) as "+basetable+"_summe" />\ |
|
||||||
<#else>\ |
|
||||||
<#assign field_list_select=field_list_select+", "+feld.table_name +"."+feld.name +" as "+feld.table_name +"_"+feld.name />\ |
|
||||||
</#if>\ |
|
||||||
<#if feld.foreignkey_uniquename != "">\ |
|
||||||
<#assign field_list_select=field_list_select+",''::char(255) as " + feld.table_name +"_"+feld.name + "_uniquename" />\ |
|
||||||
<#assign field_list_select=field_list_select+",''::char(255) as " + feld.table_name +"_"+feld.name + "_str" />\ |
|
||||||
</#if>\ |
|
||||||
</#foreach>\ |
|
||||||
\ |
|
||||||
--get fromclause\ |
|
||||||
\ |
|
||||||
<#assign fromclause=lehr_stg_ab+" L,"+basetable />\ |
|
||||||
<#foreach join in get_joins>\ |
|
||||||
<#assign fromclause=fromclause+" left outer join "+join.foreignkey_tab +" on (" />\ |
|
||||||
<#if join.foreignkey_tab ="dim_person_attribute_aggr" >\ |
|
||||||
<#assign fromclause=fromclause+ basetable+".matrikel_nr=dim_person_attribute_aggr.matrikel_nr and dim_person_attribute_aggr.semester = "+basetable+".sem_rueck_beur_ein " />\ |
|
||||||
<#else>\ |
|
||||||
<#assign fromclause=fromclause+ basetable+"."+ join.name+"=" />\ |
|
||||||
<#if join.foreignkey_func != "">\ |
|
||||||
<#assign fromclause=fromclause+join.foreignkey_func+"(" />\ |
|
||||||
</#if>\ |
|
||||||
<#assign fromclause=fromclause+join.foreignkey_tab+"." +join.foreignkey_col />\ |
|
||||||
<#if join.foreignkey_func != "">\ |
|
||||||
<#assign fromclause=fromclause+")" />\ |
|
||||||
</#if>\ |
|
||||||
<#if join.foreignkey_cond != "">\ |
|
||||||
<#if join.foreignkey_cond[0..0] = "1" || \ |
|
||||||
join.foreignkey_cond[0..0] = "2" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "3" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "4" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "5" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "6" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "7" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "8" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "9" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "0" ||\ |
|
||||||
join.foreignkey_cond[0..0] = "'" >\ |
|
||||||
<#assign fromclause=fromclause+" and "+join.foreignkey_cond />\ |
|
||||||
<#else>\ |
|
||||||
<#assign fromclause=fromclause+" and tmp_tabelle."+join.table_name+"_"+join.foreignkey_cond />\ |
|
||||||
</#if>\ |
|
||||||
</#if>\ |
|
||||||
\ |
|
||||||
</#if> --wenn nicht dim_person_attritubte_aggr\ |
|
||||||
<#assign fromclause=fromclause+") " />\ |
|
||||||
</#foreach>\ |
|
||||||
<#if ("<<Weitere Tabellen>>"+restriction)?index_of("dim_person_attribute_aggr") !=-1>\ |
|
||||||
<#assign fromclause=fromclause+" left outer join dim_person_attribute_aggr on ("+basetable+".matrikel_nr=dim_person_attribute_aggr.matrikel_nr and "+basetable+".sem_rueck_beur_ein=dim_person_attribute_aggr.semester)" />\ |
|
||||||
</#if>\ |
|
||||||
\ |
|
||||||
--whereclause\ |
|
||||||
<#assign whereclause=" L.tid="+basetable+".tid_stg " />\ |
|
||||||
\ |
|
||||||
--get groupbyclause\ |
|
||||||
<#assign groupbyclause="group by 1" />\ |
|
||||||
<#foreach feld in get_felder_fk>\ |
|
||||||
<#if feld.name!="summe">\ |
|
||||||
<#assign groupbyclause=groupbyclause+", "+feld.table_name +"_"+feld.name />\ |
|
||||||
</#if>\ |
|
||||||
</#foreach>\ |
|
||||||
\ |
|
||||||
<@selectintotmp\ |
|
||||||
select=field_list_select\ |
|
||||||
source=fromclause\ |
|
||||||
target="tmp_tabelle">\ |
|
||||||
where ${whereclause}\ |
|
||||||
${filter}\ |
|
||||||
${groupbyclause}\ |
|
||||||
</@selectintotmp>\ |
|
||||||
<@informixnolog/> ;\ |
|
||||||
\ |
|
||||||
create temp table tmp_rows(anz integer,max_anz integer) \ |
|
||||||
<@informixnolog/> \ |
|
||||||
;\ |
|
||||||
insert into tmp_rows(anz) select count(*) from tmp_tabelle;\ |
|
||||||
update tmp_rows set max_anz=(select apnr from konstanten where beschreibung='Datenblatt max.Zeilenzahl');\ |
|
||||||
\ |
|
||||||
delete from tmp_tabelle where 0 < (select count(*) from tmp_rows\ |
|
||||||
where anz > max_anz);\ |
|
||||||
\ |
|
||||||
select 'Warnung: die Abfrage kann nicht ausgeführt werden, denn ' || anz || ' Zeilen liegen über max. Grenze von ' || max_anz as _runtimeMessage\ |
|
||||||
from tmp_rows\ |
|
||||||
where anz > max_anz;\ |
|
||||||
\ |
|
||||||
drop table tmp_rows;\ |
|
||||||
\ |
|
||||||
--denormalize:\ |
|
||||||
\ |
|
||||||
\ |
|
||||||
<#foreach feld in get_felder_fk>\ |
|
||||||
<#if feld.foreignkey_tab != "" >\ |
|
||||||
<#if SQLdialect="Postgres">\ |
|
||||||
update tmp_tabelle set\ |
|
||||||
(${feld.table_name}_${feld.name}_uniquename, ${feld.table_name}_${feld.name}_str)=\ |
|
||||||
(select ${feld.foreignkey_uniquename},${feld.foreignkey_cap}\ |
|
||||||
from ${feld.foreignkey_tab}\ |
|
||||||
where tmp_tabelle.${feld.table_name}_${feld.name}=\ |
|
||||||
<#if feld.foreignkey_func != "">\ |
|
||||||
${feld.foreignkey_func}(\ |
|
||||||
</#if>\ |
|
||||||
${feld.foreignkey_tab}.${feld.foreignkey_col}\ |
|
||||||
<#if feld.foreignkey_func != "">\ |
|
||||||
)\ |
|
||||||
</#if>\ |
|
||||||
<#if feld.foreignkey_cond != "">\ |
|
||||||
<#if feld.foreignkey_cond[0..0] = "1" || \ |
|
||||||
feld.foreignkey_cond[0..0] = "2" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "3" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "4" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "5" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "6" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "7" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "8" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "9" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "0" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "'" >\ |
|
||||||
and ${feld.foreignkey_cond}\ |
|
||||||
<#else>\ |
|
||||||
and tmp_tabelle.${feld.table_name}_${feld.foreignkey_cond}\ |
|
||||||
</#if>\ |
|
||||||
</#if>\ |
|
||||||
);\ |
|
||||||
<#else> --Wenn Informix:\ |
|
||||||
\ |
|
||||||
update tmp_tabelle set (${feld.table_name}_${feld.name}_uniquename,${feld.table_name}_${feld.name}_str)\ |
|
||||||
=(( select ${feld.foreignkey_uniquename},${feld.foreignkey_cap}\ |
|
||||||
from ${feld.foreignkey_tab}\ |
|
||||||
where tmp_tabelle.${feld.table_name}_${feld.name}=\ |
|
||||||
<#if feld.foreignkey_func != "">\ |
|
||||||
${feld.foreignkey_func}(\ |
|
||||||
</#if>\ |
|
||||||
${feld.foreignkey_tab}.${feld.foreignkey_col}\ |
|
||||||
<#if feld.foreignkey_func != "">\ |
|
||||||
)\ |
|
||||||
</#if>\ |
|
||||||
<#if feld.foreignkey_cond != "">\ |
|
||||||
<#if feld.foreignkey_cond[0..0] = "1" || \ |
|
||||||
feld.foreignkey_cond[0..0] = "2" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "3" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "4" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "5" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "6" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "7" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "8" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "9" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "0" ||\ |
|
||||||
feld.foreignkey_cond[0..0] = "'" >\ |
|
||||||
and ${feld.foreignkey_cond}\ |
|
||||||
<#else>\ |
|
||||||
and tmp_tabelle.${feld.table_name}_${feld.foreignkey_cond}\ |
|
||||||
</#if>\ |
|
||||||
</#if>\ |
|
||||||
))\ |
|
||||||
where tmp_tabelle.${feld.table_name}_${feld.name} is not null\ |
|
||||||
;\ |
|
||||||
\ |
|
||||||
</#if> --Wenn Postgres/Informix\ |
|
||||||
</#if> --wenn foreign_key\ |
|
||||||
</#foreach>\ |
|
||||||
\ |
|
||||||
\ |
|
||||||
<#if get_felder_fk?has_content >\ |
|
||||||
select \ |
|
||||||
\ |
|
||||||
<#assign rownum=1 />\ |
|
||||||
<#foreach feld in get_felder_fk>\ |
|
||||||
<#if feld.foreignkey_tab != "">\ |
|
||||||
\ |
|
||||||
${feld.table_name}_${feld.name}_str\ |
|
||||||
<#if <<Schlüssel anzeigen>>=1>\ |
|
||||||
<#if feld.foreignkey_col=feld.foreignkey_uniquename>\ |
|
||||||
,${feld.table_name}_${feld.name}\ |
|
||||||
<#else>\ |
|
||||||
,${feld.table_name}_${feld.name}_uniquename\ |
|
||||||
</#if>\ |
|
||||||
</#if>\ |
|
||||||
\ |
|
||||||
<#else>\ |
|
||||||
${feld.table_name}_${feld.name}\ |
|
||||||
</#if>\ |
|
||||||
<#if rownum < get_felder_fk?size>\ |
|
||||||
,\ |
|
||||||
</#if>\ |
|
||||||
<#assign rownum= rownum+1 />\ |
|
||||||
</#foreach>\ |
|
||||||
from tmp_tabelle\ |
|
||||||
;\ |
|
||||||
</#if>^--Freemarker Template \ |
|
||||||
<sqlvars>\ |
|
||||||
<sqlvar name="basetable"><![CDATA[<#if "<<Köpfe oder Fälle ?>>"?index_of("S.gewichtung_id=")==-1>select 'sos_stg_aggr' from xdummy<#else>select 'sos_stud_gewichtung' from xdummy</#if>]]></sqlvar>\ |
|
||||||
<sqlvar name="restriction"><![CDATA[<#if basetable='sos_stg_aggr'>\ |
|
||||||
<#assign restrict=DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)/>;\ |
|
||||||
<#else>\ |
|
||||||
<#assign restrict=DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)?replace('sos_stg_aggr',basetable)?replace("'dim_studiengang'","'dim_studiengang_gew'")/>;\ |
|
||||||
</#if>\ |
|
||||||
select '${restrict?replace("\\x0027","\\x0027\\x0027")}' from xdummy;]]>\ |
|
||||||
</sqlvar>\ |
|
||||||
<sqlvar name="get_felder"><![CDATA[\ |
|
||||||
SELECT caption,\ |
|
||||||
foreignkey_tab,\ |
|
||||||
description as strukturStr\ |
|
||||||
from sx_fields\ |
|
||||||
where table_name in ('${basetable}'\ |
|
||||||
${restriction}\ |
|
||||||
)\ |
|
||||||
and currentlyused=1\ |
|
||||||
--Pseudonyme eingeschaltet:\ |
|
||||||
and (name != 'matrikel_nr' or 0=(select \ |
|
||||||
count(*) from konstanten where beschreibung='SOS_MTKNR_EXT'\ |
|
||||||
and apnr=1))\ |
|
||||||
<#if basetable='sos_stg_aggr'>\ |
|
||||||
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>",FelderObject.allKeys)}\ |
|
||||||
<#else>\ |
|
||||||
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>"?replace("sos_stg_aggr","sos_stud_gewichtung")?replace("dim_studiengang.","dim_studiengang_gew."),\ |
|
||||||
FelderObject.allKeys?replace("sos_stg_aggr","sos_stud_gewichtung")?replace("dim_studiengang.","dim_studiengang_gew."))}\ |
|
||||||
</#if>\ |
|
||||||
and table_name !='dim_person_attribute_aggr'\ |
|
||||||
--hier personattribute:\ |
|
||||||
union SELECT P.attributevalue , -- F.caption,\ |
|
||||||
F.foreignkey_tab,\ |
|
||||||
F.description as strukturStr\ |
|
||||||
from sx_fields F, personattributetype P\ |
|
||||||
where F.table_name in ('${basetable}'\ |
|
||||||
${restriction}\ |
|
||||||
)\ |
|
||||||
and currentlyused=1\ |
|
||||||
--Pseudonyme eingeschaltet:\ |
|
||||||
and (name != 'matrikel_nr' or 0=(select \ |
|
||||||
count(*) from konstanten where beschreibung='SOS_MTKNR_EXT'\ |
|
||||||
and apnr=1))\ |
|
||||||
<#if basetable='sos_stg_aggr'>\ |
|
||||||
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>",FelderObject.allKeys)}\ |
|
||||||
<#else>\ |
|
||||||
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>"?replace("sos_stg_aggr","sos_stud_gewichtung")?replace("dim_studiengang.","dim_studiengang_gew.")\ |
|
||||||
,FelderObject.allKeys?replace("sos_stg_aggr","sos_stud_gewichtung")?replace("dim_studiengang.","dim_studiengang_gew."))}\ |
|
||||||
</#if>\ |
|
||||||
and table_name ='dim_person_attribute_aggr'\ |
|
||||||
and F.name='attribute' || P.personattributetype_id\ |
|
||||||
order by 1;]]>\ |
|
||||||
</sqlvar>\ |
|
||||||
</sqlvars>\ |
|
||||||
XIL List\ |
|
||||||
sizable_columns horizontal_scrolling\ |
|
||||||
white_space_color=COLOR_WHITE fixed_columns=0\ |
|
||||||
min_heading_height=35\ |
|
||||||
<#assign i=1 />\ |
|
||||||
<#if get_felder?has_content >\ |
|
||||||
<#foreach myfield in get_felder>\ |
|
||||||
<#assign i=i+1 />\ |
|
||||||
Column CID=${i} heading_text="${myfield.key}" explanation="${myfield.strukturStr}" center_heading\ |
|
||||||
row_selectable col_selectable rightJust heading_platform readonly\ |
|
||||||
width=20\ |
|
||||||
<#if myfield.name != '' && <<Schlüssel anzeigen>>==1>\ |
|
||||||
<#assign i=i+1 />\ |
|
||||||
Column CID=${i} heading_text="${myfield.key}\\n(Schlüssel)" explanation="Schlüssel des Feldes ${myfield.key}" center_heading\ |
|
||||||
row_selectable col_selectable rightJust heading_platform readonly\ |
|
||||||
width=20\ |
|
||||||
</#if>\ |
|
||||||
</#foreach>\ |
|
||||||
</#if>\ |
|
||||||
@@@^Altersgruppe^Anzahl^Flexible Ausgabe der Studierendenstatistik, Studiengänge und Lehreinheiten^drop table tmp_tabelle;^^3^700^360^0^1^^ |
|
@ -1 +0,0 @@ |
|||||||
16^44070^ |
|
@ -1,185 +0,0 @@ |
|||||||
<#include "MAN_MAKROS"/><sqlvars> <sqlvar name="entries" type="hash">select R.catalogue_id,K.shortname,timeunit,sqlchunk,calcratio,decimalplaces,linksub,linktimeline,R.report_id,R.sortnr, R.sortnr2,R.grouping1,G.caption as group_caption from man_catalogue K,man_catalogue_rpt R left outer join man_grouping G on (G.id=R.grouping1) where K.id=R.catalogue_id and R.active=1 and K.id not in ('Bewerber') order by R.sortnr, R.sortnr2 </sqlvar> |
|
||||||
<sqlvar name="commonChartProperties" type="hash"> |
|
||||||
SELECT tid, |
|
||||||
caption, |
|
||||||
prop_uniquename, |
|
||||||
prop_default, |
|
||||||
prop_unit |
|
||||||
|
|
||||||
FROM viz_property |
|
||||||
where is_generic=1 |
|
||||||
; |
|
||||||
</sqlvar> |
|
||||||
<sqlvar name="commonChartProperties" type="hash"> |
|
||||||
SELECT |
|
||||||
P.tid, |
|
||||||
P.caption, |
|
||||||
P.prop_uniquename, |
|
||||||
P.prop_default, |
|
||||||
P.prop_unit, |
|
||||||
P.is_generic, |
|
||||||
P.static_values, |
|
||||||
P.is_mandatory, |
|
||||||
P.explanation, |
|
||||||
P.sortnr, |
|
||||||
P.range_from, |
|
||||||
P.range_to, |
|
||||||
T.caption as input_type_caption, |
|
||||||
T.uniquename as input_type_uniquename, |
|
||||||
G.caption as group_caption, |
|
||||||
G.sortnr as group_sortnr, |
|
||||||
G.uniquename as group_uniquename, |
|
||||||
R.uniquename as renderer_uniquename, |
|
||||||
GR.variable_name as group_variable_name, |
|
||||||
PR.variable_name, |
|
||||||
P.prop_value_type, |
|
||||||
P.is_generic |
|
||||||
|
|
||||||
FROM viz_property_input_type T, viz_property P left outer join viz_property_group G |
|
||||||
on (P.property_group_id=G.tid) |
|
||||||
left outer join viz_property_group_renderer GR on (GR.property_group_id=G.tid) |
|
||||||
left outer join viz_renderer R on (R.tid=GR.renderer_id) |
|
||||||
left outer join viz_property_renderer PR on (P.tid=PR.property_id) |
|
||||||
where T.tid=P.input_type_id |
|
||||||
--and P.is_generic=1 |
|
||||||
order by G.sortnr,G.uniquename,P.sortnr,P.caption |
|
||||||
; |
|
||||||
</sqlvar> |
|
||||||
<sqlvar name="vizRenderer" type="hash"> |
|
||||||
SELECT |
|
||||||
R.uniquename, |
|
||||||
R.caption |
|
||||||
FROM viz_renderer R |
|
||||||
order by 2 desc |
|
||||||
; |
|
||||||
</sqlvar> |
|
||||||
<sqlvar name="vizTypes" type="hash"> |
|
||||||
SELECT T.tid, |
|
||||||
T.uniquename, |
|
||||||
T.caption, |
|
||||||
R.uniquename as renderer_uniquename, |
|
||||||
R.caption as renderer_caption, |
|
||||||
T.srcpath, |
|
||||||
T.method, |
|
||||||
T.orientation |
|
||||||
FROM viz_type T, viz_renderer R |
|
||||||
where R.tid=T.renderer_id |
|
||||||
order by 3 |
|
||||||
; |
|
||||||
</sqlvar> |
|
||||||
<sqlvar name="viz_type_properties" type="hash"> |
|
||||||
SELECT T.tid, |
|
||||||
T.uniquename as viz_type_uniquename, |
|
||||||
P.prop_uniquename, |
|
||||||
P.caption, |
|
||||||
G.uniquename as viz_property_group_uniquename, |
|
||||||
TP.is_mandatory, |
|
||||||
TP.sortnr |
|
||||||
FROM viz_type T, viz_type_property TP, viz_property P, viz_property_group G |
|
||||||
where T.tid=TP.viz_type_id |
|
||||||
and P.tid=TP.viz_property_id |
|
||||||
and G.tid=P.property_group_id |
|
||||||
order by 2,TP.sortnr,P.caption |
|
||||||
; |
|
||||||
</sqlvar> |
|
||||||
<sqlvar name="viz_chart" type="hashsequence"> |
|
||||||
SELECT V.tid, |
|
||||||
V.uniquename, |
|
||||||
V.caption, |
|
||||||
V.userinfo_id, |
|
||||||
replace(V.chartmodel,'"','§') as chartmodel_escaped, |
|
||||||
replace(V.chartmodel_miniature,'"','§') as chartmodel_miniature_escaped, |
|
||||||
V.description, |
|
||||||
V.chart_position |
|
||||||
FROM viz_chart V |
|
||||||
order by 3 |
|
||||||
; |
|
||||||
</sqlvar> |
|
||||||
</sqlvars> |
|
||||||
<#if !Semester?exists><#assign Semester=""></#if> <#if !Bezugssemester?exists><#assign Bezugssemester=""/></#if> <#if !Jahr?exists><#assign Jahr=""></#if> <#if !faecherkeys?exists><#assign faecherkeys=""></#if> <#if !Fächer?exists><#assign Fächer={"selectedKey":""}></#if> <#if !Kostenstelle?exists><#assign Kostenstelle={"selectedKey":""}></#if> <#if !(.vars["Datum (Personal)"]?exists)><#assign "Datum (Personal)"=""></#if> <#if !(.vars["Beschäftigungsstelle (Person)"]?exists)><#assign "Beschäftigungsstelle (Person)"=""></#if> |
|
||||||
<navigation><item><href><![CDATA[888880190&maxoffset=100000&Jahr=${Jahr}&Semester=${Semester}&Datum%20(Personal)=${.vars["Datum (Personal)"]}]]></href><caption>Start</caption></item> |
|
||||||
<#if entries?is_sequence><#foreach e in entries> |
|
||||||
<#assign linktimeline=e.linktimeline?interpret/> |
|
||||||
<#assign linkt><@linktimeline/></#assign> <#assign linksub=e.linksub?interpret/> |
|
||||||
<#assign links><@linksub/></#assign> <doubleitem id="${e.catalogue_id}" timeunit="${e.timeunit}" report_id="${e.report_id}" group_id="${e.grouping1}" group_caption="${e.group_caption}"> |
|
||||||
<aktuell><![CDATA[${links?replace('Fakultäten|','')}]]></aktuell> |
|
||||||
<zeitreihe><![CDATA[${linkt?replace('Zeitreihe|','')}]]></zeitreihe> |
|
||||||
<caption><![CDATA[${e.shortname}]]></caption> </doubleitem> </#foreach> |
|
||||||
</#if></navigation> |
|
||||||
<chartProperties> |
|
||||||
<#if commonChartProperties?is_sequence><#foreach cp in commonChartProperties> |
|
||||||
<commonChartProperty tid="${cp.tid}" |
|
||||||
caption="${cp.caption}" |
|
||||||
prop_uniquename="${cp.prop_uniquename}" |
|
||||||
prop_default="${cp.prop_default}" |
|
||||||
static_values="${cp.static_values}" |
|
||||||
input_type_uniquename="${cp.input_type_uniquename}" |
|
||||||
group_caption="${cp.group_caption}" |
|
||||||
group_uniquename="${cp.group_uniquename}" |
|
||||||
prop_unit="${cp.prop_unit}" |
|
||||||
prop_range_from="${cp.range_from}" |
|
||||||
prop_range_to="${cp.range_to}" |
|
||||||
renderer_uniquename="${cp.renderer_uniquename}" |
|
||||||
group_variable_name="${cp.group_variable_name}" |
|
||||||
variable_name="${cp.variable_name}" |
|
||||||
propValueType="${cp.prop_value_type}" |
|
||||||
explanation="${cp.explanation}" |
|
||||||
isGeneric="${cp.is_generic}" |
|
||||||
/> |
|
||||||
</#foreach> |
|
||||||
</#if> |
|
||||||
</chartProperties> |
|
||||||
<vizRenderers> |
|
||||||
<#if vizRenderer?is_sequence> |
|
||||||
<#foreach vr in vizRenderer> |
|
||||||
<vizRenderer |
|
||||||
caption="${vr.caption}" |
|
||||||
uniquename="${vr.uniquename}" |
|
||||||
/> |
|
||||||
</#foreach> |
|
||||||
</#if> |
|
||||||
</vizRenderers> |
|
||||||
<vizTypes> |
|
||||||
<#if vizTypes?is_sequence> |
|
||||||
<#foreach vt in vizTypes> |
|
||||||
<vizType tid="${vt.tid}" |
|
||||||
caption="${vt.caption}" |
|
||||||
uniquename="${vt.uniquename}" |
|
||||||
srcpath="${vt.srcpath}" |
|
||||||
method="${vt.method}" |
|
||||||
orientation="${vt.orientation}" |
|
||||||
renderer_uniquename="${vt.renderer_uniquename}" |
|
||||||
renderer_caption="${vt.renderer_caption}" |
|
||||||
/> |
|
||||||
</#foreach> |
|
||||||
</#if> |
|
||||||
</vizTypes> |
|
||||||
<viz_type_properties> |
|
||||||
<#if viz_type_properties?is_sequence> |
|
||||||
<#foreach tp in viz_type_properties> |
|
||||||
<viz_type_property tid="${tp.tid}" |
|
||||||
caption="${tp.caption}" |
|
||||||
uniquename="${tp.prop_uniquename}" |
|
||||||
viz_type_uniquename="${tp.viz_type_uniquename}" |
|
||||||
viz_property_group_uniquename="${tp.viz_property_group_uniquename}" |
|
||||||
is_mandatory="${tp.is_mandatory}" |
|
||||||
sortnr="${tp.sortnr}" |
|
||||||
/> |
|
||||||
</#foreach> |
|
||||||
</#if> |
|
||||||
</viz_type_properties> |
|
||||||
<viz_charts> |
|
||||||
<#if viz_chart?is_sequence> |
|
||||||
<#foreach ch in viz_chart> |
|
||||||
<viz_chart tid="${ch.tid}" |
|
||||||
caption="${ch.caption}" |
|
||||||
uniquename="${ch.uniquename}" |
|
||||||
userinfo_id="${ch.userinfo_id}" |
|
||||||
description="${ch.description}" |
|
||||||
chartmodel="${ch.chartmodel_escaped}" |
|
||||||
chartmodel_miniature="${ch.chartmodel_miniature_escaped}" |
|
||||||
chart_position="${ch.chart_position}" |
|
||||||
/> |
|
||||||
</#foreach> |
|
||||||
</#if> |
|
||||||
</viz_charts> |
|
@ -1,215 +0,0 @@ |
|||||||
--freemarker template |
|
||||||
|
|
||||||
<#assign makros = [ |
|
||||||
{"tid":"44070"} |
|
||||||
] /> |
|
||||||
|
|
||||||
|
|
||||||
<#assign masken = [ |
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"1"}, |
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"10"}, |
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"20"}, |
|
||||||
|
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"30"}, |
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"40"}, |
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"50"}, |
|
||||||
|
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"60"}, |
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"70"}, |
|
||||||
{"makro":"44070", "tid":"44020", "sortnr":"80"} |
|
||||||
] /> |
|
||||||
|
|
||||||
<#assign felder = [ |
|
||||||
{"makro":"44070", "sortnr":"1", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"1", "feldname":"Felder", "value":"sos_stg_aggr.geschlecht|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"1", "feldname":"Grafik", "value":"1"}, |
|
||||||
{"makro":"44070", "sortnr":"1", "feldname":"Weitere Tabellen", "value":"dim_studiengang"}, |
|
||||||
{"makro":"44070", "sortnr":"1", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"}, |
|
||||||
|
|
||||||
{"makro":"44070", "sortnr":"10", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"10", "feldname":"Felder", "value":"dim_staat.inl_ausl_lang|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"10", "feldname":"Grafik", "value":"2"}, |
|
||||||
{"makro":"44070", "sortnr":"10", "feldname":"Weitere Tabellen", "value":"dim_staat"}, |
|
||||||
{"makro":"44070", "sortnr":"10", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"}, |
|
||||||
|
|
||||||
{"makro":"44070", "sortnr":"20", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"20", "feldname":"Felder", "value":"dim_studiengang.abschlussart_str|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"20", "feldname":"Grafik", "value":"3"}, |
|
||||||
{"makro":"44070", "sortnr":"20", "feldname":"Weitere Tabellen", "value":"dim_studiengang"}, |
|
||||||
{"makro":"44070", "sortnr":"20", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"}, |
|
||||||
|
|
||||||
{"makro":"44070", "sortnr":"30", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"30", "feldname":"Felder", "value":"sos_stg_aggr.geschlecht|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"30", "feldname":"Grafik", "value":"4"}, |
|
||||||
{"makro":"44070", "sortnr":"30", "feldname":"Weitere Tabellen", "value":"dim_studiengang"}, |
|
||||||
{"makro":"44070", "sortnr":"30", "feldname":"bis Fachsemester", "value":"1"}, |
|
||||||
{"makro":"44070", "sortnr":"30", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"}, |
|
||||||
|
|
||||||
{"makro":"44070", "sortnr":"40", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"40", "feldname":"Felder", "value":"dim_staat.inl_ausl_lang|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"40", "feldname":"Grafik", "value":"5"}, |
|
||||||
{"makro":"44070", "sortnr":"40", "feldname":"Weitere Tabellen", "value":"dim_staat"}, |
|
||||||
{"makro":"44070", "sortnr":"40", "feldname":"bis Fachsemester", "value":"1"}, |
|
||||||
{"makro":"44070", "sortnr":"40", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"}, |
|
||||||
|
|
||||||
{"makro":"44070", "sortnr":"50", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"50", "feldname":"Felder", "value":"dim_studiengang.abschlussart_str|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"50", "feldname":"Grafik", "value":"6"}, |
|
||||||
{"makro":"44070", "sortnr":"50", "feldname":"Weitere Tabellen", "value":"dim_studiengang"}, |
|
||||||
{"makro":"44070", "sortnr":"50", "feldname":"bis Fachsemester", "value":"1"}, |
|
||||||
{"makro":"44070", "sortnr":"50", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"}, |
|
||||||
|
|
||||||
{"makro":"44070", "sortnr":"60", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"60", "feldname":"Felder", "value":"sos_stg_aggr.geschlecht|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"60", "feldname":"Grafik", "value":"7"}, |
|
||||||
{"makro":"44070", "sortnr":"60", "feldname":"Weitere Tabellen", "value":"dim_studiengang"}, |
|
||||||
{"makro":"44070", "sortnr":"60", "feldname":"Filter Studierende", "value":"SOS_HSSEM_1"}, |
|
||||||
{"makro":"44070", "sortnr":"60", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"}, |
|
||||||
|
|
||||||
{"makro":"44070", "sortnr":"70", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"70", "feldname":"Felder", "value":"dim_staat.inl_ausl_lang|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"70", "feldname":"Grafik", "value":"8"}, |
|
||||||
{"makro":"44070", "sortnr":"70", "feldname":"Weitere Tabellen", "value":"dim_staat"}, |
|
||||||
{"makro":"44070", "sortnr":"70", "feldname":"Filter Studierende", "value":"SOS_HSSEM_1"}, |
|
||||||
{"makro":"44070", "sortnr":"70", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"}, |
|
||||||
|
|
||||||
{"makro":"44070", "sortnr":"80", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"}, |
|
||||||
{"makro":"44070", "sortnr":"80", "feldname":"Felder", "value":"dim_studiengang.abschlussart_str|sos_stg_aggr.sem_rueck_beur_ein|sos_stg_aggr.summe"}, |
|
||||||
{"makro":"44070", "sortnr":"80", "feldname":"Grafik", "value":"9"}, |
|
||||||
{"makro":"44070", "sortnr":"80", "feldname":"Weitere Tabellen", "value":"dim_studiengang"}, |
|
||||||
{"makro":"44070", "sortnr":"80", "feldname":"Filter Studierende", "value":"SOS_HSSEM_1"}, |
|
||||||
{"makro":"44070", "sortnr":"80", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"} |
|
||||||
|
|
||||||
] /> |
|
||||||
|
|
||||||
-- ab hier nicht mehr ändern: |
|
||||||
|
|
||||||
CREATE TEMP TABLE tmp_macro_masken_bez ( |
|
||||||
maskeninfo_id1 integer NOT NULL, |
|
||||||
maskeninfo_id2 integer NOT NULL, |
|
||||||
active integer DEFAULT 1 NOT NULL, |
|
||||||
sortnr smallint NOT NULL, |
|
||||||
schleifenrelation character(255), |
|
||||||
schleifenfeldname character(255), |
|
||||||
alias character(255), |
|
||||||
schleifenfstand character(255), |
|
||||||
schleifenfsicht character(255), |
|
||||||
aktion character(255) |
|
||||||
); |
|
||||||
CREATE TEMP TABLE tmp_macro_feld_wert ( |
|
||||||
macro integer NOT NULL, |
|
||||||
sortnr integer NOT NULL, |
|
||||||
feldname character(255) NOT NULL, |
|
||||||
alias character(255) NOT NULL, |
|
||||||
value character(255), |
|
||||||
value_caption character(255), |
|
||||||
feldstand character(255), |
|
||||||
feldsicht character(255), |
|
||||||
active integer DEFAULT 1 NOT NULL |
|
||||||
); |
|
||||||
|
|
||||||
|
|
||||||
<#foreach makro in makros> |
|
||||||
<#foreach maske in masken> |
|
||||||
<#if maske.makro==makro.tid> |
|
||||||
|
|
||||||
insert into tmp_macro_masken_bez(maskeninfo_id1, |
|
||||||
maskeninfo_id2, |
|
||||||
active, |
|
||||||
sortnr) |
|
||||||
select ${makro.tid},--maskeninfo_id1, |
|
||||||
${maske.tid},--maskeninfo_id2, |
|
||||||
1,--active, |
|
||||||
${maske.sortnr} --sortnr |
|
||||||
from xdummy; |
|
||||||
|
|
||||||
<#foreach feld in felder> |
|
||||||
<#if feld.makro==makro.tid && feld.sortnr==maske.sortnr> |
|
||||||
|
|
||||||
--Tab.12: alle ohne Exmatr |
|
||||||
insert into tmp_macro_feld_wert |
|
||||||
( macro, |
|
||||||
sortnr, |
|
||||||
feldname, |
|
||||||
alias, |
|
||||||
value, |
|
||||||
value_caption, |
|
||||||
feldstand, |
|
||||||
feldsicht, |
|
||||||
active) |
|
||||||
SELECT ${makro.tid}, --macro |
|
||||||
${maske.sortnr},--sortnr |
|
||||||
'${feld.feldname}',--feldname, |
|
||||||
'',--alias, |
|
||||||
'${feld.value}', --value, |
|
||||||
'',--value_caption, |
|
||||||
'', --feldstand, |
|
||||||
'',--feldsicht, |
|
||||||
1 --active |
|
||||||
FROM xdummy; |
|
||||||
|
|
||||||
</#if> |
|
||||||
</#foreach> |
|
||||||
|
|
||||||
|
|
||||||
</#if> |
|
||||||
</#foreach> |
|
||||||
</#foreach> |
|
||||||
|
|
||||||
|
|
||||||
delete from macro_masken_bez where maskeninfo_id1 in (select maskeninfo_id1 from tmp_macro_masken_bez) |
|
||||||
; |
|
||||||
|
|
||||||
|
|
||||||
insert into macro_masken_bez |
|
||||||
(maskeninfo_id1, |
|
||||||
maskeninfo_id2, |
|
||||||
active, |
|
||||||
sortnr, |
|
||||||
schleifenrelation, |
|
||||||
schleifenfeldname, |
|
||||||
alias, |
|
||||||
schleifenfstand, |
|
||||||
schleifenfsicht, |
|
||||||
aktion) |
|
||||||
select maskeninfo_id1, |
|
||||||
maskeninfo_id2, |
|
||||||
active, |
|
||||||
sortnr, |
|
||||||
schleifenrelation, |
|
||||||
schleifenfeldname, |
|
||||||
alias, |
|
||||||
schleifenfstand, |
|
||||||
schleifenfsicht, |
|
||||||
aktion |
|
||||||
FROM tmp_macro_masken_bez |
|
||||||
; |
|
||||||
|
|
||||||
delete from macro_feld_wert where macro in (select macro from tmp_macro_feld_wert); |
|
||||||
|
|
||||||
insert into macro_feld_wert |
|
||||||
( macro, |
|
||||||
sortnr, |
|
||||||
feldname, |
|
||||||
alias, |
|
||||||
value, |
|
||||||
value_caption, |
|
||||||
feldstand, |
|
||||||
feldsicht, |
|
||||||
active) |
|
||||||
SELECT macro, |
|
||||||
sortnr, |
|
||||||
feldname, |
|
||||||
alias, |
|
||||||
value, |
|
||||||
value_caption, |
|
||||||
feldstand, |
|
||||||
feldsicht, |
|
||||||
active |
|
||||||
FROM tmp_macro_feld_wert; |
|
||||||
|
|
||||||
|
|
||||||
drop table tmp_macro_masken_bez; |
|
||||||
drop table tmp_macro_feld_wert; |
|
||||||
|
|
||||||
|
|
@ -1,182 +0,0 @@ |
|||||||
--Freemarker Template |
|
||||||
--Achtung: Macro fügt Inhalte ein |
|
||||||
--Bitte nur Freemarker Variablen füllen |
|
||||||
<sqlvars> |
|
||||||
<sqlvar name="viz_installed"> |
|
||||||
select count(*) from db_version where his_system ='viz'; |
|
||||||
</sqlvar> |
|
||||||
</sqlvars> |
|
||||||
|
|
||||||
|
|
||||||
<#assign masken = [ |
|
||||||
{"mask":"30190", "filename":"30190_html_chart_sankey.xsl", "ord":"130"} |
|
||||||
] /> |
|
||||||
|
|
||||||
<#assign stylesheet = [ |
|
||||||
{"filename":"30190_html_chart_sankey.xsl", |
|
||||||
"caption":"BA-MA Übergang Diagramm erzeugen", |
|
||||||
"description":"Sankey-Diagramm", |
|
||||||
"relation":"table", |
|
||||||
"contenttype":"text/html", |
|
||||||
"is_generic":"0" |
|
||||||
} |
|
||||||
] /> |
|
||||||
<#assign stylesheet_field = [ |
|
||||||
{"filename":"30190_html_chart_sankey.xsl", "tablename":"erfolg_ba_ma_uebergang", "fieldname":"abschluss_vorher_abschluss"}, |
|
||||||
{"filename":"30190_html_chart_sankey.xsl", "tablename":"erfolg_ba_ma_uebergang", "fieldname":"einschr_nachher_abschluss"}, |
|
||||||
{"filename":"30190_html_chart_sankey.xsl", "tablename":"erfolg_ba_ma_uebergang", "fieldname":"summe"} |
|
||||||
|
|
||||||
] /> |
|
||||||
|
|
||||||
<#if viz_installed==1> |
|
||||||
--Hier eventuell notwendige delete's auf die Tabellen sx_mask_style, sx_stylesheets oder stylesheet_field einfügen. |
|
||||||
|
|
||||||
--Achtung: ab hier nicht ändern, Mutterdatei ist $SUPERX_DIR/db/module/sos/schluesseltabellen/sx_stylesheets_fuellen.sql |
|
||||||
<@sx_stylesheets_insert |
|
||||||
m_masken=masken |
|
||||||
m_stylesheet=stylesheet |
|
||||||
m_stylesheet_field=stylesheet_field |
|
||||||
/> |
|
||||||
|
|
||||||
</#if> |
|
||||||
|
|
||||||
<#macro sx_stylesheets_insert m_masken m_stylesheet m_stylesheet_field> |
|
||||||
|
|
||||||
--Sicherstellen, dass keine Duplikate vorkommen: |
|
||||||
--#################################################################################################### |
|
||||||
<#foreach column in m_masken> |
|
||||||
delete from sx_mask_style where maskeninfo_id=${column.mask} and stylesheet_id in (select tid from sx_stylesheets where filename ='${column.filename}') and ord=${column.ord}; |
|
||||||
</#foreach> |
|
||||||
|
|
||||||
<#foreach column in m_stylesheet_field> |
|
||||||
delete from stylesheet_field where stylesheet_id in (select tid from sx_stylesheets where filename ='${column.filename}'); |
|
||||||
</#foreach> |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Stylesheets füllen |
|
||||||
--#################################################################################################### |
|
||||||
create temp table tmp_stylesheets ( |
|
||||||
tid serial not null, |
|
||||||
filename CHAR(255) , |
|
||||||
caption CHAR(255) , |
|
||||||
description CHAR(255) , |
|
||||||
relation CHAR(10) , |
|
||||||
useragent CHAR(255) , |
|
||||||
contenttype CHAR(200) , |
|
||||||
is_generic smallint |
|
||||||
); |
|
||||||
|
|
||||||
create temp table tmp_hilf (tid integer); |
|
||||||
insert into tmp_hilf select max(tid) from sx_stylesheets; |
|
||||||
update tmp_hilf set tid=1 where tid is null; |
|
||||||
|
|
||||||
<#assign counter_tid = 1 /> |
|
||||||
<#foreach column in m_stylesheet> |
|
||||||
insert into tmp_stylesheets (tid,filename,caption,description,relation,contenttype,is_generic) |
|
||||||
select max(tid)+${counter_tid},'${column.filename}', |
|
||||||
'${column.caption}', |
|
||||||
'${column.description}', |
|
||||||
'${column.relation}', |
|
||||||
'${column.contenttype}', |
|
||||||
${column.is_generic} |
|
||||||
from tmp_hilf; |
|
||||||
<#assign counter_tid = counter_tid + 1 /> |
|
||||||
</#foreach> |
|
||||||
|
|
||||||
<#if TableFieldExists?exists && TableFieldExists('sx_stylesheets','is_generic')> |
|
||||||
update sx_stylesheets set is_generic=1 |
|
||||||
where filename in (select T.filename from tmp_stylesheets T where T.is_generic=1); |
|
||||||
</#if> |
|
||||||
|
|
||||||
|
|
||||||
--delete für tml_stylesheets hinzugefügt #ak 06.03.2013 |
|
||||||
delete from tmp_stylesheets where filename in (select filename from sx_stylesheets); |
|
||||||
|
|
||||||
|
|
||||||
insert into sx_stylesheets (tid, |
|
||||||
filename, caption, description, relation, useragent, contenttype |
|
||||||
<#if TableFieldExists?exists && TableFieldExists('sx_stylesheets','is_generic')> |
|
||||||
,is_generic |
|
||||||
</#if> |
|
||||||
) |
|
||||||
SELECT tid, filename, caption, description, relation, useragent, contenttype |
|
||||||
<#if TableFieldExists?exists && TableFieldExists('sx_stylesheets','is_generic')> |
|
||||||
,is_generic |
|
||||||
</#if> |
|
||||||
FROM tmp_stylesheets; |
|
||||||
|
|
||||||
drop table tmp_stylesheets; |
|
||||||
|
|
||||||
|
|
||||||
-- Mask Style füllen |
|
||||||
--#################################################################################################### |
|
||||||
create temp table tmp_mask_style ( |
|
||||||
tid serial not null, |
|
||||||
maskeninfo_id INTEGER , |
|
||||||
stylesheet_id INTEGER , |
|
||||||
ord SMALLINT, |
|
||||||
filename char(255) |
|
||||||
); |
|
||||||
|
|
||||||
delete from tmp_hilf; |
|
||||||
insert into tmp_hilf select max(tid) from sx_mask_style; |
|
||||||
update tmp_hilf set tid=1 where tid is null; |
|
||||||
|
|
||||||
<#assign counter_tid = 1 /> |
|
||||||
<#foreach column in m_masken> |
|
||||||
insert into tmp_mask_style (tid,maskeninfo_id,ord,filename) |
|
||||||
select max(tid)+${counter_tid},${column.mask},${column.ord},'${column.filename}' from tmp_hilf; |
|
||||||
|
|
||||||
update tmp_mask_style set stylesheet_id=(select max(tid) from sx_stylesheets where filename='${column.filename}') |
|
||||||
where filename='${column.filename}'; |
|
||||||
<#assign counter_tid = counter_tid + 1 /> |
|
||||||
</#foreach> |
|
||||||
|
|
||||||
insert into sx_mask_style ( tid, maskeninfo_id, stylesheet_id, ord) |
|
||||||
SELECT tid, maskeninfo_id, stylesheet_id, ord |
|
||||||
FROM tmp_mask_style; |
|
||||||
|
|
||||||
drop table tmp_mask_style; |
|
||||||
|
|
||||||
|
|
||||||
--Field zu Stylesheet Zuordnungen: |
|
||||||
--#################################################################################################### |
|
||||||
CREATE temp TABLE tmp_stylesheet_field |
|
||||||
( |
|
||||||
tid serial NOT NULL, |
|
||||||
stylesheet_id INTEGER, |
|
||||||
tablename char(255), |
|
||||||
fieldname char(255), |
|
||||||
filename char(255) |
|
||||||
); |
|
||||||
|
|
||||||
delete from tmp_hilf; |
|
||||||
insert into tmp_hilf select max(tid) from stylesheet_field; |
|
||||||
update tmp_hilf set tid=1 where tid is null; |
|
||||||
|
|
||||||
<#assign counter_tid = 1 /> |
|
||||||
<#foreach column in m_stylesheet_field> |
|
||||||
INSERT INTO tmp_stylesheet_field (tid, filename, tablename, fieldname) |
|
||||||
select max(tid)+${counter_tid}, '${column.filename}', '${column.tablename}', '${column.fieldname}' from tmp_hilf; |
|
||||||
|
|
||||||
update tmp_stylesheet_field set stylesheet_id=(select max(tid) from sx_stylesheets where filename='${column.filename}') |
|
||||||
where filename='${column.filename}'; |
|
||||||
<#assign counter_tid = counter_tid + 1 /> |
|
||||||
</#foreach> |
|
||||||
|
|
||||||
insert into stylesheet_field ( tid, stylesheet_id, tablename, fieldname) |
|
||||||
SELECT tid, stylesheet_id, tablename, fieldname |
|
||||||
FROM tmp_stylesheet_field; |
|
||||||
|
|
||||||
drop table tmp_stylesheet_field; |
|
||||||
drop table tmp_hilf; |
|
||||||
|
|
||||||
<#if SQLdialect='Postgres'> |
|
||||||
select sp_update_sequence('sx_stylesheets'); |
|
||||||
select sp_update_sequence('sx_mask_style'); |
|
||||||
select sp_update_sequence('stylesheet_field'); |
|
||||||
</#if> |
|
||||||
|
|
||||||
</#macro> |
|
@ -1,9 +0,0 @@ |
|||||||
2^STUD_ENTW_SEM_STAAT_LINE^Studierende nach Nationalität^ ^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"1","nr":2,"name":"Tab. 2","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"1","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"dim_staat_inl_ausl_lang"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studierende nach Nationalität"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"96","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":1,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
||||||
4^STUD_ENTW_SEM_GESCHL_LINE_1^Studienanfänger_innen nach Geschlecht^ ^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"3","nr":4,"name":"Tab. 4","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"3","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"sos_stg_aggr_geschlecht_str"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studienanfänger_innen nach Geschlecht"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"100","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":3,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
||||||
5^STUD_ENTW_SEM_STAAT_LINE_1^Studienanfänger_innen nach Nationalität^ ^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"4","nr":5,"name":"Tab. 5","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"4","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"dim_staat_inl_ausl_lang"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studienanfänger_innen nach Nationalität"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"96","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":4,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
||||||
3^STUD_ENTW_SEM_ABSCHLUSS_LINE^Studierende nach Abschlussart^ ^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"2","nr":3,"name":"Tab. 3","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"2","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"dim_studiengang_abschlussart_str"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studierende nach Abschlussart"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"96","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":2,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
||||||
6^STUD_ENTW_SEM_ABSCHLUSS_LINE_1^Studienanfänger_innen nach Abschlussart^ ^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"5","nr":6,"name":"Tab. 6","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"5","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"dim_studiengang_abschlussart_str"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studienanfänger_innen nach Abschlussart"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"96","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":5,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
||||||
1^STUD_ENTW_SEM_GESCHL_LINE^Studierende nach Geschlecht^TEST^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"0","nr":1,"name":"Tab. 1","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"0","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"sos_stg_aggr_geschlecht_str"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studierende nach Geschlecht"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"100","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":0,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
||||||
8^STUD_ENTW_SEM_STAAT_LINE_1HS^Studienanfänger_innen 1. HS nach Nationalität^ ^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"7","nr":8,"name":"Tab. 8","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"7","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"dim_staat_inl_ausl_lang"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studienanfänger_innen 1. HS nach Nationalität"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"96","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":7,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
||||||
7^STUD_ENTW_SEM_GESCHL_LINE_1HS^Studienanfänger_innen 1. HS nach Geschlecht^ ^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"6","nr":7,"name":"Tab. 7","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"6","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"sos_stg_aggr_geschlecht_str"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studienanfänger_innen 1. HS nach Geschlecht"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"100","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":6,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
||||||
9^STUD_ENTW_SEM_ABSCHLUSS_LINE_1HS^Studienanfänger_innen 1. HS nach Abschlussart^ ^{"version":"0.2b","id":1,"name":"","renderer":"plot","dataSources":[{"value":"8","nr":9,"name":"Tab. 9","isDefault":true}],"targetDiv":"","chartElements":[{"nr":0,"vizTypeUniquename":"line","caption":"line","datasource":"8","elementTypeProperties":[{"nr":0,"vizTypePropertyUniquename":"x","caption":"X-Achse","propertyValue":"sos_stg_aggr_sem_rueck_beur_ein_str"},{"nr":0,"vizTypePropertyUniquename":"y","caption":"Y-Achse","propertyValue":"sos_stg_aggr_summe"},{"nr":0,"vizTypePropertyUniquename":"stroke","caption":"Serien-Dimension","propertyValue":"dim_studiengang_abschlussart_str"}]}],"chartPropertiesUsed":[{"name":"caption","vizPropertyVariablename":"caption","propertyValue":"Studienanfänger_innen 1. HS nach Abschlussart"},{"name":"height","vizPropertyVariablename":"height","propertyValue":"450","propUnit":""},{"name":"width","vizPropertyVariablename":"width","propertyValue":"650","propUnit":""},{"name":"marginLeft","vizPropertyVariablename":"marginLeft","propertyValue":"100","propUnit":""},{"name":"marginTop","vizPropertyVariablename":"marginTop","propertyValue":"35","propUnit":""},{"name":"marginBottom","vizPropertyVariablename":"marginBottom","propertyValue":"96","propUnit":""},{"name":"backgroundColor","vizPropertyVariablename":"backgroundColor","propertyValue":"#ffffff","propUnit":""},{"name":"color","vizPropertyVariablename":"color","propertyValue":"#000000","propUnit":""},{"name":"fontFamily","vizPropertyVariablename":"fontFamily","propertyValue":"system_ui","propUnit":""},{"name":"fontSize","vizPropertyVariablename":"fontSize","propertyValue":"12","propUnit":"px"},{"name":"fill_static","vizPropertyVariablename":"fill","propertyValue":"#000000","propUnit":""},{"name":"label_y","vizPropertyVariablename":"label","propertyValue":"Anzahl Studierende","propUnit":""},{"name":"line_y","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"label_x","vizPropertyVariablename":"label","propertyValue":"Semester","propUnit":""},{"name":"line_x","vizPropertyVariablename":"line","propertyValue":"true","propUnit":""},{"name":"tickRotate_x","vizPropertyVariablename":"tickRotate","propertyValue":"-30","propUnit":""},{"name":"scheme","vizPropertyVariablename":"scheme","propertyValue":"tableau10","propUnit":""},{"name":"legend","vizPropertyVariablename":"legend","propertyValue":"true","propUnit":""}],"dataTransformation":[{"tableId":8,"colname":"sos_stg_aggr_sem_rueck_beur_ein_str","colfunction":"switchWord1and2ff"}]}^ ^1^^^44070^ ^2^^^ |
|
@ -1,56 +1,49 @@ |
|||||||
1^Grafik-Höhe^height^450^ ^1^ ^0^4^10^Diagrammhöhe (exkl. Skalenbeschriftung). Wird nur ausgewertet wenn es keine Y-Achse gibt!^101^^^integer^ |
1^Diagramm-Höhe^height^^px^1^ ^0^4^10^Diagrammhöhe (exkl. Skalenbeschriftung). Wird nur ausgewertet wenn es keine Y-Achse gibt!^101^^^integer^ |
||||||
2^Grafik-Breite^width^650^ ^1^ ^0^4^10^Diagrammsbreite (exkl.Skalenbeschriftung)^102^100^2000^integer^ |
2^Diagramm-Breite^width^^px^1^ ^0^4^10^Diagrammsbreite (exkl.Skalenbeschriftung)^102^100^2000^integer^ |
||||||
3^Werte-Label-Breite^valueLabelWidth^^^0^^0^1^18^^^^^integer^ |
3^Werte-Label-Breite^valueLabelWidth^^px^1^^0^1^18^^^^^integer^ |
||||||
4^Hintergrundfarbe^backgroundColor^#ffffff^ ^0^#ffffeb^0^3^11^Hintergrundfarbe der Grafik^201^^^string^ |
4^Hintergrundfarbe^backgroundColor^#ffffff^ ^1^#ffffeb^0^3^11^Hintergrundfarbe der Grafik^201^^^string^ |
||||||
5^Schriftfarbe^color^ ^ ^0^black^0^3^11^Farbe von Text- und Diagrammelementen^202^^^string^ |
5^Vordergrundfarbe^color^^ ^1^black^0^3^11^Farbe von Text- und Diagrammelementen^202^^^string^ |
||||||
6^Schriftgröße^fontSize^^px^0^ ^0^4^11^Schriftgröße der Skalenbeschriftung^204^^^integer^ |
6^Schriftgröße^fontSize^^px^1^ ^0^4^11^Schriftgröße der Skalenbeschriftung^204^^^integer^ |
||||||
7^Schriftfamilie^fontFamily^^ ^0^serif|sans-serif|monospace|system_ui^0^2^11^Schriftfamlilie der Skalenbeschriftung^203^^^string^ |
7^Schriftfamilie^fontFamily^^ ^1^serif|sans-serif|monospace|system_ui^0^2^11^Schriftfamlilie der Skalenbeschriftung^203^^^string^ |
||||||
8^Flächenfarbe^fill_static^ ^ ^0^ ^0^3^11^Nur für Grafikelemente Flächen und Balken. Füllfarbe.^305^^^string^ |
8^Flächenfarbe^fill_static^^ ^1^ ^0^3^10^Füllfarbe (nur) von Diagrammelementen (Flächen, Balken, Säulen, Streifen, Punkte)^305^^^string^ |
||||||
11^X: Schriftneigung^tickRotate_x^^ ^0^ ^0^1^18^Neigungswinkel der Achsenwerte^604^^^integer^ |
11^X: Schriftneigung^tickRotate_x^^ ^1^ ^0^1^18^Neigungswinkel der Achsenwerte^604^^^integer^ |
||||||
12^X: Skalierung^ticks_x^^ ^0^ ^0^1^18^Feinheit der Wertegliederung^605^^^integer^ |
12^X: Skalierung^ticks_x^^ ^1^ ^0^1^18^Feinheit der Wertegliederung^605^^^integer^ |
||||||
13^X: Schriftgröße^tickSize_x^^ ^0^ ^0^1^18^Größe der Achsenwerte^603^^^integer^ |
13^X: Schriftgröße^tickSize_x^^ ^1^ ^0^1^18^Größe der Achsenwerte^603^^^integer^ |
||||||
15^X: Label-Ausrichtung^labelAnchor_x^^ ^0^left|center|right^0^2^18^Label-Position^601^^^string^ |
15^X: Label-Ausrichtung^labelAnchor_x^^ ^1^left|center|right^0^2^18^Label-Position^601^^^string^ |
||||||
16^Außenrand links^marginLeft^100^^0^ ^0^4^10^Abstand zwischen Grafik und linkem Hintergrundrand^103^^^integer^ |
16^Außenrand links^marginLeft^100^px^1^ ^0^4^10^Abstand links neben der Grafik (inkl. Skala)^103^^^integer^ |
||||||
17^Außenrand rechts^marginRight^ ^^0^ ^0^4^10^Abstand zwischen Grafik und rechtem Hintergrundrand^104^^^integer^ |
17^Außenrand rechts^marginRight^^px^1^ ^0^4^10^Abstand rechts neben der Grafik (inkl. Skala)^104^^^integer^ |
||||||
18^Außenrand oben^marginTop^ ^^0^ ^0^4^10^Abstand zwischen Grafik und oberem Hintergrundrand^105^^^integer^ |
18^Außenrand oben^marginTop^^px^1^ ^0^4^10^Abstand oberhalb der Grafik^105^^^integer^ |
||||||
19^Außenrand unten^marginBottom^ ^^0^ ^0^4^10^Abstand zwischen Grafik und unterem Hintergrundrand^106^^^integer^ |
19^Außenrand unten^marginBottom^^px^1^ ^0^4^10^ ^106^^^integer^ |
||||||
20^Innenrand oben^insetTop^ ^^0^ ^0^4^10^Abstand zwischen Grafik und Achsenbeschriftung oben^107^^^integer^ |
20^Innenrand oben^insetTop^^px^1^ ^0^4^10^Oberer Abstand zwischen Diagramm und Grafik^107^^^integer^ |
||||||
21^Innenrand unten^insetBottom^ ^^0^ ^0^4^10^Abstand zwischen Grafik und Achsenbeschriftung unten^108^^^integer^ |
21^Innenrand unten^insetBottom^^px^1^ ^0^4^10^Unterer Abstand zwischen Diagramm und Grafik^108^^^integer^ |
||||||
22^Innenrand links^insetLeft^ ^^0^ ^0^4^10^Abstand zwischen Grafik und Achsenbeschriftung links^109^^^integer^ |
22^Innenrand links^insetLeft^^px^1^ ^0^4^10^Linker Abstand zwischen Diagramm und Grafik^109^^^integer^ |
||||||
23^Innenrand rechts^insetRight^ ^^0^ ^0^4^10^Abstand zwischen Grafik und Achsenbeschriftung rechts^110^^^integer^ |
23^Innenrand rechts^insetRight^^px^1^ ^0^4^10^Rechter Abstand zwischen Diagramm und Grafik^110^^^integer^ |
||||||
24^Farbschema^scheme^ ^ ^0^blues|greens|greys|oranges|purples|reds|paired|set1|pastel1|pastel2|tableau10|category10|accent|dark2^0^2^22^Nur für Grafikelemente Balken und Linien: Farbtonschema für Serien.^303^^^string^ |
24^Farbschema^scheme^^ ^1^blues|greens|greys|oranges|purples|reds^0^2^20^Farbschema von Diagrammelemente^303^^^string^ |
||||||
25^Farbtyp^type^^ ^0^einfarbig|mehrfarbig|zyklisch^0^2^20^Ein-/Mehrfarbigkeit von Diagrammelementen^302^^^string^ |
25^Farbtyp^type^^ ^1^einfarbig|mehrfarbig|zyklisch^0^2^12^Ein-/Mehrfarbigkeit von Diagrammelementen^302^^^string^ |
||||||
43^Farbsättigung^fillOpacity^^ ^0^ ^0^4^20^Deckkraft der Füllfarbe von Diagrammelementen^306^^^string^ |
43^Farbsättigung^fillOpacity^^ ^1^ ^0^4^12^Deckkraft der Füllfarbe von Diagrammelementen^306^^^string^ |
||||||
45^Strichdicke^strokeWidth^^ ^0^ ^0^1^12^Strichdicke von Diagrammelementen (relevant für Plot.dot, Plot.tickX/Y)^308^^^string^ |
45^Strichdicke^strokeWidth^^ ^1^ ^0^1^12^Strichdicke von Diagrammelementen (relevant für Plot.dot, Plot.tickX/Y)^308^^^string^ |
||||||
56^Fortlaufende Skala^continous scales^^ ^0^identity|linear|log|pow|sqrt|symlog^0^2^15^Art der Skalen-Gliederung^401^^^string^ |
56^Fortlaufende Skala^continous scales^^ ^1^identity|linear|log|pow|sqrt|symlog^0^2^15^Art der Skalen-Gliederung^401^^^string^ |
||||||
57^Kategorie-Skala^categorical scales^^ ^0^point|band^0^2^15^Art der Skalen-Gliederung^402^^^string^ |
57^Kategorie-Skala^categorical scales^^ ^1^point|band^0^2^15^Art der Skalen-Gliederung^402^^^string^ |
||||||
58^Datums-Skala^date scales^^ ^0^time|utc^0^2^15^Art der Skalen-Gliederung^403^^^string^ |
58^Datums-Skala^date scales^^ ^1^time|utc^0^2^15^Art der Skalen-Gliederung^403^^^string^ |
||||||
60^Farbschema-Typ^schemetype^^ ^0^linear|sqrt|pow|log|symlog|sequential|cyclical|quantile^0^2^20^Art der Farbverteilung in Diagrammelementen^304^^^string^ |
60^Farbschema-Typ^schemetype^^ ^1^linear|sqrt|pow|log|symlog|sequential|cyclical|quantile^0^2^12^Art der Farbverteilung in Diagrammelementen^304^^^string^ |
||||||
61^Grafik-Elementtyp^marks^ ^ ^0^Plot.line|Plot.dot|Plot.areaX|Plot.areaY.|Plot.barX|Plot.barY|Plot.rectX|Plot.rectY|Plot.ruleX|Plot.ruleY|Plot.tickX|Plot.tickY|Plot.arrow|Plot.cell|Plot.text|Plot.link|Plot.image^0^2^12^Ausrichtung und Form der grafischen Elemente^301^^^string^ |
61^Elementtyp^marks^^ ^1^Plot.line|Plot.dot|Plot.areaX|Plot.areaY.|Plot.barX|Plot.barY|Plot.rectX|Plot.rectY|Plot.ruleX|Plot.ruleY|Plot.tickX|Plot.tickY|Plot.arrow|Plot.cell|Plot.text|Plot.link|Plot.image^0^2^12^Ausrichtung und Form der Dialgrammelemente^301^^^string^ |
||||||
63^X: Label-Abstand^labelOffset_x^^^0^ ^0^1^18^Label-Abstand von Achse^602^^^integer^ |
63^X: Label-Abstand^labelOffset_x^^px^1^ ^0^1^18^Label-Abstand von Achse^602^^^integer^ |
||||||
68^Maß: Chart-Abstand^gridChartOffset^^ ^0^ ^0^1^18^ ^607^^^string^ |
68^Maß: Chart-Abstand^gridChartOffset^^ ^1^ ^0^1^18^ ^607^^^string^ |
||||||
69^Maß: Label-Höhe^gridLabelHeight^^^0^ ^0^1^18^ ^608^^^integer^ |
69^Maß: Label-Höhe^gridLabelHeight^^px^1^ ^0^1^18^ ^608^^^integer^ |
||||||
70^X-Achse^x^^ ^0^ ^0^1^5^ ^608^^^string^ |
70^X-Achse^x^^ ^1^ ^0^1^5^ ^608^^^string^ |
||||||
72^Y-Achse^y^^ ^0^ ^0^1^6^ ^608^^^string^ |
71^Kategorie-Dimension 2^viz_dimension2^^ ^1^ ^0^1^5^ ^608^^^string^ |
||||||
73^Maß 1^measure1^^ ^0^ ^0^1^6^ ^608^^^string^ |
72^Y-Achse^y^^ ^1^ ^0^1^6^ ^608^^^string^ |
||||||
76^Serien-Dimension^stroke^^ ^0^ ^0^1^5^ ^608^^^string^ |
73^Maß 2^viz_measure2^^ ^1^ ^0^1^6^ ^608^^^string^ |
||||||
78^Legende^legend^ ^ ^0^true|false^0^2^22^ ^303^^^boolean^ |
76^Serien-Dimension^stroke^^ ^1^ ^0^1^5^ ^608^^^string^ |
||||||
79^Beschriftung^text^ ^ ^0^ ^0^1^5^ ^608^^^string^ |
78^Legende^legend^^ ^1^true|false^0^2^20^ ^303^^^boolean^ |
||||||
80^Serienfarbe^fill^ ^ ^0^ ^0^1^22^Nur für Grafikelemente Balken und Linien: Merkmal der Serien-Dimension^305^^^string^ |
79^Textbeschriftung^text^^ ^1^ ^0^1^5^ ^608^^^string^ |
||||||
81^Y: Label-Abstand^labelOffset_y^^^0^ ^0^1^21^Label-Abstand von Achse^602^^^integer^ |
80^Serienfarbe^fill^^ ^1^ ^0^1^5^Füllfarbe (nur) von Diagrammelementen (Flächen, Balken, Säulen, Streifen, Punkte)^305^^^string^ |
||||||
82^Y: Label-Ausrichtung^labelAnchor_y^^ ^0^left|center|right^0^2^21^Label-Position^601^^^string^ |
81^Y: Label-Abstand^labelOffset_y^^px^1^ ^0^1^21^Label-Abstand von Achse^602^^^integer^ |
||||||
83^Y: Schriftgröße^tickSize_y^^ ^0^ ^0^1^21^Größe der Achsenwerte^603^^^integer^ |
82^Y: Label-Ausrichtung^labelAnchor_y^^ ^1^left|center|right^0^2^21^Label-Position^601^^^string^ |
||||||
84^Y: Schriftneigung^tickRotate_y^^ ^0^ ^0^1^21^Neigungswinkel der Achsenwerte^604^^^integer^ |
83^Y: Schriftgröße^tickSize_y^^ ^1^ ^0^1^21^Größe der Achsenwerte^603^^^integer^ |
||||||
85^Y: Skalierung^ticks_y^^ ^0^ ^0^1^21^Feinheit der Wertegliederung^605^^^integer^ |
84^Y: Schriftneigung^tickRotate_y^^ ^1^ ^0^1^21^Neigungswinkel der Achsenwerte^604^^^integer^ |
||||||
86^X: Label^label_x^^ ^0^ ^0^1^18^Label X-Achse^602^^^string^ |
85^Y: Skalierung^ticks_y^^ ^1^ ^0^1^21^Feinheit der Wertegliederung^605^^^integer^ |
||||||
87^Y: Label^label_y^^ ^0^ ^0^1^21^Label Y-Achse^602^^^string^ |
86^X: Label^label_x^^ ^1^ ^0^1^18^Label X-Achse^602^^^string^ |
||||||
88^Punktdicke^r^^ ^0^ ^0^1^5^Punktdicke von Diagrammelementen (relevant für Plot.dot, Plot.tickX/Y)^308^^^string^ |
87^Y: Label^label_y^^ ^1^ ^0^1^21^Label Y-Achse^602^^^string^ |
||||||
91^Quell-Dimension^viz_source^^ ^0^ ^0^1^5^ ^608^^^string^ |
88^Punktdicke^r^^ ^1^ ^0^1^5^Punktdicke von Diagrammelementen (relevant für Plot.dot, Plot.tickX/Y)^308^^^string^ |
||||||
92^Ziel-Dimension 1^viz_target1^^ ^0^ ^0^1^5^ ^608^^^string^ |
89^Sortierung^sort^^ ^1^ ^0^1^5^ ^608^^^string^ |
||||||
93^X: Linie^line_x^true^ ^0^true|false^0^2^18^Linie X-Achse^602^^^boolean^ |
|
||||||
94^Y: Linie^line_y^true^ ^0^true|false^0^2^21^Linie Y-Achse^602^^^boolean^ |
|
||||||
95^Dimension 1^dimension1^^ ^0^ ^0^1^5^ ^608^^^string^ |
|
||||||
96^Dimension 2^dimension2^^ ^0^ ^0^1^5^ ^608^^^string^ |
|
||||||
97^Leerzeilen-Maskierung^null_value_mask^ ^ ^0^ ^0^1^10^Text, der ersetzt wird, wenn eine Dimension leer ist, z.B. *Andere Hochschule* bei BA-MA-Übergang^700^^^string^ |
|
||||||
98^Y-Wertebereich^domain^ ^ ^1^ ^0^1^21^Bittte Wertebereich mit [] eingeben, z.B. [0,100] für 0-100^1000^^^js^ |
|
||||||
99^X: Skala^scale_x^band^ ^1^linear|identity|point|band|time^0^2^18^ ^1000^^^string^ |
|
||||||
|
@ -1,10 +1,11 @@ |
|||||||
5^CATEGORY^Kategorie-Achse^70^ |
5^CATEGORY^Kategorie-Achse^60^ |
||||||
6^MEASURE^Maß-Achse^80^ |
6^MEASURE^Maß-Achse^70^ |
||||||
10^LAYOUT^Größe und Ränder^20^ |
10^LAYOUT^Layout^10^ |
||||||
11^STYLE^Formatierung^30^ |
11^STYLE^Style^20^ |
||||||
12^MARKS^Grafik-Elemente^10^ |
12^MARKS^Diagramm-Elemente^30^ |
||||||
15^SCALES^Skalen-Typen^100^ |
15^SCALES^Skalen-Typen^40^ |
||||||
18^TICKS_LABELS_X^X-Achse^60^ |
17^AXIS^Achsen-Customizing^50^ |
||||||
19^TICKFORMATTING^Zahlen-, Datumsformat^90^ |
18^TICKS_LABELS_X^X Achsen-Beschriftung^^ |
||||||
21^TICKS_LABELS_Y^Y-Achse^50^ |
19^TICKFORMATTING^Zahlen-, Datumsformat^80^ |
||||||
22^SERIES^Seriendimension^65^ |
20^COLOR^Farben^90^ |
||||||
|
21^TICKS_LABELS_Y^Y Achsen-Beschriftung^^ |
||||||
|
@ -1,2 +1,2 @@ |
|||||||
1^d3js^D3JS (V7)^ |
1^d3js^D3JS^ |
||||||
2^plot^Observable Plot^ |
2^plot^Observable Plot^ |
||||||
|
@ -1,12 +1,9 @@ |
|||||||
1^bar_x^Balken (horizontal)^2^ ^ ^H^ |
1^bar_x^Balken (horizontal)^2^/superx/xml/js/viz/viz_functions.js^makeBarX^ |
||||||
2^bar_y^Balken (vertikal)^2^ ^ ^V^ |
2^bar_y^Balken (vertikal)^2^/superx/xml/js/viz/viz_functions.js^makeBarY^ |
||||||
3^line^Linien (vertikal)^2^ ^ ^V^ |
3^line^Linien (vertikal)^2^/superx/xml/js/viz/viz_functions.js^makeLine^ |
||||||
5^area_y^Flächen (vertikal)^2^^^V^ |
5^area_y^Flächen (vertikal)^2^^^ |
||||||
6^dot^Punkte (vertikal)^2^^^V^ |
6^dot^Punkte (vertikal)^2^^^ |
||||||
7^box_x^Boxplot (horizontal)^2^ ^ ^H^ |
7^box_x^Boxplot (horizontal)^2^ ^ ^ |
||||||
8^area_x^Flächen (horizontal)^2^^^H^ |
8^area_x^Flächen (horizontal)^2^^^ |
||||||
9^box_y^Boxplot (vertikal)^2^ ^ ^V^ |
9^box_y^Boxplot (vertikal)^2^ ^ ^ |
||||||
10^text^Wertelabel^2^ ^ ^^ |
10^text^Wertelabel^2^ ^ ^ |
||||||
11^bar_x_d3^Balken (horizontal)^1^^^H^ |
|
||||||
12^sankey^Sankey^1^ ^^H^ |
|
||||||
13^worldmap^Weltkarte^1^ ^^H^ |
|
||||||
|
@ -1,388 +1,33 @@ |
|||||||
1^1^70^1^1^ |
1^1^70^1^ |
||||||
3^1^72^1^10^ |
3^1^72^1^ |
||||||
8^2^70^1^0^ |
8^2^70^1^ |
||||||
9^2^72^1^10^ |
9^2^72^1^ |
||||||
10^3^70^1^0^ |
10^3^70^1^ |
||||||
12^5^70^1^0^ |
12^5^70^1^ |
||||||
13^3^72^1^10^ |
13^3^72^1^ |
||||||
15^5^72^1^10^ |
15^5^72^1^ |
||||||
16^6^70^1^0^ |
16^6^70^1^ |
||||||
17^6^72^1^10^ |
17^6^72^1^ |
||||||
20^1^76^0^20^ |
20^1^76^0^ |
||||||
22^2^76^0^20^ |
21^1^80^0^ |
||||||
24^5^76^0^20^ |
22^2^76^0^ |
||||||
26^3^76^0^20^ |
23^2^80^0^ |
||||||
27^6^76^0^20^ |
24^5^8^0^ |
||||||
33^7^70^1^0^ |
26^3^76^0^ |
||||||
34^7^72^0^0^ |
27^6^88^0^ |
||||||
35^9^70^0^0^ |
28^3^89^0^ |
||||||
36^9^72^1^0^ |
29^6^89^0^ |
||||||
37^8^76^0^20^ |
30^5^89^0^ |
||||||
38^8^72^1^10^ |
31^2^89^0^ |
||||||
39^8^70^1^0^ |
32^1^89^0^ |
||||||
41^10^70^0^0^ |
33^7^70^1^ |
||||||
42^10^72^0^10^ |
34^7^72^0^ |
||||||
43^10^76^0^20^ |
35^9^70^0^ |
||||||
44^11^95^1^0^ |
36^9^72^1^ |
||||||
45^11^73^1^0^ |
37^8^8^0^ |
||||||
46^12^73^1^20^ |
38^8^72^1^ |
||||||
47^12^95^1^1^ |
39^8^70^1^ |
||||||
48^12^96^1^10^ |
40^8^89^0^ |
||||||
49^1^3^0^^ |
41^10^70^1^ |
||||||
50^1^4^0^201^ |
42^10^72^1^ |
||||||
51^1^5^0^202^ |
43^10^79^1^ |
||||||
52^1^6^0^204^ |
|
||||||
53^1^7^0^203^ |
|
||||||
54^1^8^0^305^ |
|
||||||
55^1^11^0^604^ |
|
||||||
56^1^12^0^605^ |
|
||||||
57^1^13^0^603^ |
|
||||||
58^1^15^0^601^ |
|
||||||
59^1^16^0^103^ |
|
||||||
60^1^17^0^104^ |
|
||||||
61^1^18^0^105^ |
|
||||||
62^1^19^0^106^ |
|
||||||
63^1^20^0^107^ |
|
||||||
64^1^21^0^108^ |
|
||||||
65^1^22^0^109^ |
|
||||||
66^1^23^0^110^ |
|
||||||
67^1^25^0^302^ |
|
||||||
68^1^43^0^306^ |
|
||||||
69^1^45^0^308^ |
|
||||||
70^1^56^0^401^ |
|
||||||
71^1^57^0^402^ |
|
||||||
72^1^58^0^403^ |
|
||||||
73^1^60^0^304^ |
|
||||||
74^1^61^0^301^ |
|
||||||
75^1^63^0^602^ |
|
||||||
76^1^68^0^607^ |
|
||||||
77^1^69^0^608^ |
|
||||||
78^1^81^0^602^ |
|
||||||
79^1^82^0^601^ |
|
||||||
80^1^83^0^603^ |
|
||||||
81^1^84^0^604^ |
|
||||||
82^1^85^0^605^ |
|
||||||
83^1^86^0^602^ |
|
||||||
84^1^87^0^602^ |
|
||||||
85^1^93^0^602^ |
|
||||||
86^1^94^0^602^ |
|
||||||
87^2^3^0^^ |
|
||||||
88^2^4^0^201^ |
|
||||||
89^2^5^0^202^ |
|
||||||
90^2^6^0^204^ |
|
||||||
91^2^7^0^203^ |
|
||||||
92^2^8^0^305^ |
|
||||||
93^2^11^0^604^ |
|
||||||
94^2^12^0^605^ |
|
||||||
95^2^13^0^603^ |
|
||||||
96^2^15^0^601^ |
|
||||||
97^2^16^0^103^ |
|
||||||
98^2^17^0^104^ |
|
||||||
99^2^18^0^105^ |
|
||||||
100^2^19^0^106^ |
|
||||||
101^2^20^0^107^ |
|
||||||
102^2^21^0^108^ |
|
||||||
103^2^22^0^109^ |
|
||||||
104^2^23^0^110^ |
|
||||||
105^2^25^0^302^ |
|
||||||
106^2^43^0^306^ |
|
||||||
107^2^45^0^308^ |
|
||||||
108^2^56^0^401^ |
|
||||||
109^2^57^0^402^ |
|
||||||
110^2^58^0^403^ |
|
||||||
111^2^60^0^304^ |
|
||||||
112^2^61^0^301^ |
|
||||||
113^2^63^0^602^ |
|
||||||
114^2^68^0^607^ |
|
||||||
115^2^69^0^608^ |
|
||||||
116^2^81^0^602^ |
|
||||||
117^2^82^0^601^ |
|
||||||
118^2^83^0^603^ |
|
||||||
119^2^84^0^604^ |
|
||||||
120^2^85^0^605^ |
|
||||||
121^2^86^0^602^ |
|
||||||
122^2^87^0^602^ |
|
||||||
123^2^93^0^602^ |
|
||||||
124^2^94^0^602^ |
|
||||||
125^3^3^0^^ |
|
||||||
126^3^4^0^201^ |
|
||||||
127^3^5^0^202^ |
|
||||||
128^3^6^0^204^ |
|
||||||
129^3^7^0^203^ |
|
||||||
130^3^8^0^305^ |
|
||||||
131^3^11^0^604^ |
|
||||||
132^3^12^0^605^ |
|
||||||
133^3^13^0^603^ |
|
||||||
134^3^15^0^601^ |
|
||||||
135^3^16^0^103^ |
|
||||||
136^3^17^0^104^ |
|
||||||
137^3^18^0^105^ |
|
||||||
138^3^19^0^106^ |
|
||||||
139^3^20^0^107^ |
|
||||||
140^3^21^0^108^ |
|
||||||
141^3^22^0^109^ |
|
||||||
142^3^23^0^110^ |
|
||||||
143^3^25^0^302^ |
|
||||||
144^3^43^0^306^ |
|
||||||
145^3^45^0^308^ |
|
||||||
146^3^56^0^401^ |
|
||||||
147^3^57^0^402^ |
|
||||||
148^3^58^0^403^ |
|
||||||
149^3^60^0^304^ |
|
||||||
150^3^61^0^301^ |
|
||||||
151^3^63^0^602^ |
|
||||||
152^3^68^0^607^ |
|
||||||
153^3^69^0^608^ |
|
||||||
154^3^81^0^602^ |
|
||||||
155^3^82^0^601^ |
|
||||||
156^3^83^0^603^ |
|
||||||
157^3^84^0^604^ |
|
||||||
158^3^85^0^605^ |
|
||||||
159^3^86^0^602^ |
|
||||||
160^3^87^0^602^ |
|
||||||
161^3^93^0^602^ |
|
||||||
162^3^94^0^602^ |
|
||||||
163^5^3^0^^ |
|
||||||
164^5^4^0^201^ |
|
||||||
165^5^5^0^202^ |
|
||||||
166^5^6^0^204^ |
|
||||||
167^5^7^0^203^ |
|
||||||
168^5^8^0^305^ |
|
||||||
169^5^11^0^604^ |
|
||||||
170^5^12^0^605^ |
|
||||||
171^5^13^0^603^ |
|
||||||
172^5^15^0^601^ |
|
||||||
173^5^16^0^103^ |
|
||||||
174^5^17^0^104^ |
|
||||||
175^5^18^0^105^ |
|
||||||
176^5^19^0^106^ |
|
||||||
177^5^20^0^107^ |
|
||||||
178^5^21^0^108^ |
|
||||||
179^5^22^0^109^ |
|
||||||
180^5^23^0^110^ |
|
||||||
181^5^25^0^302^ |
|
||||||
182^5^43^0^306^ |
|
||||||
183^5^45^0^308^ |
|
||||||
184^5^56^0^401^ |
|
||||||
185^5^57^0^402^ |
|
||||||
186^5^58^0^403^ |
|
||||||
187^5^60^0^304^ |
|
||||||
188^5^61^0^301^ |
|
||||||
189^5^63^0^602^ |
|
||||||
190^5^68^0^607^ |
|
||||||
191^5^69^0^608^ |
|
||||||
192^5^81^0^602^ |
|
||||||
193^5^82^0^601^ |
|
||||||
194^5^83^0^603^ |
|
||||||
195^5^84^0^604^ |
|
||||||
196^5^85^0^605^ |
|
||||||
197^5^86^0^602^ |
|
||||||
198^5^87^0^602^ |
|
||||||
199^5^93^0^602^ |
|
||||||
200^5^94^0^602^ |
|
||||||
201^6^3^0^^ |
|
||||||
202^6^4^0^201^ |
|
||||||
203^6^5^0^202^ |
|
||||||
204^6^6^0^204^ |
|
||||||
205^6^7^0^203^ |
|
||||||
206^6^8^0^305^ |
|
||||||
207^6^11^0^604^ |
|
||||||
208^6^12^0^605^ |
|
||||||
209^6^13^0^603^ |
|
||||||
210^6^15^0^601^ |
|
||||||
211^6^16^0^103^ |
|
||||||
212^6^17^0^104^ |
|
||||||
213^6^18^0^105^ |
|
||||||
214^6^19^0^106^ |
|
||||||
215^6^20^0^107^ |
|
||||||
216^6^21^0^108^ |
|
||||||
217^6^22^0^109^ |
|
||||||
218^6^23^0^110^ |
|
||||||
219^6^25^0^302^ |
|
||||||
220^6^43^0^306^ |
|
||||||
221^6^45^0^308^ |
|
||||||
222^6^56^0^401^ |
|
||||||
223^6^57^0^402^ |
|
||||||
224^6^58^0^403^ |
|
||||||
225^6^60^0^304^ |
|
||||||
226^6^61^0^301^ |
|
||||||
227^6^63^0^602^ |
|
||||||
228^6^68^0^607^ |
|
||||||
229^6^69^0^608^ |
|
||||||
230^6^81^0^602^ |
|
||||||
231^6^82^0^601^ |
|
||||||
232^6^83^0^603^ |
|
||||||
233^6^84^0^604^ |
|
||||||
234^6^85^0^605^ |
|
||||||
235^6^86^0^602^ |
|
||||||
236^6^87^0^602^ |
|
||||||
237^6^93^0^602^ |
|
||||||
238^6^94^0^602^ |
|
||||||
239^7^3^0^^ |
|
||||||
240^7^4^0^201^ |
|
||||||
241^7^5^0^202^ |
|
||||||
242^7^6^0^204^ |
|
||||||
243^7^7^0^203^ |
|
||||||
245^7^11^0^604^ |
|
||||||
246^7^12^0^605^ |
|
||||||
247^7^13^0^603^ |
|
||||||
248^7^15^0^601^ |
|
||||||
249^7^16^0^103^ |
|
||||||
250^7^17^0^104^ |
|
||||||
251^7^18^0^105^ |
|
||||||
252^7^19^0^106^ |
|
||||||
253^7^20^0^107^ |
|
||||||
254^7^21^0^108^ |
|
||||||
255^7^22^0^109^ |
|
||||||
256^7^23^0^110^ |
|
||||||
257^7^25^0^302^ |
|
||||||
258^7^43^0^306^ |
|
||||||
259^7^45^0^308^ |
|
||||||
260^7^56^0^401^ |
|
||||||
261^7^57^0^402^ |
|
||||||
262^7^58^0^403^ |
|
||||||
263^7^60^0^304^ |
|
||||||
264^7^61^0^301^ |
|
||||||
265^7^63^0^602^ |
|
||||||
266^7^68^0^607^ |
|
||||||
267^7^69^0^608^ |
|
||||||
268^7^81^0^602^ |
|
||||||
269^7^82^0^601^ |
|
||||||
270^7^83^0^603^ |
|
||||||
271^7^84^0^604^ |
|
||||||
272^7^85^0^605^ |
|
||||||
273^7^86^0^602^ |
|
||||||
274^7^87^0^602^ |
|
||||||
275^7^93^0^602^ |
|
||||||
276^7^94^0^602^ |
|
||||||
277^8^3^0^^ |
|
||||||
278^8^4^0^201^ |
|
||||||
279^8^5^0^202^ |
|
||||||
280^8^6^0^204^ |
|
||||||
281^8^7^0^203^ |
|
||||||
282^8^8^0^305^ |
|
||||||
283^8^11^0^604^ |
|
||||||
284^8^12^0^605^ |
|
||||||
285^8^13^0^603^ |
|
||||||
286^8^15^0^601^ |
|
||||||
287^8^16^0^103^ |
|
||||||
288^8^17^0^104^ |
|
||||||
289^8^18^0^105^ |
|
||||||
290^8^19^0^106^ |
|
||||||
291^8^20^0^107^ |
|
||||||
292^8^21^0^108^ |
|
||||||
293^8^22^0^109^ |
|
||||||
294^8^23^0^110^ |
|
||||||
295^8^25^0^302^ |
|
||||||
296^8^43^0^306^ |
|
||||||
297^8^45^0^308^ |
|
||||||
298^8^56^0^401^ |
|
||||||
299^8^57^0^402^ |
|
||||||
300^8^58^0^403^ |
|
||||||
301^8^60^0^304^ |
|
||||||
302^8^61^0^301^ |
|
||||||
303^8^63^0^602^ |
|
||||||
304^8^68^0^607^ |
|
||||||
305^8^69^0^608^ |
|
||||||
306^8^81^0^602^ |
|
||||||
307^8^82^0^601^ |
|
||||||
308^8^83^0^603^ |
|
||||||
309^8^84^0^604^ |
|
||||||
310^8^85^0^605^ |
|
||||||
311^8^86^0^602^ |
|
||||||
312^8^87^0^602^ |
|
||||||
313^8^93^0^602^ |
|
||||||
314^8^94^0^602^ |
|
||||||
315^9^3^0^^ |
|
||||||
316^9^4^0^201^ |
|
||||||
317^9^5^0^202^ |
|
||||||
318^9^6^0^204^ |
|
||||||
319^9^7^0^203^ |
|
||||||
321^9^11^0^604^ |
|
||||||
322^9^12^0^605^ |
|
||||||
323^9^13^0^603^ |
|
||||||
324^9^15^0^601^ |
|
||||||
325^9^16^0^103^ |
|
||||||
326^9^17^0^104^ |
|
||||||
327^9^18^0^105^ |
|
||||||
328^9^19^0^106^ |
|
||||||
329^9^20^0^107^ |
|
||||||
330^9^21^0^108^ |
|
||||||
331^9^22^0^109^ |
|
||||||
332^9^23^0^110^ |
|
||||||
333^9^25^0^302^ |
|
||||||
334^9^43^0^306^ |
|
||||||
335^9^45^0^308^ |
|
||||||
336^9^56^0^401^ |
|
||||||
337^9^57^0^402^ |
|
||||||
338^9^58^0^403^ |
|
||||||
339^9^60^0^304^ |
|
||||||
340^9^61^0^301^ |
|
||||||
341^9^63^0^602^ |
|
||||||
342^9^68^0^607^ |
|
||||||
343^9^69^0^608^ |
|
||||||
344^9^81^0^602^ |
|
||||||
345^9^82^0^601^ |
|
||||||
346^9^83^0^603^ |
|
||||||
347^9^84^0^604^ |
|
||||||
348^9^85^0^605^ |
|
||||||
349^9^86^0^602^ |
|
||||||
350^9^87^0^602^ |
|
||||||
351^9^93^0^602^ |
|
||||||
352^9^94^0^602^ |
|
||||||
353^10^3^0^^ |
|
||||||
354^10^4^0^201^ |
|
||||||
355^10^5^0^202^ |
|
||||||
356^10^6^0^204^ |
|
||||||
357^10^7^0^203^ |
|
||||||
358^10^8^0^305^ |
|
||||||
359^10^11^0^604^ |
|
||||||
360^10^12^0^605^ |
|
||||||
361^10^13^0^603^ |
|
||||||
362^10^15^0^601^ |
|
||||||
363^10^16^0^103^ |
|
||||||
364^10^17^0^104^ |
|
||||||
365^10^18^0^105^ |
|
||||||
366^10^19^0^106^ |
|
||||||
367^10^20^0^107^ |
|
||||||
368^10^21^0^108^ |
|
||||||
369^10^22^0^109^ |
|
||||||
370^10^23^0^110^ |
|
||||||
371^10^25^0^302^ |
|
||||||
372^10^43^0^306^ |
|
||||||
373^10^45^0^308^ |
|
||||||
374^10^56^0^401^ |
|
||||||
375^10^79^0^40^ |
|
||||||
376^10^58^0^403^ |
|
||||||
377^10^60^0^304^ |
|
||||||
378^10^61^0^301^ |
|
||||||
379^10^63^0^602^ |
|
||||||
380^10^68^0^607^ |
|
||||||
381^10^69^0^608^ |
|
||||||
382^10^81^0^602^ |
|
||||||
383^10^82^0^601^ |
|
||||||
384^10^83^0^603^ |
|
||||||
385^10^84^0^604^ |
|
||||||
386^10^85^0^605^ |
|
||||||
387^10^86^0^602^ |
|
||||||
388^10^87^0^602^ |
|
||||||
389^10^93^0^602^ |
|
||||||
390^10^94^0^602^ |
|
||||||
391^2^78^0^300^ |
|
||||||
392^2^24^0^400^ |
|
||||||
393^1^78^0^400^ |
|
||||||
394^1^24^0^410^ |
|
||||||
395^8^78^0^400^ |
|
||||||
396^8^24^0^410^ |
|
||||||
397^5^78^0^400^ |
|
||||||
398^5^24^0^410^ |
|
||||||
399^3^78^0^400^ |
|
||||||
400^3^24^0^410^ |
|
||||||
401^6^78^0^400^ |
|
||||||
402^6^24^0^410^ |
|
||||||
403^12^97^0^100^ |
|
||||||
404^12^6^10^0^ |
|
||||||
405^12^7^0^0^ |
|
||||||
406^12^5^20^0^ |
|
||||||
407^13^73^1^10^ |
|
||||||
408^13^95^1^1^ |
|
||||||
|
@ -0,0 +1,21 @@ |
|||||||
|
MIT License |
||||||
|
|
||||||
|
Copyright (c) 2020 CreativeBulma |
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy |
||||||
|
of this software and associated documentation files (the "Software"), to deal |
||||||
|
in the Software without restriction, including without limitation the rights |
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
||||||
|
copies of the Software, and to permit persons to whom the Software is |
||||||
|
furnished to do so, subject to the following conditions: |
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all |
||||||
|
copies or substantial portions of the Software. |
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
||||||
|
SOFTWARE. |
File diff suppressed because one or more lines are too long
@ -1,128 +0,0 @@ |
|||||||
<?xml version="1.0" encoding="UTF-8"?> |
|
||||||
<xsl:stylesheet version="1.0" |
|
||||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util.HtmlUtils"> |
|
||||||
<xsl:import href="xsl_functions.xsl" /> |
|
||||||
<xsl:import href="resultset_html.xsl" /> |
|
||||||
<xsl:import href="interLinks_html.xsl" /> |
|
||||||
<xsl:import href="pageComponents_html.xsl" /> |
|
||||||
<xsl:import href="pageComponents_html_final.xsl" /> |
|
||||||
<xsl:import href="viz_html_chart.xsl" /> |
|
||||||
<xsl:import href="menue_html_dojo.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:decimal-format name="German" grouping-separator="." NaN="" zero-digit ="0" decimal-separator="," /> |
|
||||||
|
|
||||||
<!-- wichtig für DOJO!--> |
|
||||||
<xsl:output method="xml" media-type="text/html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" |
|
||||||
doctype-system="DTD/xhtml1-strict.dtd" cdata-section-elements="script style" indent="yes" encoding="UTF-8"/> |
|
||||||
<xsl:variable name="defaultRenderer" select="'d3js'" /> |
|
||||||
<xsl:variable name="availableRendererPlot" select="'false'" /> |
|
||||||
<xsl:variable name="availableRendererD3" select="'true'" /> |
|
||||||
|
|
||||||
<xsl:template match="/"> |
|
||||||
<xsl:call-template name="table"/> |
|
||||||
</xsl:template> |
|
||||||
<!-- start table main--> |
|
||||||
<xsl:template name="table"> |
|
||||||
<html> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="/ergebnisse/@hisinone_active='true'"> |
|
||||||
<xsl:call-template name="head_hisinone" ><xsl:with-param name="title" select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></xsl:call-template> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:call-template name="head_superx_viz" ><xsl:with-param name="title" select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></xsl:call-template> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
|
|
||||||
<xsl:call-template name="tableJavascript_viz"></xsl:call-template> |
|
||||||
|
|
||||||
<!-- start Body--> |
|
||||||
<body onload="document.getElementById('progressbar').style.display='none';createViewer();"> <!-- tableonload definiert in pageComponents.pccustomize position table_post_javascript --> |
|
||||||
<div id="progressbar" style="position:absolute; width:150px; height:150px; left:200px; top:200px; background:#AAAAAA"> |
|
||||||
<p> <b>Laden...</b><br/><img src="../images/progress_bar.gif"></img><br/></p></div> |
|
||||||
|
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:for-each select="/ergebnisse/menue"> |
|
||||||
<xsl:call-template name="menuFrame" /> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:if> |
|
||||||
<div> |
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:attribute name="class"><xsl:text>page-wrap</xsl:text></xsl:attribute> |
|
||||||
<xsl:for-each select="/ergebnisse/menue"> |
|
||||||
<xsl:call-template name="topbar_menue" /> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:if> |
|
||||||
|
|
||||||
<div> |
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:attribute name="id"><xsl:text>wrapper</xsl:text></xsl:attribute> |
|
||||||
</xsl:if> |
|
||||||
<xsl:call-template name="viz_canvas"/> |
|
||||||
<xsl:call-template name="bottombar" /> |
|
||||||
<xsl:comment>customfooter</xsl:comment> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
<xsl:call-template name="footer" /> |
|
||||||
</body> |
|
||||||
<!-- end body --> |
|
||||||
</html> |
|
||||||
</xsl:template> |
|
||||||
<!-- end main --> |
|
||||||
<xsl:template name="importVizJavascriptLibs"> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/d3.min.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/plot.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/viz_functions.js" /> |
|
||||||
<script language="Javascript" type="module" src="../xml/js/viz/d3-sankey.js" /> |
|
||||||
<script language="Javascript" type="text/javascript"> |
|
||||||
<xsl:text><![CDATA[ |
|
||||||
function createViewer() |
|
||||||
{ |
|
||||||
var myChartModelStr="{\"version\":\"0.2b\",\"id\":1,\"name\":\"\",\"renderer\":\"d3js\",\"dataSources\":[{\"value\":\"0\",\"nr\":1,\"name\":\"Tab. 1\",\"isDefault\":true}],\"targetDiv\":\"\",\"chartElements\":[{\"nr\":0,\"vizTypeUniquename\":\"sankey\",\"caption\":\"sankey\",\"datasource\":\"0\",\"elementTypeProperties\":[{\"nr\":0,\"vizTypePropertyUniquename\":\"dimension1\",\"caption\":\"Dimension 1\",\"propertyValue\":\"erfolg_ba_ma_uebergang_abschluss_vorher_abschluss_str\"},{\"nr\":0,\"vizTypePropertyUniquename\":\"dimension2\",\"caption\":\"Dimension 2\",\"propertyValue\":\"erfolg_ba_ma_uebergang_einschr_nachher_abschluss_str\"},{\"nr\":0,\"vizTypePropertyUniquename\":\"measure1\",\"caption\":\"Maß 1\",\"propertyValue\":\"erfolg_ba_ma_uebergang_summe\"}]}],\"chartPropertiesUsed\":[{\"name\":\"caption\",\"vizPropertyVariablename\":\"caption\",\"propertyValue\":\"Übergang BA-MA Datenblatt\"},{\"name\":\"height\",\"vizPropertyVariablename\":\"height\",\"propertyValue\":\"850\",\"propUnit\":\"\"},{\"name\":\"width\",\"vizPropertyVariablename\":\"width\",\"propertyValue\":\"950\",\"propUnit\":\"\"},{\"name\":\"marginLeft\",\"vizPropertyVariablename\":\"marginLeft\",\"propertyValue\":\"100\",\"propUnit\":\"\"},{\"name\":\"backgroundColor\",\"vizPropertyVariablename\":\"backgroundColor\",\"propertyValue\":\"#ffffff\",\"propUnit\":\"\"},{\"name\":\"line_y\",\"vizPropertyVariablename\":\"line\",\"propertyValue\":\"true\",\"propUnit\":\"\"},{\"name\":\"line_x\",\"vizPropertyVariablename\":\"line\",\"propertyValue\":\"true\",\"propUnit\":\"\"}],\"dataTransformation\":[]}"; |
|
||||||
myChartModel=JSON.parse(myChartModelStr); |
|
||||||
renderChart('chartDiv2',myChartModel); |
|
||||||
} |
|
||||||
]]></xsl:text> |
|
||||||
</script> |
|
||||||
|
|
||||||
</xsl:template> |
|
||||||
|
|
||||||
<xsl:template name="viz_canvas"> |
|
||||||
<xsl:if test="/ergebnisse/@isMakro='true'"> |
|
||||||
<h1><xsl:value-of select="/ergebnisse/makro/name" /></h1> |
|
||||||
</xsl:if> |
|
||||||
<p></p> |
|
||||||
<xsl:call-template name="buildVizMetadata" /> |
|
||||||
|
|
||||||
<!-- end Kopf--> |
|
||||||
<!-- start Grafik--> |
|
||||||
<xsl:for-each select="ergebnisse"> |
|
||||||
<xsl:for-each select="ergebnis/ergebniselement"> |
|
||||||
<p class="title is-5"><xsl:value-of select="../maskenname" /></p> |
|
||||||
<xsl:call-template name="legende" /> |
|
||||||
</xsl:for-each> |
|
||||||
<span class="separator"> </span> |
|
||||||
<!--Beginn Selektions-Card--> |
|
||||||
<!--Beginn Berichtstitel, Pfad, Knopfleiste--> |
|
||||||
<section class="hero-body has-background-light"> |
|
||||||
<div class="columns is-mobile is-left"> |
|
||||||
<div class="card has-background-light"> |
|
||||||
<div class="card-content"> |
|
||||||
|
|
||||||
<div class="tab-content"> |
|
||||||
|
|
||||||
<div id="chartDiv2"> |
|
||||||
<a onclick="createViewer();"><span>Diagramm anzeigen</span></a> |
|
||||||
</div> |
|
||||||
|
|
||||||
</div><!--tab-content --> |
|
||||||
</div> <!-- card-content --> |
|
||||||
</div><!--card --> |
|
||||||
</div> <!-- column --> |
|
||||||
</section> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:template> |
|
||||||
</xsl:stylesheet> |
|
@ -1,124 +0,0 @@ |
|||||||
<?xml version="1.0" encoding="UTF-8"?> |
|
||||||
<xsl:stylesheet version="1.0" |
|
||||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util.HtmlUtils"> |
|
||||||
<xsl:import href="xsl_functions.xsl" /> |
|
||||||
<xsl:import href="resultset_html.xsl" /> |
|
||||||
<xsl:import href="interLinks_html.xsl" /> |
|
||||||
<xsl:import href="pageComponents_html.xsl" /> |
|
||||||
<xsl:import href="pageComponents_html_final.xsl" /> |
|
||||||
<xsl:import href="viz_html_chart.xsl" /> |
|
||||||
<xsl:import href="menue_html_dojo.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:decimal-format name="German" grouping-separator="." NaN="" zero-digit ="0" decimal-separator="," /> |
|
||||||
|
|
||||||
<!-- wichtig für DOJO!--> |
|
||||||
<xsl:output method="xml" media-type="text/html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" |
|
||||||
doctype-system="DTD/xhtml1-strict.dtd" cdata-section-elements="script style" indent="yes" encoding="UTF-8"/> |
|
||||||
<xsl:variable name="defaultRenderer" select="'d3jsv3'" /> |
|
||||||
<xsl:variable name="availableRendererPlot" select="'false'" /> |
|
||||||
<xsl:variable name="availableRendererD3" select="'false'" /> |
|
||||||
<xsl:variable name="availableRendererD3V3" select="'true'" /> |
|
||||||
|
|
||||||
<xsl:template match="/"> |
|
||||||
<xsl:call-template name="table"/> |
|
||||||
</xsl:template> |
|
||||||
<!-- start table main--> |
|
||||||
<xsl:template name="table"> |
|
||||||
<html> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="/ergebnisse/@hisinone_active='true'"> |
|
||||||
<xsl:call-template name="head_hisinone" ><xsl:with-param name="title" select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></xsl:call-template> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:call-template name="head_superx_viz" ><xsl:with-param name="title" select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></xsl:call-template> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
|
|
||||||
<xsl:call-template name="tableJavascript_viz"></xsl:call-template> |
|
||||||
|
|
||||||
<!-- start Body--> |
|
||||||
<body onload="document.getElementById('progressbar').style.display='none';createViewer();"> <!-- tableonload definiert in pageComponents.pccustomize position table_post_javascript --> |
|
||||||
<div id="progressbar" style="position:absolute; width:150px; height:150px; left:200px; top:200px; background:#AAAAAA"> |
|
||||||
<p> <b>Laden...</b><br/><img src="../images/progress_bar.gif"></img><br/></p></div> |
|
||||||
|
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:for-each select="/ergebnisse/menue"> |
|
||||||
<xsl:call-template name="menuFrame" /> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:if> |
|
||||||
<div> |
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:attribute name="class"><xsl:text>page-wrap</xsl:text></xsl:attribute> |
|
||||||
<xsl:for-each select="/ergebnisse/menue"> |
|
||||||
<xsl:call-template name="topbar_menue" /> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:if> |
|
||||||
|
|
||||||
<div> |
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:attribute name="id"><xsl:text>wrapper</xsl:text></xsl:attribute> |
|
||||||
</xsl:if> |
|
||||||
<xsl:call-template name="viz_canvas"/> |
|
||||||
<xsl:call-template name="bottombar" /> |
|
||||||
<xsl:comment>customfooter</xsl:comment> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
<xsl:call-template name="footer" /> |
|
||||||
</body> |
|
||||||
<!-- end body --> |
|
||||||
</html> |
|
||||||
</xsl:template> |
|
||||||
<!-- end main --> |
|
||||||
<xsl:template name="importVizJavascriptLibs"> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/d3.v3.min.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/viz_functions.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/sankey_v3.js" /> |
|
||||||
<script language="Javascript" type="text/javascript"> |
|
||||||
<xsl:text><![CDATA[ |
|
||||||
function createViewer() |
|
||||||
{ |
|
||||||
var myChartModelStr="{\"id\":1,\"name\":\"\",\"renderer\":\"d3jsv3\",\"dataSources\":[{\"value\":\"0\",\"nr\":1,\"name\":\"Tab. 1\",\"isDefault\":true}],\"targetDiv\":\"chartDiv\",\"chartElements\":[{\"nr\":0,\"vizTypeUniquename\":\"sankey\",\"caption\":\"sankey\",\"datasource\":\"0\",\"elementTypeProperties\":[{\"nr\":0,\"vizTypePropertyUniquename\":\"viz_dimension1\",\"caption\":\"Kategorie-Dimension 1\",\"propertyValue\":\"erfolg_ba_ma_uebergang_abschluss_vorher_abschluss_str\"},{\"nr\":0,\"vizTypePropertyUniquename\":\"viz_dimension2\",\"caption\":\"Kategorie-Dimension 2\",\"propertyValue\":\"erfolg_ba_ma_uebergang_einschr_nachher_abschluss_str\"},{\"nr\":0,\"vizTypePropertyUniquename\":\"viz_measure1\",\"caption\":\"Maß 1\",\"propertyValue\":\"erfolg_ba_ma_uebergang_summe\"}]}],\"chartPropertiesUsed\":[{\"name\":\"caption\",\"vizPropertyVariablename\":\"caption\",\"propertyValue\":\"Übergang BA-MA Datenblatt (Neu)\"}]}"; |
|
||||||
myChartModel=JSON.parse(myChartModelStr); |
|
||||||
renderChart('chartDiv2',myChartModel); |
|
||||||
} |
|
||||||
]]></xsl:text> |
|
||||||
</script> |
|
||||||
</xsl:template> |
|
||||||
|
|
||||||
<xsl:template name="viz_canvas"> |
|
||||||
<xsl:if test="/ergebnisse/@isMakro='true'"> |
|
||||||
<h1><xsl:value-of select="/ergebnisse/makro/name" /></h1> |
|
||||||
</xsl:if> |
|
||||||
<p></p> |
|
||||||
<xsl:call-template name="buildVizMetadata" /> |
|
||||||
|
|
||||||
<!-- end Kopf--> |
|
||||||
<!-- start Grafik--> |
|
||||||
<xsl:for-each select="ergebnisse"> |
|
||||||
|
|
||||||
<!--Beginn Selektions-Card--> |
|
||||||
<!--Beginn Berichtstitel, Pfad, Knopfleiste--> |
|
||||||
<section class="hero-body has-background-light"> |
|
||||||
<div class="columns is-mobile is-left"> |
|
||||||
<div class="card has-background-light"> |
|
||||||
<div class="card-content"> |
|
||||||
|
|
||||||
<div class="tab-content"> |
|
||||||
|
|
||||||
<div id="chartDiv2"> |
|
||||||
<a onclick="createViewer();"><span>Diagramm anzeigen</span></a> |
|
||||||
</div> |
|
||||||
|
|
||||||
|
|
||||||
</div><!--tab-content --> |
|
||||||
</div> <!-- card-content --> |
|
||||||
</div><!--card --> |
|
||||||
</div> <!-- column --> |
|
||||||
</section> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:template> |
|
||||||
</xsl:stylesheet> |
|
@ -1,27 +0,0 @@ |
|||||||
Copyright 2015, Mike Bostock |
|
||||||
All rights reserved. |
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without modification, |
|
||||||
are permitted provided that the following conditions are met: |
|
||||||
|
|
||||||
* Redistributions of source code must retain the above copyright notice, this |
|
||||||
list of conditions and the following disclaimer. |
|
||||||
|
|
||||||
* Redistributions in binary form must reproduce the above copyright notice, |
|
||||||
this list of conditions and the following disclaimer in the documentation |
|
||||||
and/or other materials provided with the distribution. |
|
||||||
|
|
||||||
* Neither the name of the author nor the names of contributors may be used to |
|
||||||
endorse or promote products derived from this software without specific prior |
|
||||||
written permission. |
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
|
||||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
|
||||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
|
||||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR |
|
||||||
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
|
||||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
|
||||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON |
|
||||||
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
|
||||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
||||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
@ -1,425 +0,0 @@ |
|||||||
// https://github.com/d3/d3-sankey v0.12.3 Copyright 2019 Mike Bostock
|
|
||||||
(function (global, factory) { |
|
||||||
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('d3-array'), require('d3-shape')) : |
|
||||||
typeof define === 'function' && define.amd ? define(['exports', 'd3-array', 'd3-shape'], factory) : |
|
||||||
(global = global || self, factory(global.d3 = global.d3 || {}, global.d3, global.d3)); |
|
||||||
}(this, function (exports, d3Array, d3Shape) { 'use strict'; |
|
||||||
|
|
||||||
function targetDepth(d) { |
|
||||||
return d.target.depth; |
|
||||||
} |
|
||||||
|
|
||||||
function left(node) { |
|
||||||
return node.depth; |
|
||||||
} |
|
||||||
|
|
||||||
function right(node, n) { |
|
||||||
return n - 1 - node.height; |
|
||||||
} |
|
||||||
|
|
||||||
function justify(node, n) { |
|
||||||
return node.sourceLinks.length ? node.depth : n - 1; |
|
||||||
} |
|
||||||
|
|
||||||
function center(node) { |
|
||||||
return node.targetLinks.length ? node.depth |
|
||||||
: node.sourceLinks.length ? d3Array.min(node.sourceLinks, targetDepth) - 1 |
|
||||||
: 0; |
|
||||||
} |
|
||||||
|
|
||||||
function constant(x) { |
|
||||||
return function() { |
|
||||||
return x; |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
function ascendingSourceBreadth(a, b) { |
|
||||||
return ascendingBreadth(a.source, b.source) || a.index - b.index; |
|
||||||
} |
|
||||||
|
|
||||||
function ascendingTargetBreadth(a, b) { |
|
||||||
return ascendingBreadth(a.target, b.target) || a.index - b.index; |
|
||||||
} |
|
||||||
|
|
||||||
function ascendingBreadth(a, b) { |
|
||||||
return a.y0 - b.y0; |
|
||||||
} |
|
||||||
|
|
||||||
function value(d) { |
|
||||||
return d.value; |
|
||||||
} |
|
||||||
|
|
||||||
function defaultId(d) { |
|
||||||
return d.index; |
|
||||||
} |
|
||||||
|
|
||||||
function defaultNodes(graph) { |
|
||||||
return graph.nodes; |
|
||||||
} |
|
||||||
|
|
||||||
function defaultLinks(graph) { |
|
||||||
return graph.links; |
|
||||||
} |
|
||||||
|
|
||||||
function find(nodeById, id) { |
|
||||||
const node = nodeById.get(id); |
|
||||||
if (!node) throw new Error("missing: " + id); |
|
||||||
return node; |
|
||||||
} |
|
||||||
|
|
||||||
function computeLinkBreadths({nodes}) { |
|
||||||
for (const node of nodes) { |
|
||||||
let y0 = node.y0; |
|
||||||
let y1 = y0; |
|
||||||
for (const link of node.sourceLinks) { |
|
||||||
link.y0 = y0 + link.width / 2; |
|
||||||
y0 += link.width; |
|
||||||
} |
|
||||||
for (const link of node.targetLinks) { |
|
||||||
link.y1 = y1 + link.width / 2; |
|
||||||
y1 += link.width; |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function Sankey() { |
|
||||||
let x0 = 0, y0 = 0, x1 = 1, y1 = 1; // extent
|
|
||||||
let dx = 24; // nodeWidth
|
|
||||||
let dy = 8, py; // nodePadding
|
|
||||||
let id = defaultId; |
|
||||||
let align = justify; |
|
||||||
let sort; |
|
||||||
let linkSort; |
|
||||||
let nodes = defaultNodes; |
|
||||||
let links = defaultLinks; |
|
||||||
let iterations = 6; |
|
||||||
|
|
||||||
function sankey() { |
|
||||||
const graph = {nodes: nodes.apply(null, arguments), links: links.apply(null, arguments)}; |
|
||||||
computeNodeLinks(graph); |
|
||||||
computeNodeValues(graph); |
|
||||||
computeNodeDepths(graph); |
|
||||||
computeNodeHeights(graph); |
|
||||||
computeNodeBreadths(graph); |
|
||||||
computeLinkBreadths(graph); |
|
||||||
return graph; |
|
||||||
} |
|
||||||
|
|
||||||
sankey.update = function(graph) { |
|
||||||
computeLinkBreadths(graph); |
|
||||||
return graph; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.nodeId = function(_) { |
|
||||||
return arguments.length ? (id = typeof _ === "function" ? _ : constant(_), sankey) : id; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.nodeAlign = function(_) { |
|
||||||
return arguments.length ? (align = typeof _ === "function" ? _ : constant(_), sankey) : align; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.nodeSort = function(_) { |
|
||||||
return arguments.length ? (sort = _, sankey) : sort; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.nodeWidth = function(_) { |
|
||||||
return arguments.length ? (dx = +_, sankey) : dx; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.nodePadding = function(_) { |
|
||||||
return arguments.length ? (dy = py = +_, sankey) : dy; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.nodes = function(_) { |
|
||||||
return arguments.length ? (nodes = typeof _ === "function" ? _ : constant(_), sankey) : nodes; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.links = function(_) { |
|
||||||
return arguments.length ? (links = typeof _ === "function" ? _ : constant(_), sankey) : links; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.linkSort = function(_) { |
|
||||||
return arguments.length ? (linkSort = _, sankey) : linkSort; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.size = function(_) { |
|
||||||
return arguments.length ? (x0 = y0 = 0, x1 = +_[0], y1 = +_[1], sankey) : [x1 - x0, y1 - y0]; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.extent = function(_) { |
|
||||||
return arguments.length ? (x0 = +_[0][0], x1 = +_[1][0], y0 = +_[0][1], y1 = +_[1][1], sankey) : [[x0, y0], [x1, y1]]; |
|
||||||
}; |
|
||||||
|
|
||||||
sankey.iterations = function(_) { |
|
||||||
return arguments.length ? (iterations = +_, sankey) : iterations; |
|
||||||
}; |
|
||||||
|
|
||||||
function computeNodeLinks({nodes, links}) { |
|
||||||
for (const [i, node] of nodes.entries()) { |
|
||||||
node.index = i; |
|
||||||
node.sourceLinks = []; |
|
||||||
node.targetLinks = []; |
|
||||||
} |
|
||||||
const nodeById = new Map(nodes.map((d, i) => [id(d, i, nodes), d])); |
|
||||||
for (const [i, link] of links.entries()) { |
|
||||||
link.index = i; |
|
||||||
let {source, target} = link; |
|
||||||
if (typeof source !== "object") source = link.source = find(nodeById, source); |
|
||||||
if (typeof target !== "object") target = link.target = find(nodeById, target); |
|
||||||
source.sourceLinks.push(link); |
|
||||||
target.targetLinks.push(link); |
|
||||||
} |
|
||||||
if (linkSort != null) { |
|
||||||
for (const {sourceLinks, targetLinks} of nodes) { |
|
||||||
sourceLinks.sort(linkSort); |
|
||||||
targetLinks.sort(linkSort); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function computeNodeValues({nodes}) { |
|
||||||
for (const node of nodes) { |
|
||||||
node.value = node.fixedValue === undefined |
|
||||||
? Math.max(d3Array.sum(node.sourceLinks, value), d3Array.sum(node.targetLinks, value)) |
|
||||||
: node.fixedValue; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function computeNodeDepths({nodes}) { |
|
||||||
const n = nodes.length; |
|
||||||
let current = new Set(nodes); |
|
||||||
let next = new Set; |
|
||||||
let x = 0; |
|
||||||
while (current.size) { |
|
||||||
for (const node of current) { |
|
||||||
node.depth = x; |
|
||||||
for (const {target} of node.sourceLinks) { |
|
||||||
next.add(target); |
|
||||||
} |
|
||||||
} |
|
||||||
if (++x > n) throw new Error("circular link"); |
|
||||||
current = next; |
|
||||||
next = new Set; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function computeNodeHeights({nodes}) { |
|
||||||
const n = nodes.length; |
|
||||||
let current = new Set(nodes); |
|
||||||
let next = new Set; |
|
||||||
let x = 0; |
|
||||||
while (current.size) { |
|
||||||
for (const node of current) { |
|
||||||
node.height = x; |
|
||||||
for (const {source} of node.targetLinks) { |
|
||||||
next.add(source); |
|
||||||
} |
|
||||||
} |
|
||||||
if (++x > n) throw new Error("circular link"); |
|
||||||
current = next; |
|
||||||
next = new Set; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function computeNodeLayers({nodes}) { |
|
||||||
const x = d3Array.max(nodes, d => d.depth) + 1; |
|
||||||
const kx = (x1 - x0 - dx) / (x - 1); |
|
||||||
const columns = new Array(x); |
|
||||||
for (const node of nodes) { |
|
||||||
const i = Math.max(0, Math.min(x - 1, Math.floor(align.call(null, node, x)))); |
|
||||||
node.layer = i; |
|
||||||
node.x0 = x0 + i * kx; |
|
||||||
node.x1 = node.x0 + dx; |
|
||||||
if (columns[i]) columns[i].push(node); |
|
||||||
else columns[i] = [node]; |
|
||||||
} |
|
||||||
if (sort) for (const column of columns) { |
|
||||||
column.sort(sort); |
|
||||||
} |
|
||||||
return columns; |
|
||||||
} |
|
||||||
|
|
||||||
function initializeNodeBreadths(columns) { |
|
||||||
const ky = d3Array.min(columns, c => (y1 - y0 - (c.length - 1) * py) / d3Array.sum(c, value)); |
|
||||||
for (const nodes of columns) { |
|
||||||
let y = y0; |
|
||||||
for (const node of nodes) { |
|
||||||
node.y0 = y; |
|
||||||
node.y1 = y + node.value * ky; |
|
||||||
y = node.y1 + py; |
|
||||||
for (const link of node.sourceLinks) { |
|
||||||
link.width = link.value * ky; |
|
||||||
} |
|
||||||
} |
|
||||||
y = (y1 - y + py) / (nodes.length + 1); |
|
||||||
for (let i = 0; i < nodes.length; ++i) { |
|
||||||
const node = nodes[i]; |
|
||||||
node.y0 += y * (i + 1); |
|
||||||
node.y1 += y * (i + 1); |
|
||||||
} |
|
||||||
reorderLinks(nodes); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function computeNodeBreadths(graph) { |
|
||||||
const columns = computeNodeLayers(graph); |
|
||||||
py = Math.min(dy, (y1 - y0) / (d3Array.max(columns, c => c.length) - 1)); |
|
||||||
initializeNodeBreadths(columns); |
|
||||||
for (let i = 0; i < iterations; ++i) { |
|
||||||
const alpha = Math.pow(0.99, i); |
|
||||||
const beta = Math.max(1 - alpha, (i + 1) / iterations); |
|
||||||
relaxRightToLeft(columns, alpha, beta); |
|
||||||
relaxLeftToRight(columns, alpha, beta); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
// Reposition each node based on its incoming (target) links.
|
|
||||||
function relaxLeftToRight(columns, alpha, beta) { |
|
||||||
for (let i = 1, n = columns.length; i < n; ++i) { |
|
||||||
const column = columns[i]; |
|
||||||
for (const target of column) { |
|
||||||
let y = 0; |
|
||||||
let w = 0; |
|
||||||
for (const {source, value} of target.targetLinks) { |
|
||||||
let v = value * (target.layer - source.layer); |
|
||||||
y += targetTop(source, target) * v; |
|
||||||
w += v; |
|
||||||
} |
|
||||||
if (!(w > 0)) continue; |
|
||||||
let dy = (y / w - target.y0) * alpha; |
|
||||||
target.y0 += dy; |
|
||||||
target.y1 += dy; |
|
||||||
reorderNodeLinks(target); |
|
||||||
} |
|
||||||
if (sort === undefined) column.sort(ascendingBreadth); |
|
||||||
resolveCollisions(column, beta); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
// Reposition each node based on its outgoing (source) links.
|
|
||||||
function relaxRightToLeft(columns, alpha, beta) { |
|
||||||
for (let n = columns.length, i = n - 2; i >= 0; --i) { |
|
||||||
const column = columns[i]; |
|
||||||
for (const source of column) { |
|
||||||
let y = 0; |
|
||||||
let w = 0; |
|
||||||
for (const {target, value} of source.sourceLinks) { |
|
||||||
let v = value * (target.layer - source.layer); |
|
||||||
y += sourceTop(source, target) * v; |
|
||||||
w += v; |
|
||||||
} |
|
||||||
if (!(w > 0)) continue; |
|
||||||
let dy = (y / w - source.y0) * alpha; |
|
||||||
source.y0 += dy; |
|
||||||
source.y1 += dy; |
|
||||||
reorderNodeLinks(source); |
|
||||||
} |
|
||||||
if (sort === undefined) column.sort(ascendingBreadth); |
|
||||||
resolveCollisions(column, beta); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function resolveCollisions(nodes, alpha) { |
|
||||||
const i = nodes.length >> 1; |
|
||||||
const subject = nodes[i]; |
|
||||||
resolveCollisionsBottomToTop(nodes, subject.y0 - py, i - 1, alpha); |
|
||||||
resolveCollisionsTopToBottom(nodes, subject.y1 + py, i + 1, alpha); |
|
||||||
resolveCollisionsBottomToTop(nodes, y1, nodes.length - 1, alpha); |
|
||||||
resolveCollisionsTopToBottom(nodes, y0, 0, alpha); |
|
||||||
} |
|
||||||
|
|
||||||
// Push any overlapping nodes down.
|
|
||||||
function resolveCollisionsTopToBottom(nodes, y, i, alpha) { |
|
||||||
for (; i < nodes.length; ++i) { |
|
||||||
const node = nodes[i]; |
|
||||||
const dy = (y - node.y0) * alpha; |
|
||||||
if (dy > 1e-6) node.y0 += dy, node.y1 += dy; |
|
||||||
y = node.y1 + py; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
// Push any overlapping nodes up.
|
|
||||||
function resolveCollisionsBottomToTop(nodes, y, i, alpha) { |
|
||||||
for (; i >= 0; --i) { |
|
||||||
const node = nodes[i]; |
|
||||||
const dy = (node.y1 - y) * alpha; |
|
||||||
if (dy > 1e-6) node.y0 -= dy, node.y1 -= dy; |
|
||||||
y = node.y0 - py; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function reorderNodeLinks({sourceLinks, targetLinks}) { |
|
||||||
if (linkSort === undefined) { |
|
||||||
for (const {source: {sourceLinks}} of targetLinks) { |
|
||||||
sourceLinks.sort(ascendingTargetBreadth); |
|
||||||
} |
|
||||||
for (const {target: {targetLinks}} of sourceLinks) { |
|
||||||
targetLinks.sort(ascendingSourceBreadth); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
function reorderLinks(nodes) { |
|
||||||
if (linkSort === undefined) { |
|
||||||
for (const {sourceLinks, targetLinks} of nodes) { |
|
||||||
sourceLinks.sort(ascendingTargetBreadth); |
|
||||||
targetLinks.sort(ascendingSourceBreadth); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
// Returns the target.y0 that would produce an ideal link from source to target.
|
|
||||||
function targetTop(source, target) { |
|
||||||
let y = source.y0 - (source.sourceLinks.length - 1) * py / 2; |
|
||||||
for (const {target: node, width} of source.sourceLinks) { |
|
||||||
if (node === target) break; |
|
||||||
y += width + py; |
|
||||||
} |
|
||||||
for (const {source: node, width} of target.targetLinks) { |
|
||||||
if (node === source) break; |
|
||||||
y -= width; |
|
||||||
} |
|
||||||
return y; |
|
||||||
} |
|
||||||
|
|
||||||
// Returns the source.y0 that would produce an ideal link from source to target.
|
|
||||||
function sourceTop(source, target) { |
|
||||||
let y = target.y0 - (target.targetLinks.length - 1) * py / 2; |
|
||||||
for (const {source: node, width} of target.targetLinks) { |
|
||||||
if (node === source) break; |
|
||||||
y += width + py; |
|
||||||
} |
|
||||||
for (const {target: node, width} of source.sourceLinks) { |
|
||||||
if (node === target) break; |
|
||||||
y -= width; |
|
||||||
} |
|
||||||
return y; |
|
||||||
} |
|
||||||
|
|
||||||
return sankey; |
|
||||||
} |
|
||||||
|
|
||||||
function horizontalSource(d) { |
|
||||||
return [d.source.x1, d.y0]; |
|
||||||
} |
|
||||||
|
|
||||||
function horizontalTarget(d) { |
|
||||||
return [d.target.x0, d.y1]; |
|
||||||
} |
|
||||||
|
|
||||||
function sankeyLinkHorizontal() { |
|
||||||
return d3Shape.linkHorizontal() |
|
||||||
.source(horizontalSource) |
|
||||||
.target(horizontalTarget); |
|
||||||
} |
|
||||||
|
|
||||||
exports.sankey = Sankey; |
|
||||||
exports.sankeyCenter = center; |
|
||||||
exports.sankeyJustify = justify; |
|
||||||
exports.sankeyLeft = left; |
|
||||||
exports.sankeyLinkHorizontal = sankeyLinkHorizontal; |
|
||||||
exports.sankeyRight = right; |
|
||||||
|
|
||||||
Object.defineProperty(exports, '__esModule', { value: true }); |
|
||||||
|
|
||||||
})); |
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,536 +0,0 @@ |
|||||||
<?xml version="1.0" encoding="UTF-8"?> |
|
||||||
<xsl:stylesheet version="1.0" |
|
||||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:sx="http://memtext.de"> |
|
||||||
<xsl:template name="head_superx_viz"> |
|
||||||
<xsl:param name="css" /> |
|
||||||
<xsl:param name="title" /> |
|
||||||
<head> |
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
|
||||||
</meta><!-- <link rel="stylesheet" type="text/css" href="../xml/his1/css.._menue_html.css" /> --> |
|
||||||
<link rel="stylesheet" type="text/css" href="../style/superx.css"/> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/menue_html.css"/> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/superxml_html.css"/> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/maske_html.css" /> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/tabelle_html.css" /> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/superx_standalone.css"/> |
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/css/fontello-codes.css" /> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/css/start_portlet.css" /> |
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="../style/bulma.css" /> |
|
||||||
<link rel="stylesheet" type="text/css" href="../style/bulma-tooltip.min.css" /> |
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="../style/sx_viz_muster.css" /> |
|
||||||
|
|
||||||
</head> |
|
||||||
|
|
||||||
</xsl:template> |
|
||||||
<xsl:template name="head_hisinone_viz"> |
|
||||||
<xsl:param name="css" /> |
|
||||||
<xsl:param name="title" /> |
|
||||||
<head> |
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
|
||||||
</meta> |
|
||||||
<link rel="stylesheet" type="text/css" |
|
||||||
href="../xml/his1/css/superx_menue_html.css" /> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/maske_html.css" /> |
|
||||||
<!--<LINK REL="stylesheet" type="text/css" href="../style/superx.css" |
|
||||||
></LINK> <LINK REL="stylesheet" type="text/css" href="../xml/superxml_html.css" |
|
||||||
></LINK> --> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="$title != ''"> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="starts-with($title,'Mask') "> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/maske_html.css" /> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<!-- Styles für HIS1 sind in xml/his1/css/superx_menue_html.css definiert |
|
||||||
<LINK REL="stylesheet" type="text/css" href="../xml/tabelle_html.css" ></LINK> --> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
<title> |
|
||||||
<xsl:value-of select="$title" /> |
|
||||||
</title> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<title> |
|
||||||
<xsl:text>HISinOne-BI</xsl:text> |
|
||||||
</title> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/his1/css/HISinOne.css" /> |
|
||||||
|
|
||||||
<!--<script src="../xml/js/jquery/jquery.mobile-1.4.2.min.js"></script> |
|
||||||
<link rel="stylesheet" href="../xml/js/jquery/jquery.mobile.structure-1.4.2.dw.css" /> |
|
||||||
<link rel="stylesheet" href="../xml/js/jquery/jqm-demos.dw.css" /> --> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/css/fontello-codes.css" /> |
|
||||||
<link rel="stylesheet" type="text/css" href="../xml/css/start_portlet.css" /> |
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="../style/bulma.css" /> |
|
||||||
<link rel="stylesheet" type="text/css" href="../style/bulma-tooltip.min.css" /> |
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="../style/sx_viz_muster.css" /> |
|
||||||
|
|
||||||
<xsl:if test="$css != ''"> |
|
||||||
<link rel="stylesheet" type="text/css" href="$css" /> |
|
||||||
</xsl:if> |
|
||||||
|
|
||||||
</head> |
|
||||||
|
|
||||||
</xsl:template> |
|
||||||
<xsl:template name="tableJavascript_viz"> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/jquery-2.1.1.min.js" /> |
|
||||||
<script language="JavaScript" type="text/javascript" src="../xml/js/memtext/sx_functions.js"></script> |
|
||||||
|
|
||||||
<xsl:call-template name="importVizJavascriptLibs" /> |
|
||||||
|
|
||||||
<script><xsl:text><![CDATA[ |
|
||||||
|
|
||||||
//document.body.append(Plot.plot(options)); |
|
||||||
|
|
||||||
function commonChartProperty(name, |
|
||||||
caption, |
|
||||||
isMandatory, |
|
||||||
inputType, |
|
||||||
staticValues, |
|
||||||
range_from, |
|
||||||
range_to, |
|
||||||
defaultValue, |
|
||||||
propUnit, |
|
||||||
explanation, |
|
||||||
groupCaption, |
|
||||||
groupUniquename, |
|
||||||
rendererUniquename, |
|
||||||
groupVariableName, |
|
||||||
variableName, |
|
||||||
propValueType, |
|
||||||
isGeneric |
|
||||||
) |
|
||||||
{ |
|
||||||
this.name=name; |
|
||||||
this.caption=caption; |
|
||||||
this.staticValues=staticValues; |
|
||||||
this.range_from=range_from; |
|
||||||
this.range_to=range_from; |
|
||||||
this.isMandatory=isMandatory; |
|
||||||
this.inputType=inputType; |
|
||||||
this.defaultValue=defaultValue; |
|
||||||
this.propUnit=propUnit; |
|
||||||
this.explanation=explanation; |
|
||||||
this.groupCaption=groupCaption; |
|
||||||
this.groupUniquename=groupUniquename; |
|
||||||
this.rendererUniquename=rendererUniquename; |
|
||||||
this.groupVariableName=groupVariableName; |
|
||||||
this.variableName=variableName; |
|
||||||
this.propValueType=propValueType; |
|
||||||
this.isGeneric=isGeneric; |
|
||||||
this.getValueResultset = function () { |
|
||||||
var valueOptions=[]; |
|
||||||
var optionCounter=0; |
|
||||||
var staticValueArray = staticValues.split(/\|/); |
|
||||||
for(var j=0;j < staticValueArray.length;j++) |
|
||||||
{ |
|
||||||
var isDefault=false; |
|
||||||
if(staticValueArray[j]) |
|
||||||
{ |
|
||||||
if(staticValueArray[j]==this.defaultValue) |
|
||||||
isDefault=true; |
|
||||||
var o=new selectionPropertyValue(optionCounter,staticValueArray[j],staticValueArray[j],isDefault); |
|
||||||
valueOptions[optionCounter]=o; |
|
||||||
optionCounter++; |
|
||||||
} |
|
||||||
} |
|
||||||
return valueOptions; |
|
||||||
} |
|
||||||
} |
|
||||||
function commonChartPropertyGroup(caption,groupUniquename,groupVariableName) |
|
||||||
{ |
|
||||||
this.caption=caption; |
|
||||||
this.groupUniquename=groupUniquename; |
|
||||||
this.groupVariableName=groupVariableName; |
|
||||||
} |
|
||||||
|
|
||||||
var commonChartProperties=[]; |
|
||||||
]]></xsl:text> |
|
||||||
<xsl:for-each select="/ergebnisse/ergebnis[@ordnr='0']/ergebniselement/chartProperties/commonChartProperty"> |
|
||||||
<xsl:text> |
|
||||||
var newCommonChartProperty = new commonChartProperty("</xsl:text> |
|
||||||
<xsl:value-of select="@prop_uniquename" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@caption" /> |
|
||||||
<xsl:text>",</xsl:text><xsl:choose> |
|
||||||
<xsl:when test="@is_mandatory=1"><xsl:text>true</xsl:text> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise>false</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
<xsl:text>,"</xsl:text> |
|
||||||
<xsl:value-of select="@input_type_uniquename" /> |
|
||||||
<xsl:text>" |
|
||||||
,"</xsl:text> |
|
||||||
<xsl:value-of select="@static_values" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@prop_range_from" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@prop_range_to" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@prop_default" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@prop_unit" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@explanation" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@group_caption" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@group_uniquename" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@renderer_uniquename" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@group_variable_name" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@variable_name" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@propValueType" /> |
|
||||||
<xsl:text>",</xsl:text> |
|
||||||
<xsl:value-of select="@isGeneric" /> |
|
||||||
<xsl:text>); |
|
||||||
commonChartProperties.push(newCommonChartProperty); |
|
||||||
</xsl:text> |
|
||||||
</xsl:for-each> |
|
||||||
<!--<xsl:text> |
|
||||||
var newCommonChartProperty = new commonChartProperty("caption", |
|
||||||
"Titel des Diagramms", |
|
||||||
false, |
|
||||||
"TEXTAREA", |
|
||||||
"", |
|
||||||
"", |
|
||||||
"", |
|
||||||
"</xsl:text> |
|
||||||
<xsl:value-of select="/ergebnisse/ergebnis[@ordnr='0']/maskenname" /><xsl:text>", |
|
||||||
"wird unter dem Diagramm angezeigt", |
|
||||||
"Diagrammkopf", |
|
||||||
"", |
|
||||||
"plot", |
|
||||||
"layout", |
|
||||||
"caption", |
|
||||||
"string"); |
|
||||||
commonChartProperties.push(newCommonChartProperty); |
|
||||||
|
|
||||||
</xsl:text>--> |
|
||||||
<xsl:text> |
|
||||||
function vizRenderer(uniquename,caption) |
|
||||||
{ |
|
||||||
this.caption=caption; |
|
||||||
this.uniquename=uniquename; |
|
||||||
} |
|
||||||
|
|
||||||
var vizRenderers=[]; |
|
||||||
</xsl:text> |
|
||||||
<xsl:for-each select="/ergebnisse/ergebnis[@ordnr='0']/ergebniselement/vizRenderers/vizRenderer"> |
|
||||||
<xsl:text> |
|
||||||
var newVizRenderer = new vizRenderer("</xsl:text> |
|
||||||
<xsl:value-of select="@uniquename" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@caption" /> |
|
||||||
<xsl:text>"); |
|
||||||
vizRenderers.push(newVizRenderer); |
|
||||||
</xsl:text> |
|
||||||
</xsl:for-each> |
|
||||||
<xsl:text> |
|
||||||
function vizType(uniquename,caption,rendererUniquename,orientation) |
|
||||||
{ |
|
||||||
this.caption=caption; |
|
||||||
this.uniquename=uniquename; |
|
||||||
this.rendererUniquename=rendererUniquename, |
|
||||||
this.orientation=orientation; |
|
||||||
} |
|
||||||
|
|
||||||
var vizTypes=[]; |
|
||||||
</xsl:text> |
|
||||||
<xsl:for-each select="/ergebnisse/ergebnis[@ordnr='0']/ergebniselement/vizTypes/vizType"> |
|
||||||
<xsl:text> |
|
||||||
var newVizType = new vizType("</xsl:text> |
|
||||||
<xsl:value-of select="@uniquename" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@caption" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@renderer_uniquename" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@orientation" /> |
|
||||||
<xsl:text>"); |
|
||||||
vizTypes.push(newVizType); |
|
||||||
</xsl:text> |
|
||||||
</xsl:for-each> |
|
||||||
<xsl:text> |
|
||||||
|
|
||||||
function vizTypeProperty(propUniquename,caption,typeUniquename,groupUniquename,isMandatory,explanation) |
|
||||||
{ |
|
||||||
this.propUniquename=propUniquename; |
|
||||||
this.caption=caption; |
|
||||||
this.groupUniquename=groupUniquename; |
|
||||||
this.typeUniquename=typeUniquename; |
|
||||||
this.isMandatory=isMandatory; |
|
||||||
this.explanation=explanation; |
|
||||||
} |
|
||||||
|
|
||||||
var vizTypeProperties=[]; |
|
||||||
</xsl:text> |
|
||||||
<xsl:for-each select="/ergebnisse/ergebnis[@ordnr='0']/ergebniselement/viz_type_properties/viz_type_property"> |
|
||||||
<xsl:text> |
|
||||||
var newVizTypeProperty = new vizTypeProperty("</xsl:text> |
|
||||||
<xsl:value-of select="@uniquename" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@caption" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@viz_type_uniquename" /> |
|
||||||
<xsl:text>","</xsl:text> |
|
||||||
<xsl:value-of select="@viz_property_group_uniquename" /> |
|
||||||
<xsl:text>",</xsl:text> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="@is_mandatory='1'"> |
|
||||||
<xsl:text>true</xsl:text> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:text>false</xsl:text> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
<xsl:text>,"" |
|
||||||
); |
|
||||||
vizTypeProperties.push(newVizTypeProperty); |
|
||||||
</xsl:text> |
|
||||||
</xsl:for-each> |
|
||||||
|
|
||||||
</script> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/viz_functions.js" /> |
|
||||||
<style type="text/css"> |
|
||||||
|
|
||||||
.node rect { |
|
||||||
cursor: move; |
|
||||||
fill-opacity: .9; |
|
||||||
shape-rendering: crispEdges; |
|
||||||
} |
|
||||||
|
|
||||||
.node text { |
|
||||||
pointer-events: none; |
|
||||||
text-shadow: 0 1px 0 #fff; |
|
||||||
} |
|
||||||
|
|
||||||
.link { |
|
||||||
fill: none; |
|
||||||
stroke: #000; |
|
||||||
stroke-opacity: .2; |
|
||||||
} |
|
||||||
|
|
||||||
.link:hover { |
|
||||||
stroke-opacity: .5; |
|
||||||
} |
|
||||||
</style> |
|
||||||
</xsl:template> |
|
||||||
<xsl:template name="buildVizMetadata"> |
|
||||||
<xsl:variable name="vizInitialName"> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="/ergebnisse/@isMakro='true'"> |
|
||||||
<xsl:value-of select="/ergebnisse/makro/name"/> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:value-of select="/ergebnisse/ergebnis/maskenname" /> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
</xsl:variable> |
|
||||||
<!--<xsl:call-template name="navigationsmenue" />--> |
|
||||||
<script language="Javascript"> |
|
||||||
|
|
||||||
<xsl:text> |
|
||||||
|
|
||||||
var vizInitialName='</xsl:text><xsl:value-of select="$vizInitialName"/><xsl:text>'; |
|
||||||
|
|
||||||
|
|
||||||
function dataRowMetaData(tableId,nr,colname,colcaption,coltype,colfunction) |
|
||||||
{ |
|
||||||
this.tableId=tableId; |
|
||||||
this.nr=nr; |
|
||||||
this.colname=colname; |
|
||||||
this.colcaption=colcaption; |
|
||||||
this.coltype=coltype; |
|
||||||
this.colfunction=colfunction; |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
function tableMetaData(nr,value,name,isDefault) |
|
||||||
{ |
|
||||||
this.value=value; |
|
||||||
this.nr=nr; |
|
||||||
this.name=name |
|
||||||
this.isDefault=isDefault; |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
var rsTableMetaData=new Array(); |
|
||||||
var rsColumnMetaData=new Array(); |
|
||||||
var rs=new Array(); |
|
||||||
|
|
||||||
</xsl:text> |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</script> |
|
||||||
|
|
||||||
|
|
||||||
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement"> |
|
||||||
<xsl:call-template name="buildVizData" > |
|
||||||
<xsl:with-param name="tableId" select="@ordnr" /> |
|
||||||
</xsl:call-template> |
|
||||||
</xsl:for-each> |
|
||||||
|
|
||||||
</xsl:template> |
|
||||||
<xsl:template name="buildVizData"> |
|
||||||
<xsl:param name="tableId" /> |
|
||||||
|
|
||||||
<script language="Javascript"> |
|
||||||
|
|
||||||
<xsl:text> |
|
||||||
|
|
||||||
rsTableMetaData.push(new tableMetaData( |
|
||||||
</xsl:text> |
|
||||||
<xsl:value-of select="position()"/> |
|
||||||
<xsl:text>,'</xsl:text> |
|
||||||
<xsl:value-of select="$tableId"/> |
|
||||||
<xsl:text>','</xsl:text> |
|
||||||
<xsl:value-of select="concat('Tab. ',$tableId+1)"/> |
|
||||||
<xsl:text>', |
|
||||||
</xsl:text> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="position()=1"> |
|
||||||
<xsl:text>true</xsl:text> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:text>false</xsl:text> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
<xsl:text> |
|
||||||
)); |
|
||||||
rs[</xsl:text><xsl:value-of select="$tableId"/><xsl:text>]=new Array(); |
|
||||||
|
|
||||||
var myChartModel=new chartModel(1,"","",rsTableMetaData); |
|
||||||
|
|
||||||
function dataRow_</xsl:text><xsl:value-of select="$tableId"/><xsl:text>(rownr</xsl:text> |
|
||||||
<xsl:for-each select="sqlerg/complete_headers/header"> |
|
||||||
<xsl:text>,</xsl:text> |
|
||||||
<xsl:call-template name="getColumnNameJS"> |
|
||||||
<xsl:with-param name="columnNameFromDB" select="f_name"/> |
|
||||||
</xsl:call-template> |
|
||||||
</xsl:for-each> |
|
||||||
<xsl:text> |
|
||||||
) |
|
||||||
{ |
|
||||||
this.rownr=rownr; |
|
||||||
</xsl:text> |
|
||||||
<xsl:for-each select="sqlerg/complete_headers/header"> |
|
||||||
<xsl:text>this.</xsl:text><xsl:call-template name="getColumnNameJS"> |
|
||||||
<xsl:with-param name="columnNameFromDB" select="f_name"/> |
|
||||||
</xsl:call-template><xsl:text>=</xsl:text> |
|
||||||
<xsl:call-template name="getColumnNameJS"> |
|
||||||
<xsl:with-param name="columnNameFromDB" select="f_name"/> |
|
||||||
</xsl:call-template><xsl:text>; |
|
||||||
</xsl:text> |
|
||||||
</xsl:for-each><xsl:text> |
|
||||||
} |
|
||||||
|
|
||||||
rsColumnMetaData[</xsl:text><xsl:value-of select="$tableId"/><xsl:text>]=new Array(); |
|
||||||
|
|
||||||
rsColumnMetaData[</xsl:text><xsl:value-of select="$tableId"/><xsl:text>].push(new dataRowMetaData('</xsl:text> |
|
||||||
<xsl:value-of select="$tableId"/><xsl:text>',</xsl:text> |
|
||||||
<xsl:value-of select="0"/> |
|
||||||
<xsl:text>,'rownr','Zeilennr.',0,4)); |
|
||||||
</xsl:text> |
|
||||||
|
|
||||||
|
|
||||||
<xsl:for-each select="sqlerg/complete_headers/header"> |
|
||||||
<xsl:variable name="rownr"> |
|
||||||
<xsl:value-of select="position()"/> |
|
||||||
</xsl:variable> |
|
||||||
<xsl:text> |
|
||||||
rsColumnMetaData[</xsl:text><xsl:value-of select="$tableId"/><xsl:text>].push(new dataRowMetaData('</xsl:text> |
|
||||||
<xsl:value-of select="$tableId"/><xsl:text>',</xsl:text> |
|
||||||
<xsl:value-of select="$rownr"/> |
|
||||||
<xsl:text>,'</xsl:text> |
|
||||||
<xsl:call-template name="getColumnNameJS"> |
|
||||||
<xsl:with-param name="columnNameFromDB" select="f_name"/> |
|
||||||
</xsl:call-template> |
|
||||||
<xsl:text>','</xsl:text> |
|
||||||
<xsl:call-template name="remove_linebreaksAndQuot"> |
|
||||||
<xsl:with-param name="volltext" select="wert" /> |
|
||||||
</xsl:call-template> |
|
||||||
<xsl:text>',0,null));</xsl:text> <!--coltype noch unbekannt, colfunction unnötig--> |
|
||||||
</xsl:for-each> |
|
||||||
|
|
||||||
|
|
||||||
<xsl:for-each select="sqlerg/row"> |
|
||||||
<xsl:variable name="rownr"> |
|
||||||
<xsl:value-of select="position()"/> |
|
||||||
</xsl:variable> |
|
||||||
<xsl:if test="$rownr=1"> |
|
||||||
<!-- first metadata --> |
|
||||||
<xsl:for-each select="col"> |
|
||||||
<xsl:variable name="colnr"> |
|
||||||
<xsl:value-of select="position()"/> |
|
||||||
</xsl:variable> |
|
||||||
<xsl:text> |
|
||||||
rsColumnMetaData[</xsl:text><xsl:value-of select="$tableId"/><xsl:text>][</xsl:text><xsl:value-of select="number($colnr)"/><xsl:text>].coltype=</xsl:text><xsl:value-of select="@typ"/> |
|
||||||
<xsl:text>; |
|
||||||
</xsl:text> |
|
||||||
</xsl:for-each> |
|
||||||
|
|
||||||
</xsl:if> |
|
||||||
<!--now resultset--> |
|
||||||
<xsl:text> |
|
||||||
//rs[</xsl:text><xsl:value-of select="$tableId"/><xsl:text>]= new Array(); |
|
||||||
rs[</xsl:text><xsl:value-of select="$tableId"/><xsl:text>].push(new dataRow_</xsl:text><xsl:value-of select="$tableId"/><xsl:text>(</xsl:text><xsl:value-of select="$rownr"/> |
|
||||||
<xsl:for-each select="col"> |
|
||||||
<xsl:text>,</xsl:text> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="@typ='1'"><xsl:text>'</xsl:text> |
|
||||||
<xsl:call-template name="remove_linebreaksAndQuot"> |
|
||||||
<xsl:with-param name="volltext" select="wert" /> |
|
||||||
</xsl:call-template> |
|
||||||
<xsl:text>'</xsl:text></xsl:when> |
|
||||||
<!--todo:Typ Datum --> |
|
||||||
<xsl:when test="string-length(wert)=0"><xsl:text>null</xsl:text> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:value-of select="wert"/> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
</xsl:for-each> |
|
||||||
<xsl:text>)); |
|
||||||
</xsl:text> |
|
||||||
</xsl:for-each> |
|
||||||
|
|
||||||
|
|
||||||
</script> |
|
||||||
</xsl:template> |
|
||||||
<xsl:template name="getColumnNameJS"> |
|
||||||
<xsl:param name="columnNameFromDB" /> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="contains($columnNameFromDB,'?')"> |
|
||||||
<xsl:value-of select="concat('column_',@id+1)"/> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:value-of select="$columnNameFromDB"/> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
</xsl:template> |
|
||||||
<!-- start Javascript--> |
|
||||||
<xsl:template name="importVizJavascriptLibs"> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/d3.min.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/plot.js" /> |
|
||||||
<script language="Javascript" type="module" src="../xml/js/viz/d3-sankey.js" /> |
|
||||||
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement/vizTypes/vizType[@srcpath !='/superx/xml/js/viz/d3.min.js' |
|
||||||
and @srcpath != '/superx/xml/js/viz/plot.js' |
|
||||||
and @srcpath != '/superx/xml/js/viz/d3-sankey.js' |
|
||||||
and @srcpath != '' |
|
||||||
and (@renderer_uniquename='plot' or @renderer_uniquename='d3js') ]"> |
|
||||||
<script language="Javascript" type="text/javascript" src="{@srcpath}" /> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:template> |
|
||||||
</xsl:stylesheet> |
|
File diff suppressed because one or more lines are too long
@ -1,34 +0,0 @@ |
|||||||
<?xml version="1.0" encoding="UTF-8"?> |
|
||||||
<xsl:stylesheet version="1.0" |
|
||||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util.HtmlUtils"> |
|
||||||
<xsl:import href="xsl_functions.xsl" /> |
|
||||||
<xsl:import href="resultset_html.xsl" /> |
|
||||||
<xsl:import href="interLinks_html.xsl" /> |
|
||||||
<xsl:import href="pageComponents_html.xsl" /> |
|
||||||
<xsl:import href="viz_html_chart.xsl" /> |
|
||||||
<xsl:import href="viz_components.xsl" /> |
|
||||||
<xsl:import href="menue_html_dojo.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:decimal-format name="German" grouping-separator="." NaN="" zero-digit ="0" decimal-separator="," /> |
|
||||||
|
|
||||||
<!-- wichtig für DOJO!--> |
|
||||||
<xsl:output method="xml" media-type="text/html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" |
|
||||||
doctype-system="DTD/xhtml1-strict.dtd" cdata-section-elements="script style" indent="yes" encoding="UTF-8"/> |
|
||||||
<xsl:variable name="defaultRenderer" select="'d3jsv3'" /> |
|
||||||
<xsl:variable name="availableRendererPlot" select="'false'" /> |
|
||||||
<xsl:variable name="availableRendererD3" select="'false'" /> |
|
||||||
<xsl:variable name="availableRendererD3V3" select="'true'" /> |
|
||||||
|
|
||||||
<xsl:template match="/"> |
|
||||||
<xsl:call-template name="table"/> |
|
||||||
</xsl:template> |
|
||||||
<xsl:template name="importVizJavascriptLibs"> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/d3.v3.min.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/viz_functions.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/sankey_v3.js" /> |
|
||||||
</xsl:template> |
|
||||||
</xsl:stylesheet> |
|
@ -1,304 +0,0 @@ |
|||||||
<?xml version="1.0" encoding="UTF-8"?> |
|
||||||
<xsl:stylesheet version="1.0" |
|
||||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util.HtmlUtils"> |
|
||||||
<xsl:import href="xsl_functions.xsl" /> |
|
||||||
<xsl:import href="resultset_html.xsl" /> |
|
||||||
<xsl:import href="interLinks_html.xsl" /> |
|
||||||
<xsl:import href="pageComponents_html.xsl" /> |
|
||||||
<xsl:import href="viz_html_chart.xsl" /> |
|
||||||
<xsl:import href="viz_components.xsl" /> |
|
||||||
<xsl:import href="menue_html_dojo.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:decimal-format name="German" grouping-separator="." NaN="" zero-digit ="0" decimal-separator="," /> |
|
||||||
|
|
||||||
<!-- wichtig für DOJO!--> |
|
||||||
<xsl:output method="xml" media-type="text/html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" |
|
||||||
doctype-system="DTD/xhtml1-strict.dtd" cdata-section-elements="script style" indent="yes" encoding="UTF-8"/> |
|
||||||
<xsl:variable name="defaultRenderer" select="'d3js'" /> |
|
||||||
<xsl:variable name="availableRendererPlot" select="'false'" /> |
|
||||||
<xsl:variable name="availableRendererD3" select="'true'" /> |
|
||||||
|
|
||||||
<xsl:template match="/"> |
|
||||||
<xsl:call-template name="table"/> |
|
||||||
</xsl:template> |
|
||||||
<!-- start table main--> |
|
||||||
<xsl:template name="table"> |
|
||||||
<html> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="/ergebnisse/@hisinone_active='true'"> |
|
||||||
<xsl:call-template name="head_hisinone" ><xsl:with-param name="title" select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></xsl:call-template> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:call-template name="head_superx_viz" ><xsl:with-param name="title" select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></xsl:call-template> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose> |
|
||||||
|
|
||||||
<xsl:call-template name="tableJavascript_viz"></xsl:call-template> |
|
||||||
|
|
||||||
<!-- start Body--> |
|
||||||
<body onload="document.getElementById('progressbar').style.display='none';initPage();"> <!-- tableonload definiert in pageComponents.pccustomize position table_post_javascript --> |
|
||||||
<div id="progressbar" style="position:absolute; width:150px; height:150px; left:200px; top:200px; background:#AAAAAA"> |
|
||||||
<p> <b>Laden...</b><br/><img src="../images/progress_bar.gif"></img><br/></p></div> |
|
||||||
|
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:for-each select="/ergebnisse/menue"> |
|
||||||
<xsl:call-template name="menuFrame" /> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:if> |
|
||||||
<div> |
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:attribute name="class"><xsl:text>page-wrap</xsl:text></xsl:attribute> |
|
||||||
<xsl:for-each select="/ergebnisse/menue"> |
|
||||||
<xsl:call-template name="topbar_menue" /> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:if> |
|
||||||
|
|
||||||
<div> |
|
||||||
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
||||||
<xsl:attribute name="id"><xsl:text>wrapper</xsl:text></xsl:attribute> |
|
||||||
</xsl:if> |
|
||||||
<xsl:call-template name="viz_canvas"/> |
|
||||||
<xsl:call-template name="bottombar" /> |
|
||||||
<xsl:comment>customfooter</xsl:comment> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
<xsl:call-template name="footer" /> |
|
||||||
<xsl:call-template name="modalCards" /> |
|
||||||
</body> |
|
||||||
<!-- end body --> |
|
||||||
</html> |
|
||||||
</xsl:template> |
|
||||||
<!-- end main --> |
|
||||||
<xsl:template name="importVizJavascriptLibs"> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/d3.min.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/plot.js" /> |
|
||||||
<script language="Javascript" type="text/javascript" src="../xml/js/viz/viz_functions.js" /> |
|
||||||
<script language="Javascript" type="module" src="../xml/js/viz/d3-sankey.js" /> |
|
||||||
<script language="Javascript" type="text/javascript"> |
|
||||||
<xsl:variable name="quote"><xsl:text>"</xsl:text></xsl:variable> |
|
||||||
<xsl:text><![CDATA[ |
|
||||||
|
|
||||||
function initPage() |
|
||||||
{ |
|
||||||
var myChartModelStr=""; |
|
||||||
var myDiv=""; |
|
||||||
]]></xsl:text> |
|
||||||
<xsl:for-each select="ergebnisse"> |
|
||||||
<xsl:for-each select="ergebnis/ergebniselement"> |
|
||||||
<xsl:variable name="chart_id"><xsl:value-of select="../felder/feld[@varname='Grafik']/value" /></xsl:variable> |
|
||||||
<xsl:variable name="ergebniselement_ordnr"><xsl:value-of select="@ordnr" /></xsl:variable> |
|
||||||
<xsl:if test="$chart_id != ''"> |
|
||||||
<xsl:text><![CDATA[ |
|
||||||
myChartModelStr=']]></xsl:text> |
|
||||||
<xsl:value-of select="translate(viz_charts/viz_chart[@tid=$chart_id]/@chartmodel,'§',$quote)" /> |
|
||||||
<xsl:text><![CDATA['; |
|
||||||
myDiv="]]></xsl:text> |
|
||||||
<xsl:value-of select="concat('chartDiv',$ergebniselement_ordnr)" /> |
|
||||||
<xsl:text><![CDATA["; |
|
||||||
createViewer(myChartModelStr,myDiv); |
|
||||||
myDiv="]]></xsl:text> |
|
||||||
<xsl:value-of select="concat('modalCardImage',$ergebniselement_ordnr)" /> |
|
||||||
<xsl:text><![CDATA["; |
|
||||||
createViewer(myChartModelStr,myDiv); |
|
||||||
myDiv="]]></xsl:text> |
|
||||||
<xsl:value-of select="concat('modalCardDetailImage',$ergebniselement_ordnr)" /> |
|
||||||
<xsl:text><![CDATA["; |
|
||||||
createViewer(myChartModelStr,myDiv); |
|
||||||
|
|
||||||
]]></xsl:text> |
|
||||||
</xsl:if> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:for-each> |
|
||||||
<xsl:text><![CDATA[ |
|
||||||
} |
|
||||||
|
|
||||||
function createViewer(myChartModelStr,chartDiv) |
|
||||||
{ |
|
||||||
myChartModel=JSON.parse(myChartModelStr); |
|
||||||
renderChart(chartDiv,myChartModel); |
|
||||||
} |
|
||||||
|
|
||||||
function toggleLegendeDisplay(legendeDiv) |
|
||||||
{ |
|
||||||
var myDiv=document.getElementById(legendeDiv); |
|
||||||
if(myDiv.style.display=="block") |
|
||||||
myDiv.style.display="none"; |
|
||||||
else |
|
||||||
myDiv.style.display="block"; |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
]]></xsl:text> |
|
||||||
</script> |
|
||||||
|
|
||||||
</xsl:template> |
|
||||||
|
|
||||||
<xsl:template name="viz_canvas"> |
|
||||||
<xsl:if test="/ergebnisse/@isMakro='true'"> |
|
||||||
<h1><xsl:value-of select="/ergebnisse/makro/name" /></h1> |
|
||||||
</xsl:if> |
|
||||||
<p></p> |
|
||||||
<xsl:call-template name="buildVizMetadata" /> |
|
||||||
|
|
||||||
<!-- end Kopf--> |
|
||||||
<!-- start Grafiken--> |
|
||||||
<!-- Berechne den Umbruch der Spalten für die Kacheln |
|
||||||
z.B. 6 Grafiken ergibt einen Umbruch nach der 3. Teiltabelle |
|
||||||
Formel: ANZ / 2 kaufm. gerundet |
|
||||||
--> |
|
||||||
<xsl:variable name="spalten_anz"> |
|
||||||
<xsl:value-of select="max(number(/ergebnisse/ergebnis/felder/feld[@varname='Spaltenanzahl']/value))"/> |
|
||||||
</xsl:variable> |
|
||||||
<xsl:variable name="colwidth"> |
|
||||||
<xsl:value-of select="12 div $spalten_anz"/> |
|
||||||
</xsl:variable> |
|
||||||
|
|
||||||
<xsl:variable name="ergebniselemente_anz"> |
|
||||||
<xsl:value-of select="count(/ergebnisse/ergebnis[felder/feld[@varname='Grafik']])"/> |
|
||||||
</xsl:variable> |
|
||||||
<xsl:variable name="ergebniselemente_umbruch"> |
|
||||||
<xsl:value-of select="round($ergebniselemente_anz div max(number(/ergebnisse/ergebnis/felder/feld[@varname='Spaltenanzahl']/value)))"/> |
|
||||||
</xsl:variable> |
|
||||||
<!--<p>plan: <xsl:value-of select="/ergebnisse/ergebnis/felder/feld[@varname='Spaltenanzahl']/value"/> |
|
||||||
</p>--> |
|
||||||
<span class="separator"> </span> |
|
||||||
<!--Beginn Selektions-Card--> |
|
||||||
<!--Beginn Berichtstitel, Pfad, Knopfleiste--> |
|
||||||
<section class="hero-body has-background-light"> |
|
||||||
<section class="container"> <!--Beginn Kartenreihe --> |
|
||||||
<div class="columns features is-mobile is-left"> <!--Beginn columns Kartenreihe --> |
|
||||||
|
|
||||||
<xsl:for-each select="ergebnisse/ergebnis[felder/feld[@varname='Grafik']/value!='']/ergebniselement"> |
|
||||||
<xsl:variable name="ergebniselement_counter" select="position()" /> |
|
||||||
<xsl:variable name="chart_id"><xsl:value-of select="../felder/feld[@varname='Grafik']/value" /></xsl:variable> |
|
||||||
<xsl:variable name="ergebniselement_ordnr"><xsl:value-of select="@ordnr" /></xsl:variable> |
|
||||||
|
|
||||||
|
|
||||||
<!--<p><xsl:value-of select="concat('Zähler: ',$ergebniselement_counter)"/></p>--> |
|
||||||
<div> |
|
||||||
<xsl:attribute name="class"><xsl:text>column is-</xsl:text><xsl:value-of select="$colwidth"/></xsl:attribute> |
|
||||||
<xsl:call-template name="viewer_kachel"> |
|
||||||
<xsl:with-param name="caption" select="viz_charts/viz_chart[@tid=$chart_id]/@caption"/> |
|
||||||
<xsl:with-param name="ergebniselement_ordnr" select="$ergebniselement_ordnr" /> |
|
||||||
</xsl:call-template> |
|
||||||
<!--<p><xsl:value-of select="concat($spalten_anz,'-',$ergebniselement_counter,':',$ergebniselement_counter mod $spalten_anz)"/></p>--> |
|
||||||
</div> |
|
||||||
<!-- neue Zeile wenn counter mod Spaltenanz. =0 --> |
|
||||||
|
|
||||||
<xsl:if test="$ergebniselement_counter >= $spalten_anz and ($ergebniselement_counter mod $spalten_anz) =0"> |
|
||||||
<xsl:text disable-output-escaping="yes"><![CDATA[ |
|
||||||
</div> |
|
||||||
</section> |
|
||||||
<section class="container"> |
|
||||||
<div class="columns features is-mobile is-left"> |
|
||||||
]]></xsl:text> |
|
||||||
</xsl:if> |
|
||||||
</xsl:for-each> |
|
||||||
</div><!-- der columns --> |
|
||||||
</section><!-- der letzten Kartenreihe --> |
|
||||||
</section><!-- des Portals --> |
|
||||||
</xsl:template> |
|
||||||
<xsl:template name="modalCards" > |
|
||||||
<xsl:for-each select="/ergebnisse"> |
|
||||||
<xsl:for-each select="ergebnis/ergebniselement"> |
|
||||||
<xsl:variable name="chart_id"><xsl:value-of select="../felder/feld[@varname='Grafik']/value" /></xsl:variable> |
|
||||||
<xsl:variable name="ergebniselement_ordnr"><xsl:value-of select="@ordnr" /></xsl:variable> |
|
||||||
<xsl:if test="$chart_id != ''"> |
|
||||||
<div class="modal modal-fx-3dSlit" id="{concat('modalCard',$ergebniselement_ordnr)}"> |
|
||||||
<div class="modal-background"></div> |
|
||||||
<div class="modal-content is-huge is-image"> |
|
||||||
<!-- content --> |
|
||||||
|
|
||||||
<div class="modal-content"> |
|
||||||
<div class="box" style="text-align:right"> |
|
||||||
<a href="{concat('javascript:closeModalImage(',$ergebniselement_ordnr,');')}"> |
|
||||||
<span class="button is-black is-outlined"> X </span> |
|
||||||
</a> |
|
||||||
</div> |
|
||||||
<div class="box"> |
|
||||||
<div id="{concat('modalCardImage',$ergebniselement_ordnr)}"> |
|
||||||
Picture placeholder |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="modal modal-fx-3dSlit" id="{concat('modalCardDetail',$ergebniselement_ordnr)}"> |
|
||||||
<div class="modal-background"></div> |
|
||||||
<div class="modal-content is-tiny"> |
|
||||||
<div class="box" style="text-align:right"> |
|
||||||
<h4><xsl:value-of select="viz_charts/viz_chart[@tid=$chart_id]/@caption"/></h4> |
|
||||||
<a href="{concat('javascript:closeModalCardDetail(',$ergebniselement_ordnr,');')}"> |
|
||||||
<span class="button is-black is-outlined"> X </span> |
|
||||||
</a> |
|
||||||
</div> |
|
||||||
<!-- content --> |
|
||||||
<div class="card"> |
|
||||||
<div class="card-image"> |
|
||||||
<div id="{concat('modalCardDetailImage',$ergebniselement_ordnr)}"> |
|
||||||
Picture placeholder |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="card-content"> |
|
||||||
<div class="media"> |
|
||||||
<div class="media-content"> |
|
||||||
<p><xsl:value-of select="viz_charts/viz_chart[@tid=$chart_id]/@description"/></p> |
|
||||||
<p class="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 value_caption != ''"> |
|
||||||
|
|
||||||
<span class="feldname"> |
|
||||||
<xsl:choose> |
|
||||||
<xsl:when test="string-length(caption_short) > 0 and caption_short != 'null'" > |
|
||||||
<![CDATA[]]><xsl:value-of select="caption_short" /><![CDATA[]]> |
|
||||||
</xsl:when> |
|
||||||
<xsl:otherwise> |
|
||||||
<xsl:value-of select="@varname" /> |
|
||||||
</xsl:otherwise> |
|
||||||
</xsl:choose></span>:  |
|
||||||
<xsl:if test="string-length(value_caption) < 50"> |
|
||||||
<span class="feldwert"><xsl:value-of select="value_caption" /><![CDATA[]]></span> |
|
||||||
</xsl:if> |
|
||||||
<xsl:if test="string-length(value_caption) > 49"> |
|
||||||
<span class="feldwert"><![CDATA[]]><xsl:value-of select="substring(value_caption,0,50)" /><![CDATA[]]>...</span> |
|
||||||
</xsl:if> |
|
||||||
<xsl:if test="sicht!=''"> |
|
||||||
<span><![CDATA[ (]]><xsl:value-of select="sicht" /> |
|
||||||
<xsl:if test="@stand!=''"><xsl:text> - Stand:</xsl:text><xsl:value-of select="@stand"/></xsl:if> |
|
||||||
<xsl:text><![CDATA[)]]> </xsl:text></span> |
|
||||||
|
|
||||||
</xsl:if> |
|
||||||
; |
|
||||||
</xsl:if> |
|
||||||
|
|
||||||
</xsl:for-each> |
|
||||||
User: <xsl:value-of select="/ergebnisse/user"/>  |
|
||||||
Stand: <xsl:value-of select="../stand" /></p> |
|
||||||
<xsl:if test="../hinweis != ''"> |
|
||||||
<xsl:call-template name="newline_to_br"> |
|
||||||
<xsl:with-param name="string" select="../hinweis" /> |
|
||||||
</xsl:call-template> |
|
||||||
</xsl:if> |
|
||||||
</div> |
|
||||||
<p align="right"><a href="{concat('javascript:closeModalCardDetail(',$ergebniselement_ordnr,');')}"> |
|
||||||
<span class="button is-black is-outlined"> X </span> |
|
||||||
</a></p> |
|
||||||
</div> |
|
||||||
|
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
</div> |
|
||||||
</xsl:if> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:for-each> |
|
||||||
</xsl:template> |
|
||||||
</xsl:stylesheet> |
|
Loading…
Reference in new issue