161 lines
6.3 KiB
Plaintext
161 lines
6.3 KiB
Plaintext
<%@ language="javascript"%>
|
|
<% /*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: CAD/obj_search.asp
|
|
Description: Zoek object via code
|
|
Parameters: objCode: de door de gebruiker ingevoerde zoekcode
|
|
loc_key: optioneel, standaard zoeken we *met* loc_key omdat dat sneller is
|
|
discs: nog niet getest. Denkbaar is om alleen te zoeken op
|
|
disciplines die aan staan
|
|
Context: Modal vanuit zoekknopje op hoofdscherm
|
|
Result: Als de gebruiker op een regel klikt wordt via closeModal
|
|
allerlei keys van object opgeleverd
|
|
Note:
|
|
|
|
*/ %>
|
|
|
|
<!-- #include file="../Shared/common.inc" -->
|
|
<!-- #include file="../Shared/resultset_table_v2.inc" -->
|
|
<!-- #include file="../Shared/discx3d.inc" -->
|
|
<!-- #include file="fgii.inc" -->
|
|
<!-- #include file="../Shared/json2.js" -->
|
|
|
|
<%
|
|
var autfunction = "WEB_INSUSE";
|
|
var oRs;
|
|
var sql = "";
|
|
var i=0;
|
|
var objCode = getQParam("objCode");
|
|
var loc = getQParamInt( "loc_key", -1);
|
|
var discs = getQParamIntArray("discs", []); // Komma separated list of ins_discipline_keys
|
|
// not tested (yet)
|
|
%>
|
|
|
|
<html>
|
|
<head>
|
|
<% FCLTHeader.Generate(); %>
|
|
<script type="text/javascript">
|
|
function objView(row)
|
|
{
|
|
var objData = eval('(' + row.getAttribute("ROWDATA") + ')');
|
|
objData.success = true;
|
|
FcltMgr.closeDetail(window, objData);
|
|
}
|
|
</script>
|
|
</head>
|
|
<body class="modal" id="mod_obj_search" style="width:600px" >
|
|
<% // Zoek de omschrijving van de locatie er bij of 'alle'
|
|
if( loc != -1)
|
|
{
|
|
var sql = "SELECT alg_locatie_code, "
|
|
+ " alg_locatie_omschrijving "
|
|
+ " FROM alg_locatie "
|
|
+ " WHERE alg_locatie_key = " + loc;
|
|
var oRs = Oracle.Execute(sql);
|
|
descr = oRs("alg_locatie_code").value + "-" + oRs("alg_locatie_omschrijving").value;
|
|
}
|
|
else
|
|
descr = L("lcl_all");
|
|
%>
|
|
<table width="100%">
|
|
<tr>
|
|
<td class="label"><label><%=L("lcl_location")%></label>: </td><td><%=safe.html(descr)%></td>
|
|
<% if (loc != -1)
|
|
{ %>
|
|
<td align="right" valign="center">
|
|
<form>
|
|
<input type=hidden name=objCode value=<%=safe.htmlattr(objCode)%>>
|
|
<input type=hidden name=discs value=<%=discs.join(",")%>>
|
|
<input type=submit value="<%=L("lcl_all")%>">
|
|
</form>
|
|
</td>
|
|
<% } %>
|
|
</tr>
|
|
</table>
|
|
|
|
<%
|
|
sql = "SELECT o.alg_plaatsaanduiding plaats, alg_ruimte_omschrijving"
|
|
+ ", s.ins_srtdeel_code || '-' ||" + lcl.xsql('s.ins_srtdeel_omschrijving', 's.ins_srtdeel_key') + " soort"
|
|
+ ", g.ins_deel_omschrijving"
|
|
+ ", g.ins_deel_key"
|
|
+ ", s.ins_srtdeel_key"
|
|
+ ", g.ins_discipline_key"
|
|
+ ", g.ins_alg_locatie_key"
|
|
+ ", l.alg_locatie_omschrijving"
|
|
+ ", o.alg_gebouw_key"
|
|
+ ", o.alg_gebouw_omschrijving"
|
|
+ ", o.alg_verdieping_key"
|
|
+ ", o.alg_verdieping_omschrijving"
|
|
+ ", g.ins_alg_ruimte_key"
|
|
+ ", l.alg_district_key"
|
|
+ ", ins_deel_upper" // filtering only
|
|
+ " FROM ins_deel g, alg_ruimte ar,"
|
|
+ " ins_v_alg_overzicht o,"
|
|
+ " ins_srtdeel s, alg_locatie l, alg_district di " // I added this for alg_district_key (FSN#1082)
|
|
+ " WHERE g.ins_deel_verwijder IS NULL"
|
|
+ " AND (g.ins_deel_vervaldatum IS NULL OR g.ins_deel_vervaldatum > TRUNC(SYSDATE))"
|
|
+ " AND g.ins_deel_module = 'INS'"
|
|
+ " AND g.ins_deel_parent_key IS NULL"
|
|
+ " AND o.alg_ruimte_key = ar.alg_ruimte_key"
|
|
+ " AND o.alg_onroerendgoed_keys = g.ins_alg_ruimte_key"
|
|
+ " AND o.alg_onroerendgoed_type = g.ins_alg_ruimte_type"
|
|
+ " AND g.ins_alg_ruimte_type IN ('R', 'W')"
|
|
+ " AND o.alg_locatie_key = g.ins_alg_locatie_key"
|
|
+ " AND o.alg_locatie_key = l.alg_locatie_key"
|
|
+ " AND l.alg_district_key = di.alg_district_key"
|
|
+ " AND s.ins_srtdeel_key = g.ins_srtdeel_key";
|
|
|
|
if (loc != -1) sql = sql + " AND g.ins_alg_locatie_key = " + loc;
|
|
sql = sql + " AND g.ins_deel_upper LIKE " + safe.quoted_sql_wild(objCode + "%")
|
|
|
|
if(discs.length > 0 && discs.join(",").indexOf("-1") == -1)
|
|
{
|
|
sql = sql + " and ins_discipline_key IN (" + discs.join(",") + ")";
|
|
// Veronderstel dat autorisatie dan wel goed zit
|
|
}
|
|
else
|
|
{
|
|
sql = discx3d (sql, "g.ins_discipline_key", "di.alg_district_key", "l.alg_district_key",
|
|
"l.alg_locatie_key", "o.alg_gebouw_key", "o.alg_verdieping_key",
|
|
"o.alg_ruimte_key", "b.prs_bedrijf_key", "b.prs_afdeling_key",
|
|
autfunction, discs.join(","), 0);
|
|
}
|
|
|
|
sql = sql + " order by ins_deel_omschrijving";
|
|
|
|
function fnrowData(oRs)
|
|
{
|
|
var data = {loc_key: oRs("ins_alg_locatie_key").value,
|
|
loc_oms: oRs("alg_locatie_omschrijving").value,
|
|
bld_key: oRs("alg_gebouw_key").value,
|
|
bld_oms: oRs("alg_gebouw_omschrijving").value,
|
|
flr_key: oRs("alg_verdieping_key").value,
|
|
flr_oms: oRs("alg_verdieping_omschrijving").value,
|
|
rui_key: oRs("ins_alg_ruimte_key").value,
|
|
disc_key: oRs("ins_discipline_key").value
|
|
};
|
|
|
|
return JSON.stringify(data);
|
|
}
|
|
var rst = new ResultsetTable({keyColumn: "ins_alg_ruimte_key",
|
|
ID: "objlist",
|
|
sql: sql,
|
|
rowData: fnrowData,
|
|
noPrint: true
|
|
});
|
|
|
|
rst.addColumn(new Column({caption: L("lcl_obj_identification"), content: "ins_deel_omschrijving"}));
|
|
rst.addColumn(new Column({caption: L("lcl_obj_sort"), content: "soort"}));
|
|
rst.addColumn(new Column({caption: L("lcl_obj_position"), content: "plaats"}));
|
|
rst.addColumn(new Column({caption: L("lcl_descr"), content: "alg_ruimte_omschrijving"}));
|
|
|
|
rst.addAction({ action: "objView", isDefault: true});
|
|
|
|
var cnt = rst.processResultset();
|
|
%>
|
|
</body>
|
|
</html>
|
|
|