<%@ language = "JavaScript" %> <% /* $Revision$ $Id$ File: object_search.asp Description: List of objects (Mobile version) Parameters: ins_key (bv via QRC) Resultaat wordt standaard beperkt tot CurrenPosition maar om flexibel te zijn is dat te overrulen (bv voor een QRC met objecten in Harderwijk?) Note: Een tweede opzet, met jQm, deze werkt wel weer maar er is veel op aan te vullen, zoals - Nu alleen ruimtegebonden objecten, dat moet anders - ins_srtdeel_image erbij tonen if gevuld? */ %>
<% FCLTMHeader.Generate({}); %> <% var autfunction = "WEB_INSUSE"; var authparams = user.checkAutorisation(autfunction); var locatie_key = getQParamInt("locatie_key", user.alg_locatie_key({withcurrent: true})); // Locatie var gebouw_key = getQParamInt("gebouw_key", user.alg_gebouw_key({withcurrent: true})); // Gebouw, kan -1 zijn, dan niet gebruiken var verdieping_key = getQParamInt("verdieping_key", user.alg_verdieping_key({withcurrent: true})); var ins_key = getQParamInt("ins_key", -1); var ruimte_key = getQParamInt("ruimte_key", -1); var mld_key = getQParamInt("mld_key", -1); var ins_parent_key = getQParamInt("ins_parent_key", -1); var grp_sel = getQParam("grp", ""); var qrc = getQParamInt("qrc", 0) != 0; var subject = L("lcl_mobile_objecten"); if (ruimte_key > -1) { var sql = "SELECT aog.alg_gebouw_code || '-' || aog.alg_verdieping_code || '-' || aog.alg_ruimte_nr plaats" + " FROM alg_v_onroerendgoed_gegevens aog" + " WHERE aog.alg_ruimte_key = " + ruimte_key; var oRs = Oracle.Execute(sql); subject += " " + oRs("plaats").Value; } else if (mld_key > -1) { subject += " " + L("lcl_mobile_objbijmelding"); } else if (ins_parent_key > -1) { var sql = "SELECT id.ins_deel_omschrijving" + ", " + lcl.xsqla('sd.ins_srtdeel_omschrijving', 'sd.ins_srtdeel_key') + " FROM ins_deel id" + " , ins_srtdeel sd" + " WHERE id.ins_srtdeel_key = sd.ins_srtdeel_key" + " AND id.ins_deel_key = " + ins_parent_key; var oRs = Oracle.Execute(sql); subject = L("lcl_subobjects") + " " + L("lcl_mobile_ondbijobject") + " " + oRs("ins_srtdeel_omschrijving").Value + " " + oRs("ins_deel_omschrijving").Value; } else { subject += " " + CurrentPosition } %>
<% PAGE_START(); HEADER({title: subject, back:!qrc}); CONTENT_START(); function fncolLink(oRs) { var url = ""; if (grp_sel == "") { url = "../pda/ins_list.asp?grp=" + safe.url(oRs("ins_srtgroep_omschrijving").Value) + (ruimte_key>-1 ? "&ruimte_key="+ ruimte_key : ""); } else { url = "../pda/ins_deel.asp?ins_key=" + oRs("ins_deel_key").Value; url += ((ins_parent_key > -1) ? "&ins_parent_key=" + ins_parent_key : ""); } return url; }; function fncolGroup(oRs) { return safe.html(oRs("ins_srtgroep_omschrijving").Value); }; function fncolHeader(oRs) { return safe.html(oRs("ins_srtdeel_omschrijving").Value); }; function fncolsubHeader(oRs) { return "
" + safe.html(oRs("plaats_afdeling").Value) + "
"; }; function fnAside(oRs) { return safe.html(oRs("reserveerbaar").Value); } // Let op: sortering (en groepering) op eerste 3 kolomen // Plaatsgebonden en afdelingsgebonden objecten var sqlR = " SELECT ins_deel_omschrijving" + " , " + lcl.xsqla('sd.ins_srtdeel_omschrijving', 'sd.ins_srtdeel_key') + " , " + lcl.xsqla('sg.ins_srtgroep_omschrijving', 'sg.ins_srtgroep_key') + " , ins_srtgroep_omschrijving org_srtgroep_omschrijving" + " , aog.alg_gebouw_code || '-' || aog.alg_verdieping_code || '-' || aog.alg_ruimte_nr plaats_afdeling" + " , id.ins_deel_key" + " , (SELECT MAX('R') FROM res_deel rd WHERE rd.res_deel_verwijder IS NULL AND rd.res_ins_deel_key = id.ins_deel_key) reserveerbaar" + " FROM alg_v_onroerendgoed_gegevens aog" + " , ins_deel id" + " , ins_srtdeel sd" + " , ins_srtgroep sg" + " , alg_locatie l" + " , alg_district di" + " WHERE id.ins_alg_ruimte_key = aog.alg_ruimte_key" + " AND aog.alg_locatie_key = l.alg_locatie_key" + " AND l.alg_district_key = di.alg_district_key" + " AND id.ins_alg_ruimte_type = 'R'" + " AND id.ins_deel_parent_key " + ((ins_parent_key > -1)? " = " + ins_parent_key : "IS NULL") + " AND sd.ins_srtdeel_key = id.ins_srtdeel_key" + " AND sd.ins_srtgroep_key = sg.ins_srtgroep_key" + " AND id.ins_deel_verwijder IS NULL" + " AND (id.ins_deel_vervaldatum IS NULL OR id.ins_deel_vervaldatum > TRUNC(SYSDATE))" + " AND sd.ins_srtgroep_key NOT IN (" + S("sle_ins_srt_groep_key") + ", " + S("cil_ins_srt_groep_key") + ")" + ((locatie_key > -1) ? " AND aog.alg_locatie_key = " + locatie_key : "") + ((gebouw_key > -1) ? " AND aog.alg_gebouw_key = " + gebouw_key : "") + ((verdieping_key > -1) ? " AND aog.alg_verdieping_key = " + verdieping_key : "") + ((ruimte_key > -1) ? " AND aog.alg_ruimte_key = " + ruimte_key : "") + ((mld_key > -1) ? " AND ins_deel_key IN (SELECT ins_deel_key FROM mld_melding_object WHERE mld_melding_object_verwijder IS NULL AND mld_melding_key = " + mld_key + ")" : "") + ((ins_key > -1) ? " AND id.ins_deel_key = " + ins_key : ""); sqlR = discx3d (sqlR, "id.ins_discipline_key", "di.alg_regio_key", "l.alg_district_key", "aog.alg_locatie_key", "aog.alg_gebouw_key", "aog.alg_verdieping_key", "aog.alg_ruimte_key", "", // b.prs_bedrijf_key: "", // d.prs_afdeling_key: autfunction, '', // disc_key 0); var sqlW = " SELECT ins_deel_omschrijving" + " , " + lcl.xsqla('sd.ins_srtdeel_omschrijving', 'sd.ins_srtdeel_key') + " , " + lcl.xsqla('sg.ins_srtgroep_omschrijving', 'sg.ins_srtgroep_key') + " , ins_srtgroep_omschrijving org_srtgroep_omschrijving" + " , aog.alg_gebouw_code || '-' || aog.alg_verdieping_code || '-' || aog.alg_ruimte_nr || '/' || w.prs_werkplek_volgnr plaats_afdeling" + " , id.ins_deel_key" + " , (SELECT MAX('R') FROM res_deel rd WHERE rd.res_deel_verwijder IS NULL AND rd.res_ins_deel_key = id.ins_deel_key) reserveerbaar" + " FROM alg_v_onroerendgoed_gegevens aog" + " , prs_werkplek w" + " , ins_deel id" + " , ins_srtdeel sd" + " , ins_srtgroep sg" + " , alg_locatie l" + " , alg_district di" + " WHERE id.ins_alg_ruimte_key = w.prs_werkplek_key" + " AND w.prs_alg_ruimte_key = aog.alg_ruimte_key" + " AND aog.alg_locatie_key = l.alg_locatie_key" + " AND l.alg_district_key = di.alg_district_key" + " AND id.ins_alg_ruimte_type = 'W'" + " AND id.ins_deel_parent_key " + ((ins_parent_key > -1) ? "="+ins_parent_key : "IS NULL") + " AND sd.ins_srtdeel_key = id.ins_srtdeel_key" + " AND sd.ins_srtgroep_key = sg.ins_srtgroep_key" + " AND id.ins_deel_verwijder IS NULL" + " AND sd.ins_srtgroep_key NOT IN (" + S("sle_ins_srt_groep_key") + ", " + S("cil_ins_srt_groep_key") + ")" + ((locatie_key > -1) ? " AND aog.alg_locatie_key = " + locatie_key : "") + ((gebouw_key > -1) ? " AND aog.alg_gebouw_key = " + gebouw_key : "") + ((verdieping_key > -1) ? " AND aog.alg_verdieping_key = " + verdieping_key : "") + ((ruimte_key > -1) ? " AND aog.alg_ruimte_key = " + ruimte_key : "") + ((mld_key > -1) ? " AND ins_deel_key IN (SELECT ins_deel_key FROM mld_melding_object WHERE mld_melding_object_verwijder IS NULL AND mld_melding_key = " + mld_key + ")" : "") + ((ins_key > -1) ? " AND id.ins_deel_key = " + ins_key : "") sqlW = discx3d (sqlW, "id.ins_discipline_key", "di.alg_regio_key", "l.alg_district_key", "aog.alg_locatie_key", "aog.alg_gebouw_key", "aog.alg_verdieping_key", "aog.alg_ruimte_key", "", // b.prs_bedrijf_key: "", // d.prs_afdeling_key: autfunction, '', // disc_key 0); var sqlA = " SELECT ins_deel_omschrijving" + " , " + lcl.xsqla('sd.ins_srtdeel_omschrijving', 'sd.ins_srtdeel_key') + " , " + lcl.xsqla('sg.ins_srtgroep_omschrijving', 'sg.ins_srtgroep_key') + " , ins_srtgroep_omschrijving org_srtgroep_omschrijving" + " , a.prs_afdeling_omschrijving plaats_afdeling" + " , id.ins_deel_key" + " , (SELECT MAX('R') FROM res_deel rd WHERE rd.res_deel_verwijder IS NULL AND rd.res_ins_deel_key = id.ins_deel_key) reserveerbaar" + " FROM ins_deel id" + " , ins_srtdeel sd" + " , ins_srtgroep sg" + " , prs_v_afdeling a" + " , prs_v_afdeling_boom boom" + " , prs_bedrijf b" + " WHERE id.ins_alg_ruimte_key = a.prs_afdeling_key" + " AND a.prs_bedrijf_key = b.prs_bedrijf_key" + " AND a.prs_afdeling_key = boom.prs_afdeling_key" + " AND id.ins_alg_ruimte_type = 'A'" + " AND id.ins_deel_parent_key " + ((ins_parent_key > -1)? " = " + ins_parent_key : "IS NULL") + " AND sd.ins_srtdeel_key = id.ins_srtdeel_key" + " AND sd.ins_srtgroep_key = sg.ins_srtgroep_key" + " AND id.ins_deel_verwijder IS NULL" + " AND (id.ins_deel_vervaldatum IS NULL OR id.ins_deel_vervaldatum > TRUNC(SYSDATE))" + " AND sd.ins_srtgroep_key NOT IN (" + S("sle_ins_srt_groep_key") + ", " + S("cil_ins_srt_groep_key") + ")" + ((mld_key > -1) ? " AND ins_deel_key IN (SELECT ins_deel_key FROM mld_melding_object WHERE mld_melding_object_verwijder IS NULL AND mld_melding_key = " + mld_key+")" : "") + ((ins_key > -1) ? " AND id.ins_deel_key = " + ins_key : ""); sqlA = discx3d (sqlA, "id.ins_discipline_key", "", //"di.alg_regio_key", "", //"l.alg_district_key", "", //"aog.alg_locatie_key", "", //"aog.alg_gebouw_key", "", //"aog.alg_verdieping_key", "", //"aog.alg_ruimte_key", "b.prs_bedrijf_key", "boom.prs_afdeling_key", autfunction, "", // disc_key 1); sql = "SELECT * FROM (" + sqlR + " UNION " + sqlW + " UNION " + sqlA + ")" + (grp_sel=="" ? "" : " WHERE org_srtgroep_omschrijving = " + safe.quoted_sql(grp_sel) ); sql += " ORDER BY 3, 2, 1"; var rst = new ResultsetTable({sql: sql, keyColumn: "ins_deel_key", linkColumn: fncolLink, groupColumn: ((ins_parent_key == -1)? fncolGroup : ""), groupSelect: grp_sel, detailColumn: fncolHeader, headerColumn: "ins_deel_omschrijving", asideColumn: fnAside, subheaderColumn: fncolsubHeader, ID: "deelstable", showAll: true }); var cnt = rst.processResultset(); CONTENT_END(); FOOTER(); PAGE_END(); %>