130 lines
5.7 KiB
C++
130 lines
5.7 KiB
C++
<% /*
|
|
$Revision: 2 $
|
|
$Modtime: 23-10-09 18:45 $
|
|
|
|
File: RES/res_flexkenmerk.inc
|
|
Status: 95%
|
|
Description: Functie die html code genereert voor de presentatie van de flexvelden
|
|
Parameters: urole Rol van de gebruiker (frontend, frontoffice, backoffice, management info)
|
|
res_key Reservering key
|
|
act_key Activiteit
|
|
reado Readonly
|
|
advanced Geadvanceerd
|
|
reqId Perslid key
|
|
Context: Functie wordt aangeroepen door
|
|
1) res/load_kenmerk.asp
|
|
2) res/res_edit_rsv_ruimte.asp die initieel serverside deze html code invoegd.
|
|
Note:
|
|
|
|
TODO: Aanpassen voor gebruik door res_edit.asp
|
|
*/ %>
|
|
|
|
<%
|
|
var DOCTYPE_Disable = true;
|
|
Response.Expires = -1;
|
|
var fp = new Object(); // dummy, moet er nog uitgewerkt worden TODO:
|
|
%>
|
|
|
|
<!-- #include file="../Shared/escape.inc" -->
|
|
<!-- #include file="../Shared/kenmerk_common.inc" -->
|
|
|
|
<%
|
|
function generateFlexKenmerkCode(params)
|
|
{ %>
|
|
<div id="resKenmerken">
|
|
<table width="100%">
|
|
<%
|
|
var urole = params.urole;
|
|
var fronto = (urole == "fo");
|
|
var backo = (urole == "bo");
|
|
var minfo = (urole == "mi");
|
|
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
|
|
|
|
var res_key = params.res_key; // Reservering key
|
|
var act_key = params.act_key; // Activiteit key
|
|
var rsv_ruimte_key = params.rsv_ruimte_key; // Rsv ruimte key
|
|
var serie = params.serie; // Serie reservering
|
|
var reado = params.reado; // Readonly
|
|
var advanced = params.advanced; // Geavanceerd
|
|
var reqId = params.reqId; // Perslid key (!search && multiMode)
|
|
|
|
var autfunction = "";
|
|
switch(urole)
|
|
{
|
|
case "fe": autfunction = "WEB_RESUSE";
|
|
break;
|
|
case "fo": autfunction = "WEB_RESFOF";
|
|
break;
|
|
case "bo": autfunction = "WEB_RESBOF";
|
|
break;
|
|
case "mi": autfunction = "WEB_RESBAC";
|
|
break;
|
|
}
|
|
|
|
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
|
|
var authparams = user.checkAutorisation(autfunction);
|
|
|
|
function isReadonly (volgnummer)
|
|
{
|
|
return reado;
|
|
}
|
|
|
|
sql = "SELECT k.res_kenmerk_key kenmerk_key, " // 0
|
|
+ " t.res_srtkenmerk_omschrijving kenmerk_omschrijving, " // 1
|
|
+ " t.res_srtkenmerk_kenmerktype kenmerk_kenmerktype, " // 2
|
|
+ " r.res_refsrtkenmerk_objectnaam refkenmerk_objectnaam, " // 3
|
|
+ " r.res_refsrtkenmerk_kolomnaam refkenmerk_kolomnaam, " // 4
|
|
+ " r.res_refsrtkenmerk_kolomtxt refkenmerk_kolomtxt, " // 5
|
|
+ " r.fac_usrtab_key fac_usrtab_key, " // 6
|
|
+ " t.res_srtkenmerk_lengte kenmerk_lengte, " // 7
|
|
+ " t.res_srtkenmerk_dec kenmerk_dec, " // 8
|
|
+ " t.res_srtkenmerk_nmin kenmerk_nmin, " // 9
|
|
+ " t.res_srtkenmerk_nmax kenmerk_nmax, " // 10
|
|
+ (rsv_ruimte_key > 0 && !serie
|
|
? " (SELECT v.res_kenmerkreservering_waarde"
|
|
+ " FROM res_kenmerkwaarde v"
|
|
+ " WHERE v.res_rsv_ruimte_key = " + rsv_ruimte_key
|
|
+ " AND v.res_kenmerk_key = k.res_kenmerk_key)"
|
|
: " k.res_kenmerk_default"
|
|
) + " kenmerk_waarde, "
|
|
+ " k.res_kenmerk_volgnummer kenmerk_volgnr, " // 12
|
|
+ " t.res_srtkenmerk_dimensie kenmerk_dimensie, " // 13
|
|
+ " k.res_kenmerk_hint kenmerk_hint, " // 14
|
|
+ " k.res_kenmerk_default kenmerk_default, " // 15
|
|
+ " k.res_kenmerk_verplicht kenmerk_verplicht, " // 16
|
|
+ " NULL otherpath, "
|
|
+ " k.res_kenmerk_toonbaar kenmerk_toonbaar," // 18
|
|
+ " k.res_kenmerk_uniek kenmerk_uniek" // 19
|
|
+ " FROM res_srtkenmerk t"
|
|
+ ", res_kenmerk k"
|
|
+ ", res_activiteit s"
|
|
+ ", res_refsrtkenmerk r"
|
|
+ " WHERE s.res_activiteit_key = " + act_key
|
|
+ " AND (k.res_activiteit_key = s.res_activiteit_key"
|
|
+ " AND k.res_kenmerk_niveau = 'A')"
|
|
+ " AND k.res_kenmerk_verwijder IS NULL"
|
|
+ " AND k.res_srtkenmerk_key = t.res_srtkenmerk_key"
|
|
+ " AND t.res_srtkenmerk_verwijder IS NULL"
|
|
+ " AND t.res_refsrtkenmerk_key = r.res_refsrtkenmerk_key(+)"
|
|
+ " ORDER BY k.RES_kenmerk_volgnummer"
|
|
+ ", t.RES_srtkenmerk_omschrijving";
|
|
|
|
var trn = 0;
|
|
// Voor als we nog geen key weten
|
|
var tmp_folder = "__NEW__" + Session.SessionId;
|
|
|
|
listKenmerk(sql,
|
|
"RES",
|
|
"R" + (res_key > 0? res_key : tmp_folder),
|
|
{ kenmerk_2col: (advanced? true : false), // In edit mode kenmerken onder elkaar en niet in 2 kolommen.
|
|
kenmerk_search: advanced,
|
|
kenmerk_colspan: false,
|
|
fnIsReadonly: isReadonly,
|
|
parentKey: res_key }
|
|
);
|
|
%>
|
|
</table>
|
|
</div>
|
|
<%
|
|
} %>
|