146 lines
5.8 KiB
C++
146 lines
5.8 KiB
C++
<% /*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: prj_list.inc
|
|
Description: Definieert de serverside functie prj_list() die een lijst van scenario's toont die
|
|
voldoen aan de gegeven parameters/criteria, binnen de readautorisaties van de user.
|
|
Parameters: -
|
|
Context: -
|
|
|
|
Note: -
|
|
|
|
*/ %>
|
|
|
|
<!-- #include file="../Shared/json2.js" -->
|
|
<!-- #include file="../Shared/resultset_table_v2.inc" -->
|
|
<!-- #include file="prj.inc" -->
|
|
|
|
<%
|
|
FCLTHeader.Requires({ plugins:["suggest", "jQuery"],
|
|
js: ["../PRJ/prj_list.js", "jquery-ui.js"]
|
|
});
|
|
|
|
function prj_list (pautfunction, params)
|
|
{ // VALIDATE AND PREPARE
|
|
// Als een parameter niet gedefinieerd of null is, dan doet-ie niks
|
|
// anders wordt die verondersteld een zinvolle waarde te hebben
|
|
// NB: -1 is vaak geen zinvolle waarde; null had het dan moeten zijn!
|
|
|
|
// Valid and supported parameters are:
|
|
// params.outputmode : print to 0 = screen, 1 = printer, 2 = excel, etc.
|
|
// showall : boolean
|
|
// params.scenario : wildcard string
|
|
// params.loc_key : key
|
|
// params.bld_key : key
|
|
// params.verhuisaanvraag: key
|
|
|
|
//
|
|
// if a parameters has a value of -1, then it is assumed not to be set and to be ignored.
|
|
|
|
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
|
|
var authparams = user.checkAutorisation(pautfunction);
|
|
|
|
// Voor resulttable de globalen zetten; zou ng anders moeten.
|
|
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
|
|
var print = (outputmode == 1 || outputmode == 5);
|
|
var excel = (outputmode == 2 || outputmode == 6);
|
|
var showall = params.showall;
|
|
|
|
var scenario = params.scenario;
|
|
var loc_key = params.loc_key;
|
|
var bld_key = params.bld_key;
|
|
var verhuisaanvraag = params.verhuisaanvraag;
|
|
%>
|
|
|
|
<html>
|
|
<head>
|
|
<%
|
|
FCLTHeader.Generate({ outputmode: outputmode });
|
|
%>
|
|
<script type="text/javascript">
|
|
// Text strings used by prj_list.js
|
|
</script>
|
|
</head>
|
|
|
|
<body id="listbody">
|
|
<%
|
|
var sql = "SELECT DISTINCT s.prj_scenario_key"
|
|
+ ", s.prj_scenario_omschrijving"
|
|
+ ", s.prj_scenario_opmerking"
|
|
+ ", p.prs_perslid_naam_full"
|
|
+ ", s.prj_scenario_aanmaak"
|
|
+ ", s.prj_scenario_datum"
|
|
+ ", s.prj_scenario_raming"
|
|
+ ", s.mld_melding_key"
|
|
+ " FROM prj_scenario s"
|
|
+ ", prs_v_perslid_fullnames_all p"
|
|
+ ", prj_ruimte rx"
|
|
+ ", alg_v_plaatsaanduiding a"
|
|
+ ", alg_verdieping v"
|
|
+ ", alg_gebouw g"
|
|
+ " WHERE s.prs_perslid_key = p.prs_perslid_key(+)"
|
|
+ " AND rx.prj_scenario_key(+) = s.prj_scenario_key"
|
|
+ " AND a.alg_onroerendgoed_keys(+) = rx.alg_verdieping_key"
|
|
+ " AND a.alg_onroerendgoed_type(+) = 'V'" // vermijdt locatie
|
|
+ " AND v.alg_verdieping_key(+) = rx.alg_verdieping_key"
|
|
+ " AND g.alg_gebouw_key(+) = v.alg_gebouw_key"
|
|
+ ((authparams.ALGreadlevel > -1)
|
|
? " AND (alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations"
|
|
+ " WHERE prs_perslid_key = " + user_key + " AND niveau = " + authparams.ALGreadlevel + ")"
|
|
+ " OR alg_locatie_key IS NULL)"
|
|
: "");
|
|
|
|
if (scenario)
|
|
sql += " AND UPPER (s.prj_scenario_omschrijving) LIKE " + safe.quoted_sql_wild("%" + scenario + "%");
|
|
|
|
if (loc_key)
|
|
sql += " AND g.alg_locatie_key = " + loc_key;
|
|
|
|
if (bld_key)
|
|
sql += " AND v.alg_gebouw_key = " + bld_key;
|
|
|
|
if (verhuisaanvraag)
|
|
sql += " AND s.mld_melding_key = " + verhuisaanvraag;
|
|
|
|
sql += " ORDER BY prj_scenario_key"
|
|
|
|
/**********************************
|
|
* Callback functies ResultsetTable
|
|
*********************************/
|
|
|
|
function fnrowActionEnabler(oRs)
|
|
{
|
|
// Bepaal of de vereiste rechten voor de acties aanwezig zijn voor DIT record.
|
|
eEdit = true;
|
|
|
|
var data = { eEdit: eEdit };
|
|
return data;
|
|
}
|
|
|
|
var addurl = "appl/prj/prj_scenario.asp";
|
|
|
|
var rst = new ResultsetTable({ keyColumn: "prj_scenario_key",
|
|
sql: sql,
|
|
ID: "prjtable",
|
|
rowActionEnabler: fnrowActionEnabler,
|
|
filterParams: params,
|
|
outputmode: outputmode,
|
|
title: L("lcl_prj_verhuis_scenarios"),
|
|
showAll: showall,
|
|
buttons: [{ icon: "plus.png", title: L("lcl_add"), action: "FcltMgr.openDetail('" + addurl + "', '" + L("lcl_add") + "')" }]
|
|
});
|
|
|
|
rst.addColumn(new Column({caption: L("lcl_prj_scenario"), content: "prj_scenario_key"}));
|
|
rst.addColumn(new Column({caption: L("lcl_complain"), content: "mld_melding_key"}));
|
|
rst.addColumn(new Column({caption: L("lcl_prj_scenario"), content: "prj_scenario_omschrijving"}));
|
|
rst.addColumn(new Column({caption: L("lcl_prj_behandelaar"), content: "prs_perslid_naam_full"}));
|
|
rst.addColumn(new Column({caption: L("lcl_prj_geplande_aanvang"), content: "prj_scenario_datum", datatype: "date", nowrap: true}));
|
|
rst.addColumn(new Column({caption: L("lcl_remark"), content: "prj_scenario_opmerking"}));
|
|
|
|
/* de mogelijke acties */
|
|
rst.addAction({ action: "prj_edit", caption: L("lcl_prj_details"), isDefault: true });
|
|
|
|
var cnt = rst.processResultset();
|
|
}
|
|
%> |