FSN#35534 calc_algm2 efficienter

svn path=/Website/trunk/; revision=28241
This commit is contained in:
Ruud Lipper
2016-02-22 09:24:36 +00:00
parent 1870fe8670
commit 6290b11b46

View File

@@ -392,29 +392,21 @@ alg = {
calc_algm2: function _calc_algm2(alg_key, lvl, opp) calc_algm2: function _calc_algm2(alg_key, lvl, opp)
{ {
var sql = "SELECT alg_gebouw_key, " var sql = "SELECT SUM (alg_ruimte_bruto_vloeropp) opp1, "
+ " alg_verdieping_key, " + " SUM (alg_ruimte_opp_alt1) opp2, "
+ " opp1, " + " SUM (alg_ruimte_opp_alt2) opp3 "
+ " opp2, " + " FROM alg_ruimte r, alg_verdieping v "
+ " opp3 " + " WHERE v.alg_verdieping_key = r.alg_verdieping_key "
+ " FROM ( SELECT v.alg_gebouw_key, " + " AND r.alg_ruimte_verwijder IS NULL";
+ " r.alg_verdieping_key, "
+ " SUM (alg_ruimte_bruto_vloeropp) opp1, "
+ " SUM (alg_ruimte_opp_alt1) opp2, "
+ " SUM (alg_ruimte_opp_alt2) opp3 "
+ " FROM alg_ruimte r, alg_verdieping v "
+ " WHERE v.alg_verdieping_key = r.alg_verdieping_key "
+ " AND r.alg_ruimte_verwijder IS NULL "
+ " GROUP BY v.alg_gebouw_key, ROLLUP (r.alg_verdieping_key)) ";
if (lvl == "G") if (lvl == "G")
{ {
sql += " WHERE alg_verdieping_key is null AND alg_gebouw_key = " + alg_key; sql += " AND alg_gebouw_key = " + alg_key;
} }
if (lvl == "V") if (lvl == "V")
{ {
sql += " WHERE alg_verdieping_key = " + alg_key; sql += " AND r.alg_verdieping_key = " + alg_key;
} }
var oRs = Oracle.Execute(sql); var oRs = Oracle.Execute(sql);