AADS#32133: Vervolgvraag AADS#32035 over dienstniveaus.

svn path=/Website/trunk/; revision=31395
This commit is contained in:
Maykel Geerdink
2016-11-09 12:58:11 +00:00
parent cfc1484a9e
commit 44aa2337d4
6 changed files with 108 additions and 72 deletions

View File

@@ -985,8 +985,9 @@ ins = {checkAutLevel:
// Eerstvolgende inspectie
var sqlNext = "SELECT ins_deel_key"
+ (inspDone
? " , inspectie_date"
: " , inspectie_next")
? " , inspectie_date"
: " , inspectie_next")
+ " , ins_srtcontroledl_xcp_startdat"
+ " , nonext"
+ " , inspectie_eenheid"
+ " , inspectie_eind"
@@ -1081,6 +1082,7 @@ ins = {checkAutLevel:
+ " , di.ins_srtcontrole_periode"
+ " , di.ins_srtcontrole_bits"
+ " , 1) inspectie_next"
+ " , ins_srtcontroledl_xcp_startdat"
+ " , CASE WHEN " + lastinspect + " IS NULL THEN 1 ELSE 0 END nonext"
+ " , di.ins_srtcontrole_eenheid inspectie_eenheid"
+ " , di.ins_srtcontrole_eind inspectie_eind"
@@ -1145,6 +1147,7 @@ ins = {checkAutLevel:
+ " , di.ins_srtcontrole_bits"
+ " , 1)"
+ " END inspectie_next"
+ " , ins_srtcontroledl_xcp_startdat"
+ " , CASE WHEN " + lastinspect + " IS NULL THEN 1 ELSE 0 END nonext"
+ " , di.ins_srtcontrole_eenheid inspectie_eenheid"
+ " , di.ins_srtcontrole_eind inspectie_eind"
@@ -1197,6 +1200,7 @@ ins = {checkAutLevel:
: "");
sqlInspectie_select = (inspDone? "inspectie_date" : "inspectie_next")
+ " , ispn.ins_srtcontroledl_xcp_startdat"
+ " , ispn.ins_srtcontrole_omschrijving"
+ " , ispn.ins_srtcontrole_key"
+ " , ispn.onlyfinish"

View File

@@ -203,6 +203,7 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
+ " ELSE 0" // Vindt de eerste datum vandaag of in de toekomst
+ " END)"
+ " inspectie_next"
+ " , di.ins_srtcontroledl_xcp_startdat"
+ " , di.ins_srtcontrole_key"
+ " , " + lcl.xsqla('di.ins_srtcontrole_omschrijving', 'di.ins_srtcontrole_key')
+ " , di.ins_srtcontrole_groep"
@@ -287,6 +288,7 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
+ " THEN idsc.ins_deelsrtcontrole_datum_org"
+ " ELSE TO_DATE (NULL)"
+ " END inspectie_next"
+ " , di.ins_srtcontroledl_xcp_startdat"
+ " , idsc.ins_srtcontrole_key"
+ " , " + lcl.xsqla('di.ins_srtcontrole_omschrijving', 'di.ins_srtcontrole_key')
+ " , di.ins_srtcontrole_groep"
@@ -443,14 +445,22 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
var nonext = oRs("nonext").Value == 1;
if (nonext)
{
switch (oRs("ctr_controle_type").Value)
{ // 1: Controle, 2: Vervanging, 3: Certificering.
case 1: { var txt = L("lcl_ins_controle_first"); break; }; // Eerste controle.
case 2:
case 3: { var dt = new Date(oRs("inspectie_next").Value); // Registratiedatum.
var txt = (oRs("eenheid").value == 0? toDateTimeString(dt) : toDateString(dt));
break;
} // Eerste certificering.
if (oRs("ins_srtcontroledl_xcp_startdat").Value != null)
{
var dt = new Date(oRs("ins_srtcontroledl_xcp_startdat").Value); // Startdatum.
var txt = (oRs("eenheid").value == 0? toDateTimeString(dt) : toDateString(dt));
}
else
{
switch (oRs("ctr_controle_type").Value)
{ // 1: Controle, 2: Vervanging, 3: Certificering.
case 1: { var txt = L("lcl_ins_controle_first"); break; }; // Eerste controle.
case 2:
case 3: { var dt = new Date(oRs("inspectie_next").Value); // Registratiedatum.
var txt = (oRs("eenheid").value == 0? toDateTimeString(dt) : toDateString(dt));
break;
} // Eerste certificering.
}
}
return txt;
}

View File

@@ -641,14 +641,22 @@ function ins_list (pautfunction, params)
if (nonext)
{ // Er is nog geen inspectie geweest. Eerste controle moet nog plaatsvinden.
// 1: Controle, 2: Vervanging, 3: Certificering.
switch (oRs("ctr_controle_type").Value)
if (oRs("ins_srtcontroledl_xcp_startdat").Value != null)
{
case 1: { txt = L("lcl_ins_controle_first"); break; } // Eerste controle.
case 2:
case 3: { dt = new Date(oRs("inspectie_next").Value); // Registratiedatum.
txt = (oRs("inspectie_eind").Value == 0? toDateTimeString(dt) : toDateString(dt));
break;
} // Eerste certificering.
dt = new Date(oRs("ins_srtcontroledl_xcp_startdat").Value); // Startdatum.
txt = (oRs("inspectie_eind").Value == 0? toDateTimeString(dt) : toDateString(dt));
}
else
{
switch (oRs("ctr_controle_type").Value)
{
case 1: { txt = L("lcl_ins_controle_first"); break; } // Eerste controle.
case 2:
case 3: { dt = new Date(oRs("inspectie_next").Value); // Registratiedatum.
txt = (oRs("inspectie_eind").Value == 0? toDateTimeString(dt) : toDateString(dt));
break;
} // Eerste certificering.
}
}
return txt;
}

View File

@@ -717,7 +717,7 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
urlAdd.push({urlParam: "lockey", field: "locatiekey", init: mld_melding.loc_key});
urlAdd.push({urlParam: "bldkey", field: "gebouwkey", init: mld_melding.bld_key});
urlAdd.push({urlParam: "flrkey", field: "verdiepingkey", init: mld_melding.flr_key});
urlAdd.push({urlParam: "foomkey", field: "ruimtekey", init: mld_melding.room_key});
urlAdd.push({urlParam: "roomkey", field: "ruimtekey", init: mld_melding.room_key});
}
var res =

View File

@@ -133,33 +133,40 @@ function getFiltClauseDiscipline(pfiltcode, params)
if (S("mld_edit_layout") == 1 && params.loc_key > 0) // Als de bld_key, flr_key of room_key is meegegeven is ook de loc_key meegegeven.
{ // Plaats gegevens worden voor de discipline/stdmelding gegevens getoond. Discipline en stdmelding afhankelijk van dienstlocatie maken.
lfiltClause.where += " AND EXISTS (SELECT COALESCE (NULL"
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
+ " , al.mld_dienstniveau_key"
+ " ) mld_dienstniveau_key"
+ " FROM"
+ (params.room_key > 0? " alg_ruimte ar," : "")
+ (params.flr_key > 0? " alg_verdieping av," : "")
+ (params.bld_key > 0? " alg_gebouw ag," : "")
+ " alg_locatie al,"
+ " mld_dienstpakket dp"
+ " WHERE"
+ (params.room_key > 0? " ar.alg_ruimte_key = " + params.room_key
+ " AND ar.alg_verdieping_key = av.alg_verdieping_key AND" : "")
+ (params.flr_key > 0? " av.alg_verdieping_key = " + params.flr_key
+ " AND av.alg_gebouw_key = ag.alg_gebouw_key AND" : "")
+ (params.bld_key > 0? " ag.alg_gebouw_key = " + params.bld_key
+ " AND ag.alg_locatie_key = al.alg_locatie_key AND" : "")
+ " al.alg_locatie_key = " + params.loc_key
+ " AND COALESCE (NULL"
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
+ " , al.mld_dienstniveau_key"
+ " ) = dp.mld_dienstniveau_key"
+ " )"
// Als de melding onderdeel is van *een* dienstniveau dan moet bij de ruimte een niveau ingevuld zijn waar deze melding onderdeel van is.
lfiltClause.where += " AND ((SELECT COUNT (*) aantal"
+ " FROM mld_dienstpakket dp1"
+ " WHERE dp1.mld_stdmelding_key = sm.mld_stdmelding_key) = 0"
+ " OR"
+ " EXISTS (SELECT COALESCE (NULL"
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
+ " , al.mld_dienstniveau_key"
+ " ) mld_dienstniveau_key"
+ " FROM"
+ (params.room_key > 0? " alg_ruimte ar," : "")
+ (params.flr_key > 0? " alg_verdieping av," : "")
+ (params.bld_key > 0? " alg_gebouw ag," : "")
+ " alg_locatie al,"
+ " mld_dienstpakket dp"
+ " WHERE"
+ (params.room_key > 0? " ar.alg_ruimte_key = " + params.room_key
+ " AND ar.alg_verdieping_key = av.alg_verdieping_key AND" : "")
+ (params.flr_key > 0? " av.alg_verdieping_key = " + params.flr_key
+ " AND av.alg_gebouw_key = ag.alg_gebouw_key AND" : "")
+ (params.bld_key > 0? " ag.alg_gebouw_key = " + params.bld_key
+ " AND ag.alg_locatie_key = al.alg_locatie_key AND" : "")
+ " al.alg_locatie_key = " + params.loc_key
+ " AND dp.mld_stdmelding_key = sm.mld_stdmelding_key"
+ " AND COALESCE (NULL"
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
+ " , al.mld_dienstniveau_key"
+ " ) = dp.mld_dienstniveau_key"
+ " )"
+ " )";
}
return lfiltClause;
}

View File

@@ -93,33 +93,40 @@ function getFiltClauseStdmelding(pfiltcode, params, init)
if (S("mld_edit_layout") == 1 && params.loc_key > 0) // Als de bld_key, flr_key of room_key is meegegeven is ook de loc_key meegegeven.
{ // Plaats gegevens worden voor de discipline/stdmelding gegevens getoond. Discipline en stdmelding afhankelijk van dienstlocatie maken.
lfiltClause.where += " AND EXISTS (SELECT COALESCE (NULL"
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
+ " , al.mld_dienstniveau_key"
+ " ) mld_dienstniveau_key"
+ " FROM"
+ (params.room_key > 0? " alg_ruimte ar," : "")
+ (params.flr_key > 0? " alg_verdieping av," : "")
+ (params.bld_key > 0? " alg_gebouw ag," : "")
+ " alg_locatie al,"
+ " mld_dienstpakket dp"
+ " WHERE"
+ (params.room_key > 0? " ar.alg_ruimte_key = " + params.room_key
+ " AND ar.alg_verdieping_key = av.alg_verdieping_key AND" : "")
+ (params.flr_key > 0? " av.alg_verdieping_key = " + params.flr_key
+ " AND av.alg_gebouw_key = ag.alg_gebouw_key AND" : "")
+ (params.bld_key > 0? " ag.alg_gebouw_key = " + params.bld_key
+ " AND ag.alg_locatie_key = al.alg_locatie_key AND" : "")
+ " al.alg_locatie_key = " + params.loc_key
+ " AND COALESCE (NULL"
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
+ " , al.mld_dienstniveau_key"
+ " ) = dp.mld_dienstniveau_key"
+ " )"
// Als de melding onderdeel is van *een* dienstniveau dan moet bij de ruimte een niveau ingevuld zijn waar deze melding onderdeel van is.
lfiltClause.where += " AND ((SELECT COUNT (*) aantal"
+ " FROM mld_dienstpakket dp1"
+ " WHERE dp1.mld_stdmelding_key = sm.mld_stdmelding_key) = 0"
+ " OR"
+ " EXISTS (SELECT COALESCE (NULL"
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
+ " , al.mld_dienstniveau_key"
+ " ) mld_dienstniveau_key"
+ " FROM"
+ (params.room_key > 0? " alg_ruimte ar," : "")
+ (params.flr_key > 0? " alg_verdieping av," : "")
+ (params.bld_key > 0? " alg_gebouw ag," : "")
+ " alg_locatie al,"
+ " mld_dienstpakket dp"
+ " WHERE"
+ (params.room_key > 0? " ar.alg_ruimte_key = " + params.room_key
+ " AND ar.alg_verdieping_key = av.alg_verdieping_key AND" : "")
+ (params.flr_key > 0? " av.alg_verdieping_key = " + params.flr_key
+ " AND av.alg_gebouw_key = ag.alg_gebouw_key AND" : "")
+ (params.bld_key > 0? " ag.alg_gebouw_key = " + params.bld_key
+ " AND ag.alg_locatie_key = al.alg_locatie_key AND" : "")
+ " al.alg_locatie_key = " + params.loc_key
+ " AND dp.mld_stdmelding_key = sm.mld_stdmelding_key"
+ " AND COALESCE (NULL"
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
+ " , al.mld_dienstniveau_key"
+ " ) = dp.mld_dienstniveau_key"
+ " )"
+ " )";
}
return lfiltClause;