FSN#38969: MJOB inspect verschuiving onterecht ongedaan gemaakt.

svn path=/Website/branches/v2016.3/; revision=32306
This commit is contained in:
Maykel Geerdink
2017-01-11 08:10:48 +00:00
parent 357e3b534a
commit efe89d5e6d

View File

@@ -634,6 +634,7 @@ else if (savemode == "E")
// Is het een mjob discipline en is de eenheid jaarlijks?
sql = "SELECT cdp.ctr_disc_params_ismjob"
+ " , cdp.ctr_disc_params_controle_type"
+ " , isc.ins_srtcontrole_eenheid"
+ " FROM ins_srtcontrole isc"
+ " , ctr_disc_params cdp"
@@ -641,28 +642,29 @@ else if (savemode == "E")
+ " AND isc.ins_srtcontrole_key = " + ingesloten[0].srtcont_key;
oRs = Oracle.Execute(sql);
var ismjob = !oRs.eof && oRs("ctr_disc_params_ismjob").Value == 1;
var ctrcontroletype = oRs("ctr_disc_params_controle_type").Value; // Controle(1), Vervanging(2) en Certificering(3).
var isjaarlijks = oRs("ins_srtcontrole_eenheid").Value == 4;
oRs.Close();
// Zijn er inspecties geweest voor dit object of is er een plandatum voor dit object ingevuld zodat we de volgende inspectiedatum kunnen berekenen?
var sql = "SELECT ins_deelsrtcontrole_datum"
+ " , MAX(ins_deelsrtcontrole_datum_org) ins_deelsrtcontrole_datum_org"
+ " FROM ins_deelsrtcontrole idsc"
+ " WHERE idsc.ins_srtcontrole_key = " + ingesloten[0].srtcont_key
+ " AND idsc.ins_deel_key = " + ingesloten[0].ins_key
+ " AND idsc.ins_deelsrtcontrole_datum IS NOT NULL"
+ " GROUP BY ins_deelsrtcontrole_datum";
+ " AND idsc.ins_deelsrtcontrole_datum IS NOT NULL"; // Er is geinspecteerd.
var oRs = Oracle.Execute(sql);
var nextdate = null;
if (!oRs.eof)
{ // Er is een inspectie geweest. In de laatste inspectie staat de volgende orginele inspectiedatum (nextdate). Voor een eerste inspectie is dat de inspectiedatum.
nextdate = new Date(oRs("ins_deelsrtcontrole_datum_org").Value);
{ // Bereken de volgende orginele inspectiedatum (nextdate).
var sql = "SELECT ins.nextcyclusdate (" + ingesloten[0].ins_key + ", " + ingesloten[0].srtcont_key + ", 1) nexdate FROM DUAL";
var oRs = Oracle.Execute(sql);
nextdate = new Date(oRs("nexdate").Value);
// Is jaar plandatum gelijk aan jaar orginele datum?
var plandatum_jaar = plandatum.getFullYear();
var nexdate_jaar = nextdate.getFullYear();
var nextdate_jaar = nextdate.getFullYear();
if (ismjob && isjaarlijks && plandatum_jaar == nexdate_jaar)
if (ismjob && isjaarlijks && plandatum_jaar == nextdate_jaar)
{ // Verwijder het inspectie record en ga verder met het volgende object.
mjobdelete = true;
}
@@ -702,9 +704,9 @@ else if (savemode == "E")
sql = "SELECT ins.nextcyclusdate (" + ingesloten[0].ins_key + ", " + ingesloten[0].srtcont_key + ", 1) nextdate FROM DUAL"
oRs = Oracle.Execute(sql);
var nextdate = new Date(oRs("nextdate").Value);
var nexdate_jaar = nextdate.getFullYear();
if ((nexdate_jaar <= thisyear && plandatum_jaar == thisyear) ||
(nexdate_jaar > thisyear && plandatum_jaar == nexdate_jaar))
var nextdate_jaar = nextdate.getFullYear();
if ((nextdate_jaar <= thisyear && plandatum_jaar == thisyear) ||
(nextdate_jaar > thisyear && plandatum_jaar == nextdate_jaar))
mjobdelete = true;
}
}