FSN#35534 berekende oppervlakte tonen - in lijsten teruggedraaid

svn path=/Website/trunk/; revision=28239
This commit is contained in:
Ruud Lipper
2016-02-22 09:15:40 +00:00
parent c85d2982c3
commit b02472b213
7 changed files with 74 additions and 41 deletions

View File

@@ -390,19 +390,48 @@ alg = {
return aresult; return aresult;
}, },
calc_bldm2: function _calc_bldm2() calc_algm2: function _calc_algm2(alg_key, lvl, opp)
{ {
sql = "SELECT SUM (alg_ruimte_bruto_vloeropp) opp" var sql = "SELECT alg_gebouw_key, "
+ " FROM alg_ruimte r, alg_verdieping v" + " alg_verdieping_key, "
+ " WHERE r.alg_verdieping_key = v.alg_verdieping_key" + " opp1, "
+ " AND r.alg_ruimte_verwijder IS NULL" + " opp2, "
+ " AND v.alg_verdieping_verwijder IS NULL" + " opp3 "
+ " AND v.alg_gebouw_key =" + bld_key; + " FROM ( SELECT v.alg_gebouw_key, "
oRs = Oracle.Execute(sql); + " r.alg_verdieping_key, "
var bldm2 = oRs("opp").Value; + " SUM (alg_ruimte_bruto_vloeropp) opp1, "
oRs.Close(); + " 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")
{
sql += " WHERE alg_verdieping_key is null AND alg_gebouw_key = " + alg_key;
}
return bldm2; if (lvl == "V")
{
sql += " WHERE alg_verdieping_key = " + alg_key;
}
var oRs = Oracle.Execute(sql);
switch (opp)
{
case "opp1": var algm2 = oRs("opp1").Value;
break;
case "opp2": var algm2 = oRs("opp2").Value;
break;
case "opp3": var algm2 = oRs("opp3").Value;
break;
}
oRs.Close();
return algm2;
} }
} }
%> %>

View File

@@ -165,8 +165,12 @@ else
BLOCK_START("algLoc2", ""); BLOCK_START("algLoc2", "");
if (bld_key > 0) if (bld_key > 0)
{ {
var calcm2 = alg.calc_bldm2(); var calcopp1 = alg.calc_algm2(bld_key, onrgoedlvl, "opp1");
ROFIELDTR("fld", L("lcl_estate_calc_vloeropp"), calcm2, {suppressEmpty: true}); var calcopp2 = alg.calc_algm2(bld_key, onrgoedlvl, "opp2");
var calcopp3 = alg.calc_algm2(bld_key, onrgoedlvl, "opp3");
ROFIELDTR("fld", L("lcl_estate_ruimte_bruto_vloeropp") + L("lcl_estate_calc_vloeropp"), calcopp1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt1") + L("lcl_estate_calc_vloeropp"), calcopp2, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt2") + L("lcl_estate_calc_vloeropp"), calcopp3, {suppressEmpty: true});
} }
manRWFIELD("bld_opp", "fld float", L("lcl_estate_gebouw_man_bruto_vloeropp"), bld_opp, {datatype:"float", maxlength: 15}); manRWFIELD("bld_opp", "fld float", L("lcl_estate_gebouw_man_bruto_vloeropp"), bld_opp, {datatype:"float", maxlength: 15});
manRWFIELD("bld_omtrek", "fld", L("lcl_estate_gebouw_man_omtrek"), bld_omtrek, {maxlength: 15}); manRWFIELD("bld_omtrek", "fld", L("lcl_estate_gebouw_man_omtrek"), bld_omtrek, {maxlength: 15});

View File

@@ -113,6 +113,15 @@ BLOCK_START("algLoc1", "");
BLOCK_END(); BLOCK_END();
BLOCK_START("algLoc2", "");
var calcopp1 = alg.calc_algm2(flr_key, onrgoedlvl, "opp1");
var calcopp2 = alg.calc_algm2(flr_key, onrgoedlvl, "opp2");
var calcopp3 = alg.calc_algm2(flr_key, onrgoedlvl, "opp3");
ROFIELDTR("fld", L("lcl_estate_ruimte_bruto_vloeropp") + L("lcl_estate_calc_vloeropp"), calcopp1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt1") + L("lcl_estate_calc_vloeropp"), calcopp2, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt2") + L("lcl_estate_calc_vloeropp"), calcopp3, {suppressEmpty: true});
BLOCK_END();
generateFlexKenmerkBlock ({ generateFlexKenmerkBlock ({
onrgoed_key : flr_key, onrgoed_key : flr_key,
onrgoed_niveau : onrgoedlvl, onrgoed_niveau : onrgoedlvl,

View File

@@ -123,7 +123,7 @@ function gebouw_list(pautfunction, params)
+ " , g.alg_gebouw_code" + " , g.alg_gebouw_code"
+ " , g.alg_gebouw_naam" + " , g.alg_gebouw_naam"
+ " , g.alg_gebouw_opmerking" + " , g.alg_gebouw_opmerking"
+ " , coalesce (g.alg_gebouw_bruto_vloeropp, gm2.opp) bvo" + " , g.alg_gebouw_bruto_vloeropp"
+ " , g.alg_gebouw_omtrek" + " , g.alg_gebouw_omtrek"
+ " , g.alg_gebouw_inhoud" + " , g.alg_gebouw_inhoud"
+ " , g.alg_gebouw_x" + " , g.alg_gebouw_x"
@@ -131,15 +131,8 @@ function gebouw_list(pautfunction, params)
+ " FROM alg_v_aanweziggebouw g" + " FROM alg_v_aanweziggebouw g"
+ " , alg_locatie l" + " , alg_locatie l"
+ " , alg_srtgebouw s" + " , alg_srtgebouw s"
+ " , ( SELECT alg_gebouw_key, SUM (alg_ruimte_bruto_vloeropp) opp"
+ " FROM alg_ruimte r, alg_verdieping v"
+ " WHERE r.alg_verdieping_key = v.alg_verdieping_key"
+ " AND r.alg_ruimte_verwijder IS NULL"
+ " AND v.alg_verdieping_verwijder IS NULL"
+ " GROUP BY alg_gebouw_key) gm2"
+ " WHERE l.alg_locatie_key(+) = g.alg_locatie_key" + " WHERE l.alg_locatie_key(+) = g.alg_locatie_key"
+ " AND s.alg_srtgebouw_key(+) = g.alg_srtgebouw_key" + " AND s.alg_srtgebouw_key(+) = g.alg_srtgebouw_key"
+ " AND gm2.alg_gebouw_key(+) = g.alg_gebouw_key"
+ " AND g.alg_gebouw_verwijder IS NULL"; + " AND g.alg_gebouw_verwijder IS NULL";
if ( authparams.ALGreadlevel > -1 ) if ( authparams.ALGreadlevel > -1 )
@@ -197,7 +190,7 @@ function gebouw_list(pautfunction, params)
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_code"), content: "alg_gebouw_code"})); rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_code"), content: "alg_gebouw_code"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_name"), content: "alg_gebouw_naam" })); rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_name"), content: "alg_gebouw_naam" }));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_srtgebouw"), content: "alg_srtgebouw_omschrijving"})); rst.addColumn(new Column({caption: L("lcl_estate_gebouw_srtgebouw"), content: "alg_srtgebouw_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_bruto_vloeropp"), content: "bvo", datatype: "float", decimals: 2})); rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_bruto_vloeropp"), content: "alg_gebouw_bruto_vloeropp", datatype: "float", decimals: 2}));
if (outputmode != 0) if (outputmode != 0)
{ {

View File

@@ -28,7 +28,6 @@ var bld_key = getQParamInt("bld_key");
var onrgoedlvl = "G"; var onrgoedlvl = "G";
var this_alg = alg.func_enabled(bld_key, onrgoedlvl); var this_alg = alg.func_enabled(bld_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.readman || this_alg.readuse); user.auth_required_or_abort(this_alg.readman || this_alg.readuse);
var calcm2 = alg.calc_bldm2();
var sql = " SELECT * " var sql = " SELECT * "
+ " FROM alg_gebouw " + " FROM alg_gebouw "
@@ -164,8 +163,13 @@ oRs.Close();
BLOCK_END(); BLOCK_END();
BLOCK_START("algLoc2", ""); BLOCK_START("algLoc2", "");
if (calcm2 != bld_opp)
ROFIELDTR("fld", L("lcl_estate_calc_vloeropp"), calcm2, {suppressEmpty: true}); var calcopp1 = alg.calc_algm2(bld_key, onrgoedlvl, "opp1");
var calcopp2 = alg.calc_algm2(bld_key, onrgoedlvl, "opp2");
var calcopp3 = alg.calc_algm2(bld_key, onrgoedlvl, "opp3");
ROFIELDTR("fld", L("lcl_estate_ruimte_bruto_vloeropp") + L("lcl_estate_calc_vloeropp"), calcopp1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt1") + L("lcl_estate_calc_vloeropp"), calcopp2, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt2") + L("lcl_estate_calc_vloeropp"), calcopp3, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_gebouw_man_bruto_vloeropp"), bld_opp, {suppressEmpty: true}); ROFIELDTR("fld", L("lcl_estate_gebouw_man_bruto_vloeropp"), bld_opp, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_gebouw_man_omtrek"), bld_omtrek, {suppressEmpty: true}); ROFIELDTR("fld", L("lcl_estate_gebouw_man_omtrek"), bld_omtrek, {suppressEmpty: true});

View File

@@ -108,13 +108,13 @@ oRs.Close();
BLOCK_END(); BLOCK_END();
BLOCK_START("algLoc2", ""); BLOCK_START("algLoc2", "");
sql = "SELECT SUM (alg_ruimte_bruto_vloeropp) opp" var calcopp1 = alg.calc_algm2(flr_key, onrgoedlvl, "opp1");
+ " FROM alg_ruimte" var calcopp2 = alg.calc_algm2(flr_key, onrgoedlvl, "opp2");
+ " WHERE alg_ruimte_verwijder IS NULL AND alg_verdieping_key =" + flr_key; var calcopp3 = alg.calc_algm2(flr_key, onrgoedlvl, "opp3");
oRs = Oracle.Execute(sql); ROFIELDTR("fld", L("lcl_estate_ruimte_bruto_vloeropp") + L("lcl_estate_calc_vloeropp"), calcopp1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_calc_vloeropp"), oRs("opp").value, {suppressEmpty: true}); ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt1") + L("lcl_estate_calc_vloeropp"), calcopp2, {suppressEmpty: true});
oRs.Close(); ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt2") + L("lcl_estate_calc_vloeropp"), calcopp3, {suppressEmpty: true});
BLOCK_END(); BLOCK_END();
generateFlexKenmerkBlock ({ generateFlexKenmerkBlock ({
onrgoed_key : flr_key, onrgoed_key : flr_key,

View File

@@ -118,17 +118,12 @@ function verdiepingen_list(pautfunction, params)
+ " l.alg_locatie_omschrijving, " + " l.alg_locatie_omschrijving, "
+ " g.alg_gebouw_omschrijving, " + " g.alg_gebouw_omschrijving, "
+ " v.alg_verdieping_omschrijving, " + " v.alg_verdieping_omschrijving, "
+ " v.alg_verdieping_code, " + " v.alg_verdieping_code "
+ " vm2.opp "
+ " FROM alg_v_aanwezigverdieping v, " + " FROM alg_v_aanwezigverdieping v, "
+ " alg_gebouw g, " + " alg_gebouw g, "
+ " alg_locatie l, " + " alg_locatie l "
+ " ( SELECT alg_verdieping_key, SUM (alg_ruimte_bruto_vloeropp) opp "
+ " FROM alg_v_aanwezigruimte "
+ " GROUP BY alg_verdieping_key) vm2 "
+ " WHERE g.alg_gebouw_key = v.alg_gebouw_key " + " WHERE g.alg_gebouw_key = v.alg_gebouw_key "
+ " AND l.alg_locatie_key(+) = g.alg_locatie_key " + " AND l.alg_locatie_key(+) = g.alg_locatie_key "
+ " AND vm2.alg_verdieping_key(+) = v.alg_verdieping_key "
+ " AND v.alg_verdieping_verwijder IS NULL " + " AND v.alg_verdieping_verwijder IS NULL "
if ( authparams.ALGreadlevel > -1 ) if ( authparams.ALGreadlevel > -1 )
@@ -188,7 +183,6 @@ function verdiepingen_list(pautfunction, params)
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_descr"), content: "alg_gebouw_omschrijving"})); rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_descr"), content: "alg_gebouw_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_estate_verdieping_man_code"), content: "alg_verdieping_code"})); rst.addColumn(new Column({caption: L("lcl_estate_verdieping_man_code"), content: "alg_verdieping_code"}));
rst.addColumn(new Column({caption: L("lcl_estate_verdieping_man_descr"), content: "alg_verdieping_omschrijving" })); rst.addColumn(new Column({caption: L("lcl_estate_verdieping_man_descr"), content: "alg_verdieping_omschrijving" }));
rst.addColumn(new Column({caption: L("lcl_estate_calc_vloeropp"), content: "opp", datatype: "float", decimals: 2}));
rst.addAction({ action: "verdiepingEdit", caption: L("lcl_edit"), isDefault: true}); rst.addAction({ action: "verdiepingEdit", caption: L("lcl_edit"), isDefault: true});
rst.addAction({ action: "doDelete", caption: L("lcl_delete"), enabler: "eDelete", single: !noref, multi: true, multiOnce: true}); rst.addAction({ action: "doDelete", caption: L("lcl_delete"), enabler: "eDelete", single: !noref, multi: true, multiOnce: true});