DJIN#36870: Scoping Uitleenregistratie werkt niet correct.
svn path=/Website/trunk/; revision=31177
This commit is contained in:
286
APPL/INS/ins.inc
286
APPL/INS/ins.inc
@@ -840,7 +840,7 @@ ins = {checkAutLevel:
|
||||
var dist_key = params.dist_key;
|
||||
var loc_key = params.loc_key;
|
||||
var bld_key = params.bld_key;
|
||||
var terr_key = params.terr_key;
|
||||
var terr_key = params.terr_key; // FGII parameters
|
||||
var flr_key = params.flr_key;
|
||||
var room_key = params.room_key;
|
||||
var wpl_key = params.wpl_key;
|
||||
@@ -858,12 +858,12 @@ ins = {checkAutLevel:
|
||||
var cpersoon_key = params.cpersoon_key;
|
||||
var cnt_bedrijf_key = params.cnt_bedrijf_key;
|
||||
var mld_key = params.mld_key;
|
||||
var fgraph = params.fgraph;
|
||||
var ins_key_arr = params.ins_key_arr;
|
||||
var fgraph = params.fgraph; // FGII parameters
|
||||
var ins_key_arr = params.ins_key_arr; // FGII parameters
|
||||
var parent_key = params.parent_key;
|
||||
var koppel_key = params.koppel_key;
|
||||
var room_key_arr = params.room_key_arr;
|
||||
var comp_key = params.comp_key;
|
||||
var room_key_arr = params.room_key_arr; // FGII parameters
|
||||
var comp_key = params.comp_key; // FGII parameters
|
||||
var insObjIncl = params.insObjIncl;
|
||||
var expObjIncl = params.expObjIncl;
|
||||
var insLentOut = params.insLentOut;
|
||||
@@ -943,20 +943,20 @@ ins = {checkAutLevel:
|
||||
if (fronto)
|
||||
{
|
||||
sqlLentOutFrom = "CASE WHEN i.ins_alg_ruimte_type_org = 'A'"
|
||||
+ " THEN (SELECT " + S("prs_dep_string")
|
||||
+ " FROM prs_v_afdeling d"
|
||||
+ " WHERE d.prs_afdeling_key = i.ins_alg_ruimte_key_org)"
|
||||
+ " WHEN i.ins_alg_ruimte_type_org = 'P'"
|
||||
+ " THEN (SELECT " + S("prs_pers_string")
|
||||
+ " FROM prs_perslid p"
|
||||
+ " WHERE p.prs_perslid_key = i.ins_alg_ruimte_key_org)"
|
||||
+ " WHEN i.ins_alg_ruimte_type_org IN ('R', 'T', 'W')"
|
||||
+ " THEN (SELECT o.alg_plaatsaanduiding"
|
||||
+ " FROM ins_v_alg_overzicht o"
|
||||
+ " WHERE o.alg_onroerendgoed_keys = i.ins_alg_ruimte_key_org"
|
||||
+ " AND o.alg_onroerendgoed_type = i.ins_alg_ruimte_type_org)"
|
||||
+ " ELSE NULL"
|
||||
+ " END";
|
||||
+ " THEN (SELECT " + S("prs_dep_string")
|
||||
+ " FROM prs_v_afdeling d"
|
||||
+ " WHERE d.prs_afdeling_key = i.ins_alg_ruimte_key_org)"
|
||||
+ " WHEN i.ins_alg_ruimte_type_org = 'P'"
|
||||
+ " THEN (SELECT " + S("prs_pers_string")
|
||||
+ " FROM prs_perslid p"
|
||||
+ " WHERE p.prs_perslid_key = i.ins_alg_ruimte_key_org)"
|
||||
+ " WHEN i.ins_alg_ruimte_type_org IN ('R', 'T', 'W')"
|
||||
+ " THEN (SELECT o.alg_plaatsaanduiding"
|
||||
+ " FROM ins_v_alg_overzicht o"
|
||||
+ " WHERE o.alg_onroerendgoed_keys = i.ins_alg_ruimte_key_org"
|
||||
+ " AND o.alg_onroerendgoed_type = i.ins_alg_ruimte_type_org)"
|
||||
+ " ELSE NULL"
|
||||
+ " END";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1235,11 +1235,22 @@ ins = {checkAutLevel:
|
||||
sqlKenmerkBewerkbaar_where = "";
|
||||
}
|
||||
|
||||
// Dit betekent dus dat de feitelijke eigenaar dus als de normale eigenaar wordt beschouwd
|
||||
// d.i. de lener == de eigenaar !
|
||||
// Setting ins_auth_obj_lendout: Authorization scope for objects which are lended out {0=owner(borrower) (default) | 1=basic place/owner}
|
||||
//
|
||||
// Voor UITGELEENDE objecten geldt: ins_alg_ruimte_type = 'P' en ins_alg_ruimte_type_org IN ('A', 'P', 'C', 'T', 'R', 'W')
|
||||
// 0=owner(borrower): De feitelijke eigenaar wordt als de normale eigenaar beschouwd (lener = eigenaar) => autorisatie op ins_alg_ruimte_key.
|
||||
// 1=basic place/owner: De oorsprokelijke plaats/eigenaar wordt als de normale plaats/eigenaar beschouwd => autorisatie op ins_alg_ruimte_key_org.
|
||||
//
|
||||
// Voor NIET UITGELEENDE objecten is er geen verschil => ins_alg_ruimte_type IN ('A', 'P', 'C', 'T', 'R', 'W') en ins_alg_ruimte_type_org IS NULL
|
||||
// altijd autorisatie op ins_alg_ruimte_key.
|
||||
//
|
||||
// Autorisatie op de basis plaats/eigenaar (ins_alg_ruimte_key_org) toepassen.
|
||||
// Alleen 1) als de Setting ins_auth_obj_lendout = 1.
|
||||
// 2) bij uitleenregistratie (fronto).
|
||||
// 3) als het object is uitgeleend (insLentOut).
|
||||
var auth_org = S("ins_auth_obj_lendout") == 1 && fronto && insLentOut;
|
||||
if (!hasPosition || fronto)
|
||||
{ // Position filter would imply only place-objects
|
||||
|
||||
sqlOwner_select = "SELECT TO_CHAR(NULL) plaats"
|
||||
+ ", " + lcl.xsql('s.ins_srtdeel_omschrijving', 's.ins_srtdeel_key')+" soort"
|
||||
+ ", i.ins_deel_omschrijving"
|
||||
@@ -1330,7 +1341,12 @@ ins = {checkAutLevel:
|
||||
? sqlKenmerkBewerkbaar_select
|
||||
+ ", b.prs_bedrijf_key prs_bedrijf_key" // bedrijf key
|
||||
+ ", d.prs_afdeling_key1"
|
||||
+ ", (SELECT " + S("prs_dep_string") + " FROM prs_v_afdeling d WHERE prs_afdeling_key = i.ins_alg_ruimte_key) eigenaar"
|
||||
+ ", CASE WHEN i.ins_alg_ruimte_type_org IS NOT NULL"
|
||||
+ " THEN (SELECT " + S("prs_pers_string")
|
||||
+ " FROM prs_perslid p"
|
||||
+ " WHERE p.prs_perslid_key = i.ins_alg_ruimte_key)"
|
||||
+ " ELSE (SELECT " + S("prs_dep_string") + " FROM prs_v_afdeling d WHERE prs_afdeling_key = i.ins_alg_ruimte_key)"
|
||||
+ " END uitgeleend_aan"
|
||||
+ ", NULL alg_ruimte_key " // person key
|
||||
+ ", i.ins_alg_ruimte_key prs_afdeling_key" // department key
|
||||
+ (koppel_key? ", ins_deelkoppeling_omschrijving, ins_deelkoppeling_van_key, ins_deelkoppeling_naar_key" : "")
|
||||
@@ -1342,16 +1358,25 @@ ins = {checkAutLevel:
|
||||
+ (koppel_key? ", ins_deelkoppeling idk" : "")
|
||||
+ sqlOwner_where
|
||||
+ sqlKenmerkBewerkbaar_where
|
||||
+ " AND i.ins_alg_ruimte_key = d.prs_afdeling_key"
|
||||
+ " AND d.prs_bedrijf_key = b.prs_bedrijf_key"
|
||||
+ " AND i.ins_alg_ruimte_type = 'A'";
|
||||
+ " AND d.prs_bedrijf_key = b.prs_bedrijf_key";
|
||||
|
||||
if (auth_org)
|
||||
// Object is uitgeleend.
|
||||
sqlOwnerA_org = sqlOwnerA
|
||||
+ " AND i.ins_alg_ruimte_key_org = d.prs_afdeling_key"
|
||||
+ " AND i.ins_alg_ruimte_type_org = 'A'";
|
||||
|
||||
sqlOwnerA += " AND i.ins_alg_ruimte_key = d.prs_afdeling_key"
|
||||
+ " AND i.ins_alg_ruimte_type = 'A'"; // Object is NIET uitgeleend, anders was het type 'P'.
|
||||
|
||||
|
||||
|
||||
sqlOwnerP = sqlOwner_select
|
||||
+ (!mobile
|
||||
? sqlKenmerkBewerkbaar_select
|
||||
+ ", b.prs_bedrijf_key prs_bedrijf_key " // bedrijf key
|
||||
+ ", d.prs_afdeling_key1"
|
||||
+ ", " + S("prs_pers_string") + " eigenaar"
|
||||
+ ", " + S("prs_pers_string") + " uitgeleend_aan"
|
||||
+ ", i.ins_alg_ruimte_key alg_ruimte_key " // person key
|
||||
+ ", p.prs_afdeling_key prs_afdeling_key" // department key
|
||||
+ (koppel_key? ", ins_deelkoppeling_omschrijving, ins_deelkoppeling_van_key, ins_deelkoppeling_naar_key" : "")
|
||||
@@ -1364,17 +1389,26 @@ ins = {checkAutLevel:
|
||||
+ (koppel_key? ", ins_deelkoppeling idk" : "")
|
||||
+ sqlOwner_where
|
||||
+ sqlKenmerkBewerkbaar_where
|
||||
+ " AND i.ins_alg_ruimte_key = p.prs_perslid_key"
|
||||
+ " AND p.prs_afdeling_key = d.prs_afdeling_key"
|
||||
+ " AND d.prs_bedrijf_key = b.prs_bedrijf_key"
|
||||
+ " AND i.ins_alg_ruimte_type = 'P'";
|
||||
+ " AND i.ins_alg_ruimte_key = p.prs_perslid_key";
|
||||
|
||||
if (auth_org)
|
||||
// Object is uitgeleend.
|
||||
sqlOwnerP_org = sqlOwnerP
|
||||
+ " AND i.ins_alg_ruimte_type_org = 'P'";
|
||||
|
||||
sqlOwnerP += " AND i.ins_alg_ruimte_type = 'P'" // Object is wel of niet uitgeleend.
|
||||
+ (S("ins_auth_obj_lendout") == 1
|
||||
? " AND i.ins_alg_ruimte_key_org IS NULL" // Dit deel kijkt naar NIET uitgeleende objecten. sqlOwnerA_org naar uitgeleende objecten.
|
||||
: "");
|
||||
|
||||
sqlOwnerCP = sqlOwner_select
|
||||
+ (!mobile
|
||||
? sqlKenmerkBewerkbaar_select
|
||||
+ ", (SELECT c.prs_bedrijf_key FROM prs_contactpersoon c WHERE c.prs_contactpersoon_key = i.ins_alg_ruimte_key) prs_bedrijf_key" // bedrijf key
|
||||
+ ", 0 dummy1" // department key
|
||||
+ ", c.prs_contactpersoon_naam eigenaar"
|
||||
+ ", c.prs_contactpersoon_naam uitgeleend_aan"
|
||||
+ ", i.ins_alg_ruimte_key alg_ruimte_key" // person key
|
||||
+ ", NULL prs_afdeling_key" // department key
|
||||
+ (koppel_key? ", ins_deelkoppeling_omschrijving, ins_deelkoppeling_van_key, ins_deelkoppeling_naar_key" : "")
|
||||
@@ -1386,46 +1420,20 @@ ins = {checkAutLevel:
|
||||
+ (koppel_key? ", ins_deelkoppeling idk" : "")
|
||||
+ sqlOwner_where
|
||||
+ sqlKenmerkBewerkbaar_where
|
||||
+ " AND i.ins_alg_ruimte_key = c.prs_contactpersoon_key"
|
||||
+ " AND c.prs_bedrijf_key = b.prs_bedrijf_key"
|
||||
+ " AND i.ins_alg_ruimte_type = 'C'";
|
||||
+ " AND i.ins_alg_ruimte_key = c.prs_contactpersoon_key";
|
||||
|
||||
if (auth_org)
|
||||
// Object is uitgeleend.
|
||||
sqlOwnerCP_org = sqlOwnerCP
|
||||
+ " AND i.ins_alg_ruimte_type_org = 'C'";
|
||||
|
||||
sqlOwnerCP += " AND i.ins_alg_ruimte_type = 'C'"; // Object is NIET uitgeleend, anders was het type 'P'.
|
||||
|
||||
}
|
||||
|
||||
if (!hasOwner)
|
||||
{ // Owner filter would imply only owned objects
|
||||
sqlOwner_select = "SELECT TO_CHAR(NULL) plaats"
|
||||
+ ", " + lcl.xsql('s.ins_srtdeel_omschrijving', 's.ins_srtdeel_key')+" soort"
|
||||
+ ", i.ins_deel_omschrijving"
|
||||
+ ", (SELECT ins_discipline_omschrijving"
|
||||
+ " FROM ins_discipline idc"
|
||||
+ " WHERE i.ins_discipline_key = idc.ins_discipline_key) ins_disc_oms"
|
||||
+ ", (SELECT ins_srtgroep_omschrijving"
|
||||
+ " FROM ins_srtgroep idc"
|
||||
+ " WHERE s.ins_srtgroep_key = idc.ins_srtgroep_key) ins_groep_oms"
|
||||
+ ", i.ins_deel_key"
|
||||
+ ", i.ins_alg_ruimte_type"
|
||||
+ ", " + sqlInspectie_select
|
||||
+ (!mobile
|
||||
? ", s.ins_srtdeel_code"
|
||||
+ ", i.ins_deel_opmerking"
|
||||
+ ", s.ins_srtdeel_key"
|
||||
+ ", s.ins_srtdeel_upper"
|
||||
+ ", i.ins_deel_getekend"
|
||||
+ ", i.ins_discipline_key"
|
||||
+ ", -1 district"
|
||||
+ ", i.ins_deel_x" // is coordinaat bekend?
|
||||
+ ", i.ins_deel_dwgx" // is dwg coordinaat bekend?
|
||||
+ ", ins_srtgroep_key"
|
||||
+ ", ins_deel_upper"
|
||||
+ ", s.ins_srtdeel_uitleenbaar"
|
||||
+ ", i.ins_alg_ruimte_key_org"
|
||||
+ ", i.ins_alg_ruimte_type_org"
|
||||
+ ", " + sqlLentOutFrom + " uitgegeven_vanuit"
|
||||
+ ", rd.res_deel_key"
|
||||
+ ", rd.res_deel_opmerking"
|
||||
+ ", i.ins_deel_vervaldatum"
|
||||
+ ", i.ins_deel_actief"
|
||||
: "");
|
||||
sqlPosition = (terr_key
|
||||
? "SELECT t.alg_terreinsector_omschrijving"
|
||||
: "SELECT o.alg_plaatsaanduiding"
|
||||
@@ -1464,9 +1472,14 @@ ins = {checkAutLevel:
|
||||
+ ", i.ins_deel_vervaldatum"
|
||||
+ ", i.ins_deel_actief"
|
||||
+ sqlKenmerkBewerkbaar_select
|
||||
+ ", null prs_bedrijf_key"
|
||||
+ ", null prs_afdeling_key1"
|
||||
+ ", null eigenaar"
|
||||
+ ", NULL prs_bedrijf_key"
|
||||
+ ", NULL prs_afdeling_key1"
|
||||
+ ", CASE WHEN i.ins_alg_ruimte_type_org IS NOT NULL"
|
||||
+ " THEN (SELECT " + S("prs_pers_string")
|
||||
+ " FROM prs_perslid p"
|
||||
+ " WHERE p.prs_perslid_key = i.ins_alg_ruimte_key)"
|
||||
+ " ELSE NULL"
|
||||
+ " END uitgeleend_aan"
|
||||
+ ", i.ins_alg_ruimte_key alg_ruimte_key"
|
||||
+ ", 0 dummy1" // department key
|
||||
+ (koppel_key? ", ins_deelkoppeling_omschrijving, ins_deelkoppeling_van_key, ins_deelkoppeling_naar_key" : "")
|
||||
@@ -1501,15 +1514,6 @@ ins = {checkAutLevel:
|
||||
+ sql_objincl
|
||||
+ sqlInspectie_where
|
||||
+ sqlKenmerkBewerkbaar_where
|
||||
+ (terr_key
|
||||
? " AND t.alg_terreinsector_key = i.ins_alg_ruimte_key"
|
||||
+ " AND i.ins_alg_ruimte_type = 'T'"
|
||||
+ " AND t.alg_locatie_key = l.alg_locatie_key"
|
||||
: " AND o.alg_onroerendgoed_keys = i.ins_alg_ruimte_key"
|
||||
+ " AND o.alg_onroerendgoed_type = i.ins_alg_ruimte_type"
|
||||
+ " AND i.ins_alg_ruimte_type IN ('T','R','W')"
|
||||
+ " AND o.alg_locatie_key = l.alg_locatie_key" // PF: de redundante ins_alg_locatie_key is niet nodig
|
||||
)
|
||||
+ " AND l.alg_district_key = di.alg_district_key"
|
||||
+ " AND s.ins_srtdeel_key = i.ins_srtdeel_key"
|
||||
+ (fronto
|
||||
@@ -1550,29 +1554,52 @@ ins = {checkAutLevel:
|
||||
else if (!terr_key && fgraph)
|
||||
sqlPosition += " AND i.ins_alg_ruimte_key = -1"; // geen terreinen bij fgraph => geen objecten om te laten zien
|
||||
}
|
||||
}
|
||||
if (sqlPosition != "" && ins_key_arr)
|
||||
{
|
||||
sqlPosition += " AND i.ins_deel_key IN (" + ins_key_arr.join(",") + ")";
|
||||
}
|
||||
else if (sqlPosition != "" && parent_key)
|
||||
{
|
||||
sqlPosition += " AND i.ins_deel_parent_key IN (" + parent_key + ")";
|
||||
}
|
||||
else if (sqlPosition != "" && koppel_key)
|
||||
{
|
||||
sqlPosition += " AND idk.ins_deelkoppeling_verwijder IS NULL"
|
||||
+ " AND (( i.ins_deel_key = idk.ins_deelkoppeling_naar_key"
|
||||
+ " AND idk.ins_deelkoppeling_van_key=" + koppel_key
|
||||
+ " )"
|
||||
+ " OR ( i.ins_deel_key = idk.ins_deelkoppeling_van_key"
|
||||
+ " AND idk.ins_deelkoppeling_naar_key=" + koppel_key + "))";
|
||||
|
||||
if (ins_key_arr)
|
||||
{
|
||||
sqlPosition += " AND i.ins_deel_key IN (" + ins_key_arr.join(",") + ")";
|
||||
}
|
||||
else if (parent_key)
|
||||
{
|
||||
sqlPosition += " AND i.ins_deel_parent_key IN (" + parent_key + ")";
|
||||
}
|
||||
else if (koppel_key)
|
||||
{
|
||||
sqlPosition += " AND idk.ins_deelkoppeling_verwijder IS NULL"
|
||||
+ " AND (( i.ins_deel_key = idk.ins_deelkoppeling_naar_key"
|
||||
+ " AND idk.ins_deelkoppeling_van_key=" + koppel_key
|
||||
+ " )"
|
||||
+ " OR ( i.ins_deel_key = idk.ins_deelkoppeling_van_key"
|
||||
+ " AND idk.ins_deelkoppeling_naar_key=" + koppel_key + "))";
|
||||
}
|
||||
|
||||
if (auth_org)
|
||||
// Object is uitgeleend.
|
||||
// terr_key is een FGII parameters, dus bij uitlenen nooit gevuld. Gebruik alg_terreinsector_key hoeft niet overwogen te worden zoals hieronder.
|
||||
// Object is uitgeleend en i.ins_alg_ruimte_type = 'P'.
|
||||
// Eventuele zoekfilters op plaats worden dan ook toegepast op de oorspronkelijke plaats (ins_alg_ruimte_key_org).
|
||||
sqlPosition_org = sqlPosition
|
||||
+ " AND o.alg_onroerendgoed_keys = i.ins_alg_ruimte_key_org"
|
||||
+ " AND o.alg_onroerendgoed_type = i.ins_alg_ruimte_type_org"
|
||||
+ " AND i.ins_alg_ruimte_type_org IN ('T','R','W')"
|
||||
+ " AND o.alg_locatie_key = l.alg_locatie_key";
|
||||
|
||||
sqlPosition += (terr_key
|
||||
? " AND t.alg_terreinsector_key = i.ins_alg_ruimte_key"
|
||||
+ " AND i.ins_alg_ruimte_type = 'T'" // Object is NIET uitgeleend, anders was het type 'P'.
|
||||
+ " AND t.alg_locatie_key = l.alg_locatie_key"
|
||||
: " AND o.alg_onroerendgoed_keys = i.ins_alg_ruimte_key"
|
||||
+ " AND o.alg_onroerendgoed_type = i.ins_alg_ruimte_type"
|
||||
+ " AND i.ins_alg_ruimte_type IN ('T','R','W')" // Object is NIET uitgeleend, anders was het type 'P'.
|
||||
+ " AND o.alg_locatie_key = l.alg_locatie_key" // PF: de redundante ins_alg_locatie_key is niet nodig
|
||||
)
|
||||
|
||||
}
|
||||
|
||||
// And some more conditions that apply for both modes:
|
||||
// And some more conditions that apply for both modes (sqlPosition(_org) and hasOwner(_org)):
|
||||
var sql_ex = "";
|
||||
if (mld_key)
|
||||
sql_ex += " AND i.ins_deel_key IN (SELECT ins_deel_key FROM mld_melding_object WHERE mld_melding_key="+mld_key+")";
|
||||
sql_ex += " AND i.ins_deel_key IN (SELECT ins_deel_key FROM mld_melding_object WHERE mld_melding_key=" + mld_key + ")";
|
||||
if (objsrt_key)
|
||||
sql_ex += " AND s.ins_srtdeel_key IN (" + objsrt_key.join(",") + ")";
|
||||
else if (insgroup_key)
|
||||
@@ -1599,10 +1626,11 @@ ins = {checkAutLevel:
|
||||
sql_ex += getKenmerkSql("INS", "i.ins_deel_key");
|
||||
|
||||
if (sqlPosition != "")
|
||||
{
|
||||
sqlPosition += sql_ex;
|
||||
|
||||
if (sqlPosition != "")
|
||||
sqlPosition += sql_ex;
|
||||
if (auth_org)
|
||||
sqlPosition_org += sql_ex;
|
||||
}
|
||||
|
||||
if (sqlPosition != "")
|
||||
{ // we must consider this: if we know that a room is defined (by filter), we must be
|
||||
@@ -1621,6 +1649,21 @@ ins = {checkAutLevel:
|
||||
pautfunction,
|
||||
(disc_key? disc_key : ''),
|
||||
0); // AKZA#430/PF, AKZA#496/MGE
|
||||
|
||||
if (auth_org)
|
||||
sqlPosition_org = discx3d (sqlPosition_org,
|
||||
"i.ins_discipline_key",
|
||||
"di.alg_regio_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: not used because algprs == 0
|
||||
"", // d.prs_afdeling_key: not used because algprs == 0
|
||||
pautfunction,
|
||||
(disc_key? disc_key : ''),
|
||||
0); // AKZA#430/PF, AKZA#496/MGE
|
||||
}
|
||||
|
||||
if (sqlOwnerA != "" && sqlOwnerP != "" && sqlOwnerCP != "")
|
||||
@@ -1638,6 +1681,22 @@ ins = {checkAutLevel:
|
||||
pautfunction,
|
||||
(disc_key? disc_key : ''),
|
||||
1); // AKZA#430/PF, AKZA#496/MGE
|
||||
|
||||
if (auth_org)
|
||||
sqlOwnerA_org = discx3d (sqlOwnerA_org,
|
||||
"ins_discipline_key",
|
||||
"", // di.alg_regio_key: not used because algprs == 0
|
||||
"", // l.alg_district_key: not used because algprs == 0
|
||||
"", // o.alg_locatie_key: not used because algprs == 0
|
||||
"", // o.alg_gebouw_key: not used because algprs == 0
|
||||
"", // o.alg_verdieping_key: not used because algprs == 0
|
||||
"", // o.alg_ruimte_key: not used because algprs == 0
|
||||
"b.prs_bedrijf_key",
|
||||
"d.prs_afdeling_key",
|
||||
pautfunction,
|
||||
(disc_key? disc_key : ''),
|
||||
1); // AKZA#430/PF, AKZA#496/MGE
|
||||
|
||||
sqlOwnerP = discx3d (sqlOwnerP,
|
||||
"ins_discipline_key",
|
||||
"", // di.alg_regio_key: not used because algprs == 0
|
||||
@@ -1653,7 +1712,29 @@ ins = {checkAutLevel:
|
||||
1); // AKZA#430/PF, AKZA#496/MGE
|
||||
// Geen autorisatie bij externe bedrijven (prs_bedrijf)
|
||||
|
||||
sqlOwner = sqlOwnerA + sql_ex + " UNION " + sqlOwnerP + sql_ex + " UNION " + sqlOwnerCP + sql_ex;
|
||||
if (auth_org)
|
||||
sqlOwnerP_org = discx3d (sqlOwnerP_org,
|
||||
"ins_discipline_key",
|
||||
"", // di.alg_regio_key: not used because algprs == 0
|
||||
"", // l.alg_district_key: not used because algprs == 0
|
||||
"", // o.alg_locatie_key: not used because algprs == 0
|
||||
"", // o.alg_gebouw_key: not used because algprs == 0
|
||||
"", // o.alg_verdieping_key: not used because algprs == 0
|
||||
"", // o.alg_ruimte_key: not used because algprs == 0
|
||||
"b.prs_bedrijf_key",
|
||||
"d.prs_afdeling_key",
|
||||
pautfunction,
|
||||
(disc_key? disc_key : ''),
|
||||
1); // AKZA#430/PF, AKZA#496/MGE
|
||||
|
||||
// Deelqueries sqlOwnerA en sqlOwnerCP leveren alleen resultaat op als "Beschikbaar" (insAvail) is aangevinkt.
|
||||
sqlOwner = (insAvail
|
||||
? sqlOwnerA + sql_ex + " UNION " + sqlOwnerCP + sql_ex + " UNION "
|
||||
: "")
|
||||
+ sqlOwnerP + sql_ex
|
||||
+ (auth_org // S("ins_auth_obj_lendout") == 1 && fronto && insLentOut
|
||||
? " UNION " + sqlOwnerA_org + sql_ex + " UNION " + sqlOwnerP_org + sql_ex + " UNION " + sqlOwnerCP_org + sql_ex
|
||||
: "");
|
||||
|
||||
// Now apply user filtering on this query:
|
||||
if (persoon_key)
|
||||
@@ -1677,7 +1758,10 @@ ins = {checkAutLevel:
|
||||
sql = (sqlOwner != ""
|
||||
? sqlOwner + (sqlPosition != ""? " UNION ALL " : "")
|
||||
: "")
|
||||
+ sqlPosition;
|
||||
+ sqlPosition
|
||||
+ (auth_org && sqlPosition != ""
|
||||
? " UNION " + sqlPosition_org
|
||||
: "");
|
||||
|
||||
if (inspect)
|
||||
{
|
||||
|
||||
@@ -516,7 +516,8 @@ function ins_list (pautfunction, params)
|
||||
place = oRs("uitgegeven_vanuit");
|
||||
else
|
||||
if (oRs("ins_alg_ruimte_type").value == 'P' || oRs("ins_alg_ruimte_type").value == 'A')
|
||||
place = oRs("eigenaar").value;
|
||||
// Object niet uitgeleend. Uitgeleend aan is eigenlijk de plaats.
|
||||
place = oRs("uitgeleend_aan").value;
|
||||
else
|
||||
place = oRs("plaats").value;
|
||||
|
||||
@@ -527,7 +528,7 @@ function ins_list (pautfunction, params)
|
||||
{
|
||||
var lentOutTo
|
||||
if (oRs("ins_alg_ruimte_type_org").value != null)
|
||||
lentOutTo = oRs("eigenaar").value;
|
||||
lentOutTo = oRs("uitgeleend_aan").value;
|
||||
else
|
||||
lentOutTo = "";
|
||||
|
||||
@@ -812,7 +813,7 @@ function ins_list (pautfunction, params)
|
||||
if (!parent_key) {
|
||||
rst.addColumn(new Column({caption: L("lcl_obj_position"), content: "plaats"}));
|
||||
if (!fgraph)
|
||||
rst.addColumn(new Column({caption: L("lcl_obj_owner"), content: "eigenaar", combine: true}));
|
||||
rst.addColumn(new Column({caption: L("lcl_obj_owner"), content: "uitgeleend_aan", combine: true}));
|
||||
}
|
||||
if (params.mjob)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user