FSN#38083: Startmoment van de inspectie kunnen vastleggen bij het srtcontroledl_xcp record.
svn path=/Website/trunk/; revision=31409
This commit is contained in:
@@ -152,8 +152,9 @@ if (ins_key_arr.length == 1)
|
||||
var eenheid = -1;
|
||||
var scmode = 1; // 0 = Momentmode, 1 = Intervalmode.
|
||||
var sctype = -1;
|
||||
var vervaldatum = null;
|
||||
var aanmaakdatum = null;
|
||||
var aanmaakdatum;
|
||||
var startdatum;
|
||||
var eersteinspectie;
|
||||
var info = "";
|
||||
sql = "SELECT *"
|
||||
+ " FROM (SELECT DISTINCT COALESCE (xcp.ins_srtcontroledl_xcp_eenheid, di.ins_srtcontrole_eenheid) eenheid"
|
||||
@@ -161,6 +162,11 @@ if (ins_key_arr.length == 1)
|
||||
+ " , di.ins_srtcontrole_mode scmode"
|
||||
+ " , di.ctr_controle_type sctype"
|
||||
+ " , di.ins_deel_aanmaak"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_startdat startdatum"
|
||||
+ " , (SELECT COUNT (idsc.ins_deelsrtcontrole_key)"
|
||||
+ " FROM ins_deelsrtcontrole idsc1"
|
||||
+ " WHERE idsc1.ins_deel_key = di.ins_deel_key"
|
||||
+ " AND idsc1.ins_srtcontrole_key = di.ins_srtcontrole_key) aantal"
|
||||
+ " FROM ins_v_defined_inspect di"
|
||||
+ " , ins_srtcontroledl_xcp xcp"
|
||||
+ " , ins_deelsrtcontrole idsc"
|
||||
@@ -178,6 +184,8 @@ if (ins_key_arr.length == 1)
|
||||
scmode = oRs("scmode").Value;
|
||||
sctype = oRs("sctype").Value;
|
||||
aanmaakdatum = new Date(oRs("ins_deel_aanmaak").Value);
|
||||
startdatum = oRs("startdatum").Value != null? new Date(oRs("startdatum").Value) : null;
|
||||
eersteinspectie = oRs("aantal").Value == 0;
|
||||
oRs.MoveNext();
|
||||
while (!oRs.eof)
|
||||
{
|
||||
@@ -221,9 +229,9 @@ if (ins_key_arr.length == 1)
|
||||
+ " WHERE idsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND idsc.ins_srtcontrole_key = xcp.ins_srtcontrole_key(+)"
|
||||
+ " AND idsc.ins_deel_key = xcp.ins_deel_key(+)"
|
||||
+ " AND idsc.ins_deel_key IN (" + ingesloten.join(",") + ")"
|
||||
+ " AND idsc.ins_deel_key IN (" + ingesloten[0] + ")"
|
||||
+ " AND COALESCE(xcp.ins_srtcontroledl_xcp_periode, isc.ins_srtcontrole_periode) > 0"
|
||||
+ " AND idsc.ins_srtcontrole_key = " + ingeslotensc.join(",");
|
||||
+ " AND idsc.ins_srtcontrole_key = " + ingeslotensc[0];
|
||||
var oRs = Oracle.Execute(sql);
|
||||
while (!oRs.eof)
|
||||
{ %>
|
||||
@@ -602,7 +610,7 @@ if (ins_key_arr.length == 1)
|
||||
var dsc_is_afgemeld = false;
|
||||
var multidsc_has_afgemeld = false;
|
||||
if (!multi && ingeslotendsc[0] > 0)
|
||||
{
|
||||
{ // Bestaande inspectie.
|
||||
var sql = "SELECT ins_deelsrtcontrole_datum"
|
||||
+ " , ins_controlemode_key"
|
||||
+ " , ins_deelsrtcontrole_opmerking"
|
||||
@@ -625,10 +633,12 @@ if (ins_key_arr.length == 1)
|
||||
oRs.Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
inspect_data = {deelsrtcontrole_datum: null,
|
||||
{ // Nieuwe inspectie of multi.
|
||||
// Inplannen: Als niet multi en het is de eerste inspectie en de startdatum heeft een waarde dan deze waarde invullen als PLANDATUM.
|
||||
// Gereed melden/Afronden: Als niet multi en het is de eerste inspectie en de startdatum heeft een waarde dan deze waarde invullen als CONTROLEDATUM.
|
||||
inspect_data = {deelsrtcontrole_datum: insClose && !multi && startdatum != null && eersteinspectie? startdatum : null,
|
||||
controlemode_key: -1,
|
||||
deelsrtcontrole_plandatum: insPlan? new Date(): null,
|
||||
deelsrtcontrole_plandatum: insPlan? (!multi && startdatum != null && eersteinspectie? startdatum : new Date()): null,
|
||||
deelsrtcontrole_opmerking: "",
|
||||
deelsrtcontrole_status: insstatus,
|
||||
deelsrtcontrole_status_str: status_str};
|
||||
|
||||
@@ -51,6 +51,7 @@ var xcp_kosten2;
|
||||
var xcp_kosten3;
|
||||
var xcp_perc;
|
||||
var xcp_groep;
|
||||
var xcp_startdatum = null;
|
||||
var xcp_vervaldatum = null;
|
||||
var xcp_opmerk;
|
||||
var periodereartext = "";
|
||||
@@ -109,6 +110,7 @@ if (srtcont_key > 0)
|
||||
+ " , xcp.ins_srtcontroledl_xcp_kosten3"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_perc"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_groep"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_startdat"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_eind"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_opmerk"
|
||||
+ " , xcp.ins_scenario_key"
|
||||
@@ -143,6 +145,7 @@ if (srtcont_key > 0)
|
||||
xcp_kosten3 = oRs("ins_srtcontroledl_xcp_kosten3").Value;
|
||||
xcp_perc = oRs("ins_srtcontroledl_xcp_perc").Value;
|
||||
xcp_groep = oRs("ins_srtcontroledl_xcp_groep").Value;
|
||||
xcp_startdatum = oRs("ins_srtcontroledl_xcp_startdat").Value? new Date(oRs("ins_srtcontroledl_xcp_startdat").Value) : null;
|
||||
xcp_vervaldatum = oRs("ins_srtcontroledl_xcp_eind").Value? new Date(oRs("ins_srtcontroledl_xcp_eind").Value) : null;
|
||||
xcp_opmerk = oRs("ins_srtcontroledl_xcp_opmerk").Value;
|
||||
periode = oRs("ins_srtcontrole_periode").Value;
|
||||
@@ -511,6 +514,27 @@ if (srtcont_key > 0)
|
||||
$("#stdopmerk").prop("title", getSrtControleValue("opmerk_std"));
|
||||
|
||||
$("#xcp_key").val(getSrtControleValue("xcp_key"));
|
||||
|
||||
// Zet de startdatum
|
||||
var startdatum_xcp_dag = getSrtControleValue("start_xcp_dag");
|
||||
var startdatum_xcp_maand = getSrtControleValue("start_xcp_maand");
|
||||
var startdatum_xcp_jaar = getSrtControleValue("start_xcp_jaar");
|
||||
var startdatum_xcp = (startdatum_xcp_dag === ""? "" : new Date(startdatum_xcp_jaar, (startdatum_xcp_maand - 1), startdatum_xcp_dag));
|
||||
// Waarde van de startdatum moet kleiner zijn als de eigenlijke nextdatum (1 dag eerder).
|
||||
var nextdate_dag = getSrtControleValue("nextdate_dag");
|
||||
var nextdate_maand = getSrtControleValue("nextdate_maand");
|
||||
var nextdate_jaar = getSrtControleValue("nextdate_jaar");
|
||||
var nextdate = new Date(nextdate_jaar, (nextdate_maand - 1), nextdate_dag - 1); // (1 dag eerder).
|
||||
// Als er al inspecties zijn geweest dan is de startdatum niet meer van belang. Dan de startdatum readonly maken/weergeven.
|
||||
var hascontroles = getSrtControleValue("hascontroles");
|
||||
var startdatum_ro = (hascontroles == 1) || (<%=(!this_ins.canChangeXcp && !this_ins.hasAnyWriteXcp)? 1 : 0%> == 1);
|
||||
$("#show_startdatum").closest("td").load("../Shared/loadCalendar.asp",
|
||||
{ cal_id: "startdatum",
|
||||
datum: (startdatum_xcp === ""? "" : startdatum_xcp.getTime()),
|
||||
initEmpty: startdatum_xcp === ""? 1 : 0,
|
||||
readonly: startdatum_ro? 1 : 0,
|
||||
maxDate: nextdate.getTime()
|
||||
});
|
||||
}
|
||||
|
||||
function calcKosten(number)
|
||||
@@ -604,6 +628,10 @@ if (srtcont_key > 0)
|
||||
+ " , di.ins_srtcontrole_opmerking opmerk_std"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_opmerk opmerk_xcp"
|
||||
+ " , COALESCE(xcp.ins_srtcontroledl_xcp_key, -1) xcp_key"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_startdat startdate_xcp"
|
||||
+ " , TO_CHAR(xcp.ins_srtcontroledl_xcp_startdat, 'DD') start_xcp_dag"
|
||||
+ " , TO_CHAR(xcp.ins_srtcontroledl_xcp_startdat, 'MM') start_xcp_maand"
|
||||
+ " , TO_CHAR(xcp.ins_srtcontroledl_xcp_startdat, 'YYYY') start_xcp_jaar"
|
||||
+ " , di.ins_srtcontrole_eind eind_std"
|
||||
+ " , TO_CHAR(di.ins_srtcontrole_eind, 'DD') eind_std_dag"
|
||||
+ " , TO_CHAR(di.ins_srtcontrole_eind, 'MM') eind_std_maand"
|
||||
@@ -612,7 +640,19 @@ if (srtcont_key > 0)
|
||||
+ " , TO_CHAR(xcp.ins_srtcontroledl_xcp_eind, 'DD') eind_xcp_dag"
|
||||
+ " , TO_CHAR(xcp.ins_srtcontroledl_xcp_eind, 'MM') eind_xcp_maand"
|
||||
+ " , TO_CHAR(xcp.ins_srtcontroledl_xcp_eind, 'YYYY') eind_xcp_jaar"
|
||||
+ " , TO_CHAR(ins.nextcyclusdate (di.ins_deel_key, di.ins_srtcontrole_key, 1), 'DD') nextdate_dag"
|
||||
+ " , TO_CHAR(ins.nextcyclusdate (di.ins_deel_key, di.ins_srtcontrole_key, 1), 'MM') nextdate_maand"
|
||||
+ " , TO_CHAR(ins.nextcyclusdate (di.ins_deel_key, di.ins_srtcontrole_key, 1), 'YYYY') nextdate_jaar"
|
||||
+ " , di.ctr_ismjob ismjob"
|
||||
+ " , CASE"
|
||||
+ " WHEN (SELECT COUNT(sdc.ins_deelsrtcontrole_key)"
|
||||
+ " FROM ins_deelsrtcontrole sdc"
|
||||
+ " WHERE sdc.ins_deel_key = di.ins_deel_key"
|
||||
+ " AND sdc.ins_srtcontrole_key = di.ins_srtcontrole_key"
|
||||
+ " AND sdc.ins_deelsrtcontrole_status = 6) > 0"
|
||||
+ " THEN 1"
|
||||
+ " ELSE 0"
|
||||
+ " END hascontroles"
|
||||
+ " FROM ins_v_defined_inspect di"
|
||||
+ " , ins_srtcontroledl_xcp xcp"
|
||||
+ " WHERE di.ins_srtcontrole_key = xcp.ins_srtcontrole_key(+)"
|
||||
@@ -669,6 +709,7 @@ if (srtcont_key > 0)
|
||||
+ " , xcp.ins_srtcontroledl_xcp_materia"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_perc"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_opmerk"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_startdat"
|
||||
+ " , xcp.ins_srtcontroledl_xcp_eind"
|
||||
+ " , di.ctr_ismjob"
|
||||
+ " HAVING COUNT(*) = " + cntdeel // Als multi dan alleen de inspecties die voor *alle* objecten gelden
|
||||
@@ -688,14 +729,18 @@ if (srtcont_key > 0)
|
||||
+ ", kosten_std1, kosten_xcp1, kosten_std2, kosten_xcp2, kosten_std3, kosten_xcp3"
|
||||
+ ", uren_std, uren_xcp, materiaal_std, materiaal_xcp, perc_std, perc_xcp"
|
||||
+ ", opmerk_std, opmerk_xcp, xcp_key, groep_std, groep_xcp"
|
||||
+ ", start_xcp_dag, start_xcp_maand, start_xcp_jaar"
|
||||
+ ", eind_std_dag, eind_xcp_dag, eind_std_maand, eind_xcp_maand, eind_std_jaar, eind_xcp_jaar"
|
||||
+ ", ismjob",
|
||||
+ ", nextdate_dag, nextdate_maand, nextdate_jaar"
|
||||
+ ", ismjob, hascontroles",
|
||||
extraParamValueInit: "1, -1, -1, , , , "
|
||||
+ ", , , , , , "
|
||||
+ ", , , , , , "
|
||||
+ ", , , , , "
|
||||
+ ", , , "
|
||||
+ ", , , , , , "
|
||||
+ ", "
|
||||
+ ", , , "
|
||||
+ ", , "
|
||||
});
|
||||
%>
|
||||
<input type="hidden" id="xcp_key" name="xcp_key" value="-1">
|
||||
@@ -889,6 +934,13 @@ if (srtcont_key > 0)
|
||||
readonly: !this_ins.canChangeXcp && !this_ins.hasAnyWriteXcp,
|
||||
suppressEmpty: !this_ins.canChangeXcp && !this_ins.hasAnyWriteXcp
|
||||
});
|
||||
FCLTcalendar("startdatum",
|
||||
{ datum: xcp_startdatum,
|
||||
label : L("lcl_ins_startdatum"),
|
||||
initEmpty: xcp_startdatum == null,
|
||||
readonly: !this_ins.canChangeXcp && !this_ins.hasAnyWriteXcp,
|
||||
suppressEmpty: !this_ins.canChangeXcp && !this_ins.hasAnyWriteXcp
|
||||
});
|
||||
FCLTcalendar("vervaldatum",
|
||||
{ datum: xcp_vervaldatum,
|
||||
label : L("lcl_ins_vervaldatum") + "<span id='stdvervaldatum'></span>",
|
||||
|
||||
@@ -88,7 +88,8 @@ var uren = getFParamFloat("uren") || null; // ins_srtcontroledl_xcp_uren.
|
||||
var materiaal = getFParamFloat("materiaal", null); // ins_srtcontroledl_xcp_materia.
|
||||
var perc = getFParamInt("perc", null); // ins_srtcontroledl_xcp_perc.
|
||||
var groep = getFParam("groep", null); // ins_srtcontroledl_xcp_groep.
|
||||
var vervaldatum = getFParamDate("vervaldatum", null); // ins_srtcontroledl_xcp_eenheid.
|
||||
var startdatum = getFParamDate("startdatum", null); // ins_srtcontroledl_xcp_startdat.
|
||||
var vervaldatum = getFParamDate("vervaldatum", null); // ins_srtcontroledl_xcp_eind.
|
||||
var opmerk = getFParam("opmerk", null); // ins_srtcontroledl_xcp_opmerk.
|
||||
var bits = 0;
|
||||
|
||||
@@ -141,23 +142,24 @@ var paramsdiffer = ((eenheid != -1 && (eenheid != eenheid_std || (periode != nul
|
||||
(perc != null && perc != perc_std) ||
|
||||
(groep != "" && groep != groep_std) ||
|
||||
(opmerk != "" && opmerk != opmerk_std) ||
|
||||
datumdiffer);
|
||||
datumdiffer || startdatum != null);
|
||||
var deactivate = periode_std == 0 && (periode == null || periode == 0); // Beide periodes zijn 0. Controle wordt inactief. Uitzonderings regel kan weg in ins_srtcontroledl_xcp.
|
||||
|
||||
if (paramsdiffer && !deactivate)
|
||||
{ // parameters wijken af van de standaard of er is een respijtdatum of groep ingevuld.
|
||||
{ // parameters wijken af van de standaard of er is een startdatum ingevuld.
|
||||
var result = { success: true, srtcontroledl_xcp_key: xcp_key };
|
||||
|
||||
var fields = [ { dbs: "ins_deel_key", typ: "key", val: ins_key },
|
||||
{ dbs: "ins_srtcontrole_key", typ: "key", frm: "sel_srtcontrole" },
|
||||
{ dbs: "ins_srtcontroledl_xcp_eenheid", typ: "number", val: (eenheid == -1 || eenheid == eenheid_std || eenheid < 0? null : eenheid) }, // Waarde gelijk aan standaard niet opslaan.
|
||||
{ dbs: "ins_srtcontroledl_xcp_periode", typ: "number", val: (periode == null || periode == periode_std? null : periode) }, // Waarde gelijk aan standaard niet opslaan.
|
||||
{ dbs: "ins_srtcontroledl_xcp_bits", typ: "number", val: (bits == null || bits == bits_std? null : bits) }, // Waarde gelijk aan standaard niet opslaan.
|
||||
{ dbs: "ins_srtcontroledl_xcp_uren", typ: "float", val: (uren == null || uren == uren_std? null : uren) },
|
||||
{ dbs: "ins_srtcontroledl_xcp_perc", typ: "float", val: (perc == null || perc == perc_std? null : perc) },
|
||||
{ dbs: "ins_srtcontroledl_xcp_groep", typ: "varchar", val: (groep == "" || groep == groep_std? null : groep) },
|
||||
{ dbs: "ins_srtcontroledl_xcp_opmerk", typ: "varchar", val: (opmerk == "" || opmerk == opmerk_std? null : opmerk) },
|
||||
{ dbs: "ins_srtcontroledl_xcp_eind", typ: "datetime", val: (datumdiffer? vervaldatum : null) }
|
||||
var fields = [ { dbs: "ins_deel_key", typ: "key", val: ins_key },
|
||||
{ dbs: "ins_srtcontrole_key", typ: "key", frm: "sel_srtcontrole" },
|
||||
{ dbs: "ins_srtcontroledl_xcp_eenheid", typ: "number", val: (eenheid == -1 || eenheid == eenheid_std || eenheid < 0? null : eenheid) }, // Waarde gelijk aan standaard niet opslaan.
|
||||
{ dbs: "ins_srtcontroledl_xcp_periode", typ: "number", val: (periode == null || periode == periode_std? null : periode) }, // Waarde gelijk aan standaard niet opslaan.
|
||||
{ dbs: "ins_srtcontroledl_xcp_bits", typ: "number", val: (bits == null || bits == bits_std? null : bits) }, // Waarde gelijk aan standaard niet opslaan.
|
||||
{ dbs: "ins_srtcontroledl_xcp_uren", typ: "float", val: (uren == null || uren == uren_std? null : uren) },
|
||||
{ dbs: "ins_srtcontroledl_xcp_perc", typ: "float", val: (perc == null || perc == perc_std? null : perc) },
|
||||
{ dbs: "ins_srtcontroledl_xcp_groep", typ: "varchar", val: (groep == "" || groep == groep_std? null : groep) },
|
||||
{ dbs: "ins_srtcontroledl_xcp_opmerk", typ: "varchar", val: (opmerk == "" || opmerk == opmerk_std? null : opmerk) },
|
||||
{ dbs: "ins_srtcontroledl_xcp_startdat", typ: "datetime", frm: "startdatum" },
|
||||
{ dbs: "ins_srtcontroledl_xcp_eind", typ: "datetime", val: (datumdiffer? vervaldatum : null) }
|
||||
];
|
||||
|
||||
var ins_xcp_active_cost = S("ins_xcp_active_cost");
|
||||
|
||||
Reference in New Issue
Block a user