UWVA#38222 Locatie met louter vervallen gebouwen toch te selecteren

svn path=/Website/branches/v2016.2/; revision=31326
This commit is contained in:
Erik Groener
2016-11-02 12:53:33 +00:00
parent a073c40f47
commit 79357dc56f
18 changed files with 100 additions and 34 deletions

View File

@@ -668,11 +668,23 @@ else // nieuwe bestelling. Defaults bepalen
if (getQParamInt("adres_key", -1) > 0)
aflever_readonly = true;
var sql_filter = " AND EXISTS"
+ " ( SELECT ''"
+ " FROM alg_v_aanweziggebouw ag"
+ " , alg_srtgebouw sg"
+ " WHERE ag.alg_srtgebouw_key = sg.alg_srtgebouw_key(+)"
+ " AND (ag.alg_gebouw_vervaldatum IS NULL OR ag.alg_gebouw_vervaldatum > TRUNC (SYSDATE))"
+ " AND sg.alg_srtgebouw_passief IS NULL"
+ " AND ag.alg_locatie_key = m.alg_locatie_key"
+ " )";
sql = "SELECT m.mld_adres_key"
+ ", m.mld_adres_naam, m.mld_adres_upper"
+ (aflever_readonly? " FROM mld_adres m" : " FROM mld_v_afleveradres m")
+ " WHERE 1=1"
+ sql_filter
+ (ALGreadlevel >= 0
? " WHERE m.alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations "
? " AND m.alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations "
+ " WHERE prs_perslid_key = " + user_key
+ " AND niveau = " + ALGreadlevel + ")"
: "")

View File

@@ -110,7 +110,8 @@ function onOtherDrawing()
verdiepingkey: floor_key,
startlevel: 2, // Locatie
eindlevel: 4, // Verdieping
onVerChange: "OnFloorChanged()"
onVerChange: "OnFloorChanged()",
filtercode: "FAC"
});
%>
<tr>

View File

@@ -84,7 +84,8 @@ if (verdieping_key > 0 || (gebouw_key > 0 && bttype == "T"))
terrein: true,
startlevel: 2, // locatie
eindlevel: 4, // verdieping
whenEmpty: L("lcl_search_generic") // want filter bttype?
whenEmpty: L("lcl_search_generic"), // want filter bttype?
filtercode: "FAC"
});
%>
</table>

View File

@@ -42,7 +42,8 @@ var authparams = user.checkAutorisation(autfunction);
terrein: true,
startlevel: 2, // locatie
eindlevel: 3, // Gebouw
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
%>
<tr>

View File

@@ -103,7 +103,8 @@ var cnt_srtcontract_type = oRs("cnt_srtcontract_type").value;
onGebChange: "onPlaatsChange()",
onVerChange: "onPlaatsChange()",
onRuiChange: "onPlaatsChange()",
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
}); %>
</table>
</td>
@@ -330,15 +331,30 @@ var cnt_srtcontract_type = oRs("cnt_srtcontract_type").value;
<!-- Locatie -->
<tr>
<% sql = "SELECT alg_locatie_key"
+ " , alg_locatie_omschrijving"
+ " FROM alg_locatie"
+ " WHERE alg_locatie_verwijder IS NULL"
+ ((authparams.ALGwritelevel > -1)
? " AND alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations "
+ " WHERE prs_perslid_key = " + user_key + " AND niveau = " + authparams.ALGwritelevel + ")"
: "")
+ " ORDER BY alg_locatie_upper";
<%
var sql_my_loc = " AND al.alg_locatie_key IN"
+ " ( SELECT alg_locatie_key"
+ " FROM fac_v_my_locations"
+ " WHERE prs_perslid_key = " + user_key
+ " AND niveau = " + authparams.ALGwritelevel
+ " )";
var sql_filter = " AND EXISTS"
+ " ( SELECT ''"
+ " FROM alg_v_aanweziggebouw ag"
+ " , alg_srtgebouw sg"
+ " WHERE ag.alg_srtgebouw_key = sg.alg_srtgebouw_key(+)"
+ " AND (ag.alg_gebouw_vervaldatum IS NULL OR ag.alg_gebouw_vervaldatum > TRUNC (SYSDATE))"
+ " AND sg.alg_srtgebouw_passief IS NULL"
+ " AND ag.alg_locatie_key = al.alg_locatie_key"
+ " )";
var sql = "SELECT al.alg_locatie_key"
+ " , al.alg_locatie_omschrijving"
+ " FROM alg_locatie al"
+ " WHERE al.alg_locatie_verwijder IS NULL"
+ ((authparams.ALGwritelevel > -1) ? sql_my_loc : "")
+ sql_filter
+ " ORDER BY al.alg_locatie_upper";
FCLTselector("locs",
sql,
{ label: L("lcl_location"),

View File

@@ -275,7 +275,8 @@ var authparams = user.checkAutorisation(autfunction, true) || {};
eindlevel: 3, // gebouw
secsearch: 2,
trclass: "noxd",
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
RWFIELDTR("loc_omschr", "fld wildcardr", L("lcl_location"), safe.htmlattr(loc_omschr), { trclass: "primsearch onlyxd hidden", datatype: "text" });

View File

@@ -103,7 +103,8 @@ var betreft = getQParamArray("betreft", []); // Betreft module BES, CNT, FIN, ML
eindlevel: 3, // gebouw
terrein: true,
trclass: "noxd",
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
%>
</table>

View File

@@ -317,7 +317,8 @@ var isContactpersoon = user.isContactpersoon();
eindlevel: 3, // gebouw
terrein: true,
trclass: "noxd",
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
}
%>

View File

@@ -189,6 +189,7 @@ user.anything_todo_or_abort(tobemoved > 0); // We klagen niet over enkele wel en
, eindlevel: maxlevel
, terrein: true
, requiredlevel: 2
, filtercode: "FAC"
}
);

View File

@@ -439,7 +439,8 @@ var authparams = user.checkAutorisation(autfunction);
startlevel: alg_startlevel,
eindlevel: 2, // locatie
trclass: "noxd",
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
}
else //fronto
@@ -448,7 +449,8 @@ var authparams = user.checkAutorisation(autfunction);
startlevel: alg_startlevel,
eindlevel: 3, // gebouw
trclass: "noxd",
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
}
}

View File

@@ -29,7 +29,8 @@ var authparams = user.checkAutorisation(autfunction);
FCLTplaatsselector(authparams.ALGreadlevel, { startlevel: 2, // locatie
eindlevel: 2, // Locatie
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
sql = " SELECT DISTINCT s.ins_srtdeel_key"

View File

@@ -94,7 +94,8 @@ var authparams = user.checkAutorisation(autfunction);
gebouwkey: bld_key,
startlevel: 2, // locatie
eindlevel: 3, // gebouw
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
}); %>
</table>
</td><!-- end column 2-->

View File

@@ -147,7 +147,8 @@ toRs.close();
startlevel: 2, // locatie
eindlevel: 3, // gebouw
trclass: "noxd",
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
%>

View File

@@ -135,22 +135,35 @@ var dienst_key = getQParamInt("dienst_key"); // bedrijf key
<td>
<label><%=L("lcl_location")%>:</label><br>
<%
var sql_filter = " AND EXISTS"
+ " ( SELECT ''"
+ " FROM alg_v_aanweziggebouw ag"
+ " , alg_srtgebouw sg"
+ " WHERE ag.alg_srtgebouw_key = sg.alg_srtgebouw_key(+)"
+ " AND (ag.alg_gebouw_vervaldatum IS NULL OR ag.alg_gebouw_vervaldatum > TRUNC (SYSDATE))"
+ " AND sg.alg_srtgebouw_passief IS NULL"
+ " AND ag.alg_locatie_key = al.alg_locatie_key"
+ " )";
var existing_loc_sql =
"SELECT dl.alg_locatie_key"
+ " , l.alg_locatie_omschrijving"
+ " , al.alg_locatie_omschrijving"
+ " , 'L' locorgeb"
+ " FROM prs_bedrijfdienstlocatie dl"
+ " , alg_locatie l"
+ " WHERE dl.alg_locatie_key = l.alg_locatie_key"
+ " , alg_locatie al"
+ " WHERE dl.alg_locatie_key = al.alg_locatie_key"
+ " AND dl.prs_dienst_key = " + dienst_key
+ " AND dl.prs_bedrijf_key = " + bedrijf_key
+ " AND dl.alg_locatie_key IS NOT NULL";
//+ sql_filter;
var loc_sql =
"SELECT l.alg_locatie_key"
+ " , l.alg_locatie_omschrijving"
"SELECT al.alg_locatie_key"
+ " , al.alg_locatie_omschrijving"
+ " , 'L' locorgeb"
+ " FROM alg_v_aanweziglocatie l";
+ " FROM alg_v_aanweziglocatie al"
+ " WHERE 1=1"
+ sql_filter;
FCLTselector("locPossible", loc_sql + " MINUS " + existing_loc_sql + " ORDER BY 2",
{ startmulti: true,
@@ -181,8 +194,10 @@ var dienst_key = getQParamInt("dienst_key"); // bedrijf key
+ " FROM prs_bedrijfdienstlocatie dl"
+ " , alg_gebouw g"
+ " , alg_locatie l"
//+ " , alg_srtgebouw sg"
+ " WHERE dl.alg_gebouw_key = g.alg_gebouw_key"
+ " AND g.alg_locatie_key = l.alg_locatie_key"
//+ " AND g.alg_srtgebouw_key = sg.alg_srtgebouw_key(+)"
+ " AND dl.prs_dienst_key = " + dienst_key
+ " AND dl.prs_bedrijf_key = " + bedrijf_key
+ " AND dl.alg_gebouw_key IS NOT NULL";
@@ -191,9 +206,13 @@ var dienst_key = getQParamInt("dienst_key"); // bedrijf key
+ " , l.alg_locatie_code||'-'||g.alg_gebouw_omschrijving"
+ " , 'G' locorgeb"
+ " , l.alg_locatie_key"
+ " FROM alg_v_aanweziggebouw g,"
+ " alg_locatie l"
+ " WHERE l.alg_locatie_key = g.alg_locatie_key";
+ " FROM alg_v_aanweziggebouw g"
+ " , alg_locatie l"
+ " , alg_srtgebouw sg"
+ " WHERE l.alg_locatie_key = g.alg_locatie_key"
+ " AND g.alg_srtgebouw_key = sg.alg_srtgebouw_key(+)"
+ " AND (g.alg_gebouw_vervaldatum IS NULL OR g.alg_gebouw_vervaldatum > TRUNC (SYSDATE))"
+ " AND sg.alg_srtgebouw_passief IS NULL";
%> <br><label><%=L("lcl_building")%>:</label><br>
<% FCLTselector("gebPossible", geb_sql + " MINUS " + existing_geb_sql + " ORDER BY 2",

View File

@@ -109,7 +109,8 @@ var authparams = user.checkAutorisation(autfunction);
startlevel: 1, // District
eindlevel: 5, // Ruimte
secsearch: 3, // gebouw en hoger
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
}); %>
</table>
<!-- end column 1 -->

View File

@@ -146,7 +146,8 @@ if (!oRs.eof) uitleen_flex_present = true;
BLOCK_START("sleRuimte", L("lcl_sle_ruimte"));
FCLTplaatsselector(authparamsSLEBOF.ALGwritelevel, { startlevel: 2, // Locatie
eindlevel: 5, // Ruimte
autoselect: true
autoselect: true,
filtercode: "FAC"
});
%>
<tr>

View File

@@ -198,7 +198,8 @@ var authparamsSLEFOF = user.checkAutorisation("WEB_SLEFOF", true);
onWerChange: "UnSelectOwner()",
startlevel: 2, // locatie
eindlevel: 5, // ruimte/werkplek
whenEmpty: L("lcl_search_generic") // want filter
whenEmpty: L("lcl_search_generic"), // want filter
filtercode: "FAC"
});
//<!-- Afdeling/Organisatie -->

View File

@@ -124,6 +124,7 @@ function getFiltClauseLocatie(pfiltcode, params)
+ " WHERE ag.alg_gebouw_bez = 1"
+ " AND (ag.alg_gebouw_vervaldatum IS NULL OR ag.alg_gebouw_vervaldatum > TRUNC(SYSDATE))"
+ " AND ag.alg_locatie_key = l.alg_locatie_key)";
lfiltClause.where += lfiltClauseFAC;
break;
case "FAC": // Facilitaire locaties, met een niet-passief gebouw of terrein
@@ -201,7 +202,10 @@ function getFiltClauseLocatie(pfiltcode, params)
+ " AND g.alg_locatie_key = l.alg_locatie_key"
+ ")";
lfiltClause.where += lfiltClauseFAC; // Ook dat nog
break;
case "INCVR": // include virtual rooms, default these are NOT included
lfiltClause.where = lfiltClauseFAC;
break;
}
}