diff --git a/src-modules/module/qa/conf/qa.xml b/src-modules/module/qa/conf/qa.xml
index cfe41bf..83f9b84 100644
--- a/src-modules/module/qa/conf/qa.xml
+++ b/src-modules/module/qa/conf/qa.xml
@@ -222,7 +222,33 @@ notnull="true">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+qa_mask_execution2project
+tid
+1
+pk_qa_mask_execution2project
+
+
+
+
+
+
+
Tabellenvergleich Name des Profils
@@ -276,6 +302,8 @@ notnull="true">
+
+
Tabellenvergleich Abgleiche Summen im Rahmen eines Profils
@@ -700,6 +728,18 @@ delete="FALSE" displayType="select" visibleFields="name"
format="%s">
+
+
+
+
+
+
+
+
+
@@ -903,6 +945,16 @@ mode="update_insert_delete_copy">
-->
+
+
+
+
+
+
+
+<#include "SuperX_general"/>
+
+
+
+select
+R.fieldclause,
+R.fromclause,
+R.groupbyclause,
+R.orderbyclause,
+T.tid,
+T.uniquename,
+T.name,
+T.whereclause
+FROM qa_dbtest T, qa_resultset R
+where
+T.resultset_id=R.tid
+and T.active=1
+;
+
+
+
+select
+A.dbtest_id,
+A.tid,
+A.rownr ,
+A.def_col_caption,
+A.def_col_name,
+A.def_col_value
+FROM qa_dbtest_assertion A
+where A.dbtest_id in (select T.tid
+from qa_dbtest T where T.active=1)
+ ;
+
+
+
+
+<#assign inEtl=true />
+<#if Maskennummer?exists && Maskennummer=37140>
+<#assign inEtl=false />
+#if>
+
+<#assign dbtest_id="" />
+<#if inEtl>
+
+<#else>
+
+/* <#assign dbtest_id="<>" />*/
+#if>
+create temp table tmp_qa_dbtest_result_id
+(qa_dbtest_result_id integer);
+
+
+<#foreach dbtest in qa_dbtests>
+<#if dbtest_id == "" || dbtest_id==dbtest.tid?string>
+
+select now() as beginn
+into temp tmp_anfang;
+
+select ${dbtest.fieldclause}
+into temp tmp_rs
+from ${dbtest.fromclause}
+<#if dbtest.whereclause !=''>
+where ${dbtest.whereclause}
+#if>
+<#if dbtest.groupbyclause !=''>
+group by ${dbtest.groupbyclause}
+#if>
+<#if dbtest.orderbyclause !=''>
+order by ${dbtest.orderbyclause}
+#if>
+;
+
+
+
+<#foreach dbtest_assertion in qa_dbtest_assertions>
+<#if dbtest_assertion.dbtest_id==dbtest.tid>
+
+insert into qa_dbtest_result(
+dbtest_assertion_id,
+execution_start ,
+execution_end ,
+result_code ,
+result_value )
+select
+${dbtest_assertion.tid},
+A.beginn,
+now(),
+case when T.${dbtest_assertion.def_col_name}='${dbtest_assertion.def_col_value}' then 0
+else 1 end as result_code,
+T.${dbtest_assertion.def_col_name} as result_value
+from tmp_anfang A left outer join tmp_rs T
+on (1=${dbtest_assertion.rownr})
+;
+insert into tmp_qa_dbtest_result_id(qa_dbtest_result_id)
+<#if SQLdialect='Postgres'>
+select currval('qa_dbtest_result_tid_seq') from xdummy
+<#else>
+select max(tid) from qa_dbtest_result
+#if>
+;
+
+#if>
+#foreach>
+drop table tmp_rs;
+drop table tmp_anfang;
+#if>
+#foreach>
+
+
+<#if !inEtl>
+select T.tid as dbtest_id,
+ T.name,
+ R.execution_start,
+ R.execution_end,
+ case when R.result_code=0 then 'Erfolg' else 'Warnung' end as result_str,
+ R.result_value,
+ '37100&DB-Test=' || T.tid as nexttable
+FROM qa_dbtest T, qa_dbtest_result R,qa_dbtest_assertion A
+where A.tid=R.dbtest_assertion_id
+and T.tid=A.dbtest_id
+and T.tid=<>
+and R.tid in (select qa_dbtest_result_id from tmp_qa_dbtest_result_id)
+order by 4 desc;
+#if>
diff --git a/src-modules/module/qa/masken/37000_felderinfo.unl b/src-modules/module/qa/masken/37000_felderinfo.unl
index c48a052..06befbc 100644
--- a/src-modules/module/qa/masken/37000_felderinfo.unl
+++ b/src-modules/module/qa/masken/37000_felderinfo.unl
@@ -1,4 +1,5 @@
37000^Benutzer/in^50^0^0^150^200^1^integer^200^0^1^<> select tid,nvl(name,benutzer) from userinfo order by 2;^^^
37001^Testfall-Schlüssel^10^0^0^150^150^1^sql^50^0^0^^^^
+37002^Projekt^10^0^0^150^80^1^integer^200^0^1^<> select tid,name from qa_project where active=1 /* and systeminfo_id=<> */ order by 2;^^^
37003^Name^20^0^0^150^150^1^sql^50^0^0^^^^
37004^Komponente^1^0^0^150^200^1^integer^200^0^1^<> select tid,name from systeminfo order by 2;^^^
diff --git a/src-modules/module/qa/masken/37000_masken_felder_bez.unl b/src-modules/module/qa/masken/37000_masken_felder_bez.unl
index 32ca19f..669c7d9 100644
--- a/src-modules/module/qa/masken/37000_masken_felder_bez.unl
+++ b/src-modules/module/qa/masken/37000_masken_felder_bez.unl
@@ -1,4 +1,5 @@
37000^37000^
37000^37001^
+37000^37002^
37000^37003^
37000^37004^
diff --git a/src-modules/module/qa/masken/37000_maskeninfo.unl b/src-modules/module/qa/masken/37000_maskeninfo.unl
index 2236304..cd43f11 100644
--- a/src-modules/module/qa/masken/37000_maskeninfo.unl
+++ b/src-modules/module/qa/masken/37000_maskeninfo.unl
@@ -52,6 +52,8 @@ where M.tid=E.maskeninfo_id\
/* and E.uniquename ilike '%<>%' */\
/* and E.systeminfo_id=<> */\
/* and E.maskeninfo_id=<> */\
+/* and E.tid in (select P.mask_execution_id from qa_mask_execution2project P where P.project_id=<>) */\
+\
;\
\
update tmp_ergebnis set stylesheet_str=(select S.filename\
diff --git a/src-modules/module/qa/masken/37020_felderinfo.unl b/src-modules/module/qa/masken/37020_felderinfo.unl
index 53f3b59..95425c8 100644
--- a/src-modules/module/qa/masken/37020_felderinfo.unl
+++ b/src-modules/module/qa/masken/37020_felderinfo.unl
@@ -6,3 +6,4 @@
37025^Nur aktive^30^0^0^150^80^1^integer^200^0^1^<> select 1,'Ja' from xdummy union select 0,'nein' from xdummy order by 1 desc;^^<>select 1,'Ja' from xdummy^
37026^Ab Datum^40^0^0^150^80^1^date^200^0^0^ ^^<> select today()-3 from xdummy^
37027^Testfall-Schlüssel^55^0^0^150^150^1^sql^50^0^0^^^^
+37028^Projekt^15^0^0^150^80^1^integer^200^0^1^<> select tid,name from qa_project where active=1 /* and systeminfo_id=<> */ order by 2;^^^
diff --git a/src-modules/module/qa/masken/37020_masken_felder_bez.unl b/src-modules/module/qa/masken/37020_masken_felder_bez.unl
index 4d2335c..2d89dc7 100644
--- a/src-modules/module/qa/masken/37020_masken_felder_bez.unl
+++ b/src-modules/module/qa/masken/37020_masken_felder_bez.unl
@@ -6,3 +6,4 @@
37020^37025^
37020^37026^
37020^37027^
+37020^37028^
diff --git a/src-modules/module/qa/masken/37020_maskeninfo.unl b/src-modules/module/qa/masken/37020_maskeninfo.unl
index be3524e..d5cbff9 100644
--- a/src-modules/module/qa/masken/37020_maskeninfo.unl
+++ b/src-modules/module/qa/masken/37020_maskeninfo.unl
@@ -47,6 +47,8 @@ target="tmp_qa_mask_execution">\
/* and E.name ilike '%<>%' */\
/* and E.uniquename ilike '%<>%' */\
/* and date(R.execution_start) >= date_val(<>) */\
+ /* and E.tid in (select P.mask_execution_id from qa_mask_execution2project P where P.project_id=<>) */\
+\
@selectintotmp>\
<@informixnolog/>;\
\
diff --git a/src-modules/module/qa/masken/37140_maskeninfo.unl b/src-modules/module/qa/masken/37140_maskeninfo.unl
index 0b957d7..02d537b 100644
--- a/src-modules/module/qa/masken/37140_maskeninfo.unl
+++ b/src-modules/module/qa/masken/37140_maskeninfo.unl
@@ -1,4 +1,5 @@
37140^Datenbank-Test ausführen^--Freemarker Template\
+--Achtung: Diese Script ist auch das select_stmt der Maske 37140\
<#include "SQL_lingua_franca"/>\
<#include "SuperX_general"/>\
\
@@ -16,7 +17,7 @@ T.whereclause\
FROM qa_dbtest T, qa_resultset R\
where \
T.resultset_id=R.tid\
-and T.tid=<>\
+and T.active=1\
;\
\
\
@@ -29,18 +30,31 @@ A.def_col_caption,\
A.def_col_name,\
A.def_col_value\
FROM qa_dbtest_assertion A\
-where A.dbtest_id=<>\
+where A.dbtest_id in (select T.tid\
+from qa_dbtest T where T.active=1)\
;\
\
\
\
\
+<#assign inEtl=true />\
+<#if Maskennummer?exists && Maskennummer=37140>\
+<#assign inEtl=false />\
+#if>\
+\
+<#assign dbtest_id="" />\
+<#if inEtl>\
+\
+<#else>\
+\
+/* <#assign dbtest_id="<>" />*/\
+#if>\
create temp table tmp_qa_dbtest_result_id\
(qa_dbtest_result_id integer);\
\
\
<#foreach dbtest in qa_dbtests>\
-\
+<#if dbtest_id == "" || dbtest_id==dbtest.tid?string>\
\
select now() as beginn\
into temp tmp_anfang;\
@@ -92,10 +106,11 @@ select max(tid) from qa_dbtest_result\
#foreach>\
drop table tmp_rs;\
drop table tmp_anfang;\
+#if> \
#foreach>\
\
\
-\
+<#if !inEtl>\
select T.tid as dbtest_id,\
T.name,\
R.execution_start,\
@@ -108,7 +123,8 @@ where A.tid=R.dbtest_assertion_id\
and T.tid=A.dbtest_id\
and T.tid=<>\
and R.tid in (select qa_dbtest_result_id from tmp_qa_dbtest_result_id)\
-order by 4 desc;^XIL List\
+order by 4 desc;\
+#if>^XIL List\
drop_and_delete movable_columns sizable_columns horizontal_scrolling\
white_space_color=COLOR_WHITE fixed_columns=2\
min_heading_height=35\