FSN#34416 INS-FOF: Uitleen registratie, wat is het verschil tussen de Innemen en Bewerk

svn path=/Website/trunk/; revision=27297
This commit is contained in:
Erik Groener
2015-12-04 12:27:01 +00:00
parent 97f551f129
commit 5defdc7500

View File

@@ -636,23 +636,31 @@ function ins_list (pautfunction, params)
}
}
var sqlKenmerkBewerkbaar_select = ", CASE WHEN k.km900>0 THEN 1 ELSE 0 END bewerkbaar";
var sqlKenmerkBewerkbaar_from = "( SELECT sd.ins_srtdeel_key"
+ " , COUNT (km.ins_kenmerk_volgnummer) km900"
+ " FROM ins_srtkenmerk sk"
+ " , ins_kenmerk km"
+ " , ins_srtdeel sd"
+ " , ins_srtgroep gr"
+ " WHERE km.ins_srtkenmerk_key = sk.ins_srtkenmerk_key"
+ " AND gr.ins_srtgroep_key = sd.ins_srtgroep_key"
+ " AND km.ins_kenmerk_verwijder IS NULL"
+ " AND sk.ins_srtkenmerk_verwijder IS NULL"
+ " AND ( ( km.ins_srtinstallatie_key = sd.ins_srtdeel_key"
+ " AND km.ins_kenmerk_niveau = 'S')"
+ " OR ( km.ins_srtinstallatie_key = sd.ins_srtgroep_key"
+ " AND km.ins_kenmerk_niveau = 'G')"
+ " OR ( km.ins_srtinstallatie_key = gr.ins_discipline_key"
+ " AND km.ins_kenmerk_niveau = 'D'))"
+ " AND km.ins_kenmerk_volgnummer >= 900"
+ "GROUP BY sd.ins_srtdeel_key) k";
var sqlKenmerkBewerkbaar_where = " AND i.ins_srtdeel_key = k.ins_srtdeel_key(+)";
// Dit betekent dus dat de feitelijke eigenaar dus als de normale eigenaar wordt beschouwd
// d.i. de lener == de eigenaar !
if (!hasPosition || fronto)
{ // Position filter would imply only place-objects
selectKenmerkBewerkbaar = ", CASE WHEN k.km900>0 THEN 1 ELSE 0 END bewerkbaar";
selectKenmerkBewerkbaarEmpty = ", 0 bewerkbaar";
fromKenmerkBewerkbaar = "( SELECT id.ins_deel_key"
+ " , COUNT(km.ins_kenmerk_volgnummer) km900"
+ " FROM ins_deel id"
+ " , ins_kenmerkdeel kd"
+ " , ins_kenmerk km"
+ " WHERE kd.ins_deel_key(+) = id.ins_deel_key"
+ " AND km.ins_kenmerk_key(+) = kd.ins_kenmerk_key"
+ " AND km.ins_kenmerk_volgnummer > 900"
+ " GROUP BY id.ins_deel_key) k";
whereKenmerkBewerkbaar = " AND i.ins_deel_key = k.ins_deel_key(+)";
sqlOwner_select = "SELECT TO_CHAR(NULL) plaats"
+ ", s.ins_srtdeel_code"
@@ -731,7 +739,7 @@ function ins_list (pautfunction, params)
}
sqlOwnerA = sqlOwner_select
+ selectKenmerkBewerkbaarEmpty
+ 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"
@@ -744,14 +752,16 @@ function ins_list (pautfunction, params)
+ sqlOwner_from
+ ", prs_v_afdeling_boom d"
+ ", prs_bedrijf b"
+ ", " + sqlKenmerkBewerkbaar_from
+ (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'";
sqlOwnerP = sqlOwner_select
+ selectKenmerkBewerkbaar
+ sqlKenmerkBewerkbaar_select
+ ", b.prs_bedrijf_key prs_bedrijf_key " // bedrijf key
+ ", d.prs_afdeling_key1"
+ ", " + S("prs_pers_string") + " eigenaar"
@@ -765,17 +775,17 @@ function ins_list (pautfunction, params)
+ ", prs_perslid p"
+ ", prs_v_afdeling_boom d"
+ ", prs_bedrijf b"
+ ", " +fromKenmerkBewerkbaar
+ ", " + sqlKenmerkBewerkbaar_from
+ (koppel_key? ", ins_deelkoppeling idk" : "")
+ sqlOwner_where
+ whereKenmerkBewerkbaar
+ 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'";
sqlOwnerCP = sqlOwner_select
+ selectKenmerkBewerkbaarEmpty
+ 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"
@@ -788,8 +798,10 @@ function ins_list (pautfunction, params)
+ sqlOwner_from
+ ", prs_contactpersoon c"
+ ", prs_bedrijf b"
+ ", " + sqlKenmerkBewerkbaar_from
+ (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'";
@@ -838,7 +850,7 @@ function ins_list (pautfunction, params)
+ ", rd.res_deel_key"
+ ", rd.res_deel_opmerking"
+ ", i.ins_deel_vervaldatum"
+ selectKenmerkBewerkbaarEmpty
+ sqlKenmerkBewerkbaar_select
+ ", null prs_bedrijf_key"
+ ", null prs_afdeling_key1"
+ ", null eigenaar"
@@ -855,6 +867,7 @@ function ins_list (pautfunction, params)
+ ", ins_srtdeel s"
+ sqlInspectie_from
+ ", alg_locatie l"
+ ", " + sqlKenmerkBewerkbaar_from
+ (koppel_key? ", ins_deelkoppeling idk" : "")
+ ", alg_district di" // I added this for alg_district_key (FSN#1082)
+ ", (SELECT res_deel_key"
@@ -876,6 +889,7 @@ function ins_list (pautfunction, params)
+ " AND s.ins_srtgroep_key NOT IN (" + S("sle_ins_srt_groep_key") + ", " + S("cil_ins_srt_groep_key") + ")"
+ 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'"
@@ -1325,7 +1339,7 @@ function ins_list (pautfunction, params)
{
eLendOut = oRs("ins_alg_ruimte_key_org").value == null;
eReceive = !eLendOut;
eAdapt = oRs("bewerkbaar").Value == 1;
eAdapt = eReceive && (oRs("bewerkbaar").Value == 1);
}
var eDelete = false;
var eEdit = true; // Indien enigste actie dan wordt de actie niet getoond en is het de default actie op de hele regel