FCLT#77900: Realisatie van MJOB via meerdere meer taken per melding.
svn path=/Website/trunk/; revision=60708
This commit is contained in:
@@ -298,7 +298,7 @@ function model_ins_srtcontrole()
|
||||
},
|
||||
{
|
||||
"name": "start",
|
||||
"label": L("ins_srtcontrole_start"),
|
||||
"label": ismjob? L("ins_srtcontrole_start_mjob") : L("ins_srtcontrole_start"),
|
||||
"mask": 2,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
|
||||
@@ -584,12 +584,15 @@ checker("Controle queries die geen records mogen opleveren",
|
||||
+ " WHERE mld_statusopdr_key IS NULL"
|
||||
},
|
||||
{ msg: "Meldingen met een verwijzing naar een verwijderde inspectie doordat de taak (periodiek inspectie) is verwijderd",
|
||||
sql: "SELECT mld_melding_key"
|
||||
sql: "SELECT m.mld_melding_key"
|
||||
+ " FROM mld_melding m"
|
||||
+ " WHERE m.mld_melding_kto_type = 'T'"
|
||||
+ " AND NOT EXISTS (SELECT idsc.ins_deelsrtcontrole_key"
|
||||
+ " FROM ins_deelsrtcontrole idsc"
|
||||
+ " WHERE idsc.ins_deelsrtcontrole_key = m.mld_melding_kto_key)"
|
||||
+ " , mld_melding_object mo"
|
||||
+ " WHERE m.mld_melding_key = mo.mld_melding_key"
|
||||
+ " AND mo.ins_deelsrtcontrole_key IS NOT NULL"
|
||||
+ " AND NOT EXISTS"
|
||||
+ " (SELECT idsc.ins_deelsrtcontrole_key"
|
||||
+ " FROM ins_deelsrtcontrole idsc"
|
||||
+ " WHERE idsc.ins_deelsrtcontrole_key = mo.ins_deelsrtcontrole_key)"
|
||||
},
|
||||
{ msg: "Afspraken zonder bezoekers (niet problematisch)",
|
||||
sql: "SELECT bez_afspraak_key " +
|
||||
|
||||
@@ -344,7 +344,7 @@ ins = {checkAutLevel:
|
||||
switch (s) {
|
||||
case 0: { statustekst = L("lcl_ins_controle_pending"); break; }
|
||||
case 2: { statustekst = L("lcl_ins_controle_gestart"); break; }
|
||||
case 3: { statustekst = L("lcl_ins_controle_ter_uitvoering"); break; }
|
||||
case 3: { statustekst = L("lcl_ins_controle_ter_uitvoer"); break; }
|
||||
case 5: { statustekst = L("lcl_ins_controle_act_req"); break; }
|
||||
case 6: { statustekst = L("lcl_ins_controle_afgerond"); break; }
|
||||
}
|
||||
@@ -651,7 +651,6 @@ ins = {checkAutLevel:
|
||||
|
||||
photoinfo: function _photoinfo(pins_deel_key)
|
||||
{
|
||||
// via S("prs_photo_kenmerk_key") == -1 is tonen/niet tonen te regelen. Daar doen we hier niets mee, dan upload je maar niet.
|
||||
var props = flexProps("INSPHD", pins_deel_key, null, null, {getFiles: true});
|
||||
var result;
|
||||
if (props.files.length > 0)
|
||||
@@ -1163,8 +1162,13 @@ ins = {checkAutLevel:
|
||||
iresult.canInspExecute = periode > 0 && iresult.readuse && canDoNextAction && !vervallen &&
|
||||
ins_deelsrtcontrole_status == 2 &&
|
||||
actief && iresult.hasCTRBOFWrite &&
|
||||
((isc_options & 3) == 3) &&
|
||||
((isc_options & 2) == 2) &&
|
||||
!isScenario && isFreezeYear && ctr_ismjob;
|
||||
iresult.canInspUnexecute = periode > 0 && iresult.readuse && canDoNextAction && !vervallen &&
|
||||
ins_deelsrtcontrole_status == 3 &&
|
||||
actief && iresult.hasCTRBOFWrite &&
|
||||
((isc_options & 2) == 2) &&
|
||||
!isScenario && isFreezeYear && ctr_ismjob;
|
||||
iresult.canInspMoveUp = S("mjb_enable_moveup") == 1 && periode > 0 && iresult.readuse &&
|
||||
canDoNextAction && !vervallen &&
|
||||
(ins_deelsrtcontrole_status == 2 || ins_deelsrtcontrole_status == 3) &&
|
||||
@@ -4754,8 +4758,9 @@ ins = {checkAutLevel:
|
||||
case 6: keyColumn = "isd.ins_srtdeel_key";
|
||||
break;
|
||||
case 7:
|
||||
case 8: keyColumn = "dl.ins_deel_key";
|
||||
case 9: keyColumn = "dl.ins_deel_key";
|
||||
break;
|
||||
//case 8: // melding komt hier niet voor. (wel bij mld_search_list.asp)
|
||||
}
|
||||
|
||||
var sql_cost_verval = "SELECT d.alg_district_key"
|
||||
@@ -5443,7 +5448,7 @@ ins = {checkAutLevel:
|
||||
fields.push("alg_ruimte_nr");
|
||||
fields.push("alg_ruimte_omschrijving");
|
||||
}
|
||||
if (groupby >= 7) // bij omschrijving hoort ook aantal met eenheid.
|
||||
if (groupby == 7 || groupby == 9) // bij omschrijving hoort ook aantal met eenheid.
|
||||
{
|
||||
fields.push("ins_deel_aantal");
|
||||
fields.push("ins_srtdeel_eenheid");
|
||||
@@ -5515,7 +5520,7 @@ ins = {checkAutLevel:
|
||||
mjb_score = "alg_locatie_mjb_score1";
|
||||
else if (groupby == 3)
|
||||
mjb_score = "alg_gebouw_mjb_score1";
|
||||
else if (groupby >= 7)
|
||||
else if (groupby == 7 || groupby == 9)
|
||||
mjb_score = "ins_deel_mjb_score1";
|
||||
|
||||
if (mjb_score != "" && fitness_score1_from > 0)
|
||||
@@ -5523,7 +5528,7 @@ ins = {checkAutLevel:
|
||||
if (mjb_score != "" && fitness_score1_through > 0)
|
||||
sql += " AND " + mjb_score + " <= " + fitness_score1_through;
|
||||
|
||||
if (groupby >= 7)
|
||||
if (groupby == 7 || groupby == 9)
|
||||
{
|
||||
// Negatieve afwijking (=dus slechter) van de conditiescore (ins_deel_mjb_score1) in hele getallen t.o.v. de norm (ins_srtdeel_mjb_grensscore1) .
|
||||
// Wanneer een element NIET is gemeten (conditiemeting is niet geweest) dan is ins_deel_score1 LEEG,
|
||||
@@ -5598,7 +5603,7 @@ ins = {checkAutLevel:
|
||||
+ " , ins_srtdeel_omschrijving"
|
||||
+ " , ins_deel_omschrijving";
|
||||
break;
|
||||
case 8: sql += " ORDER BY alg_district_omschrijving"
|
||||
case 9: sql += " ORDER BY alg_district_omschrijving"
|
||||
+ " , ins_srtcontrole_omschrijving"
|
||||
+ " , alg_locatie_code"
|
||||
+ " , alg_gebouw_code"
|
||||
|
||||
@@ -88,9 +88,9 @@ var transitParam = buildTransitParam(["deelsrtcont_keys", "fromfinish", "finishm
|
||||
|
||||
// Meldingen die aan deze priodieke inspectie zijn gekoppeld.
|
||||
// Als je geen mld rechten hebt dan hoef je iframe ook niet te tonen.
|
||||
sql = "SELECT mld_melding_key FROM mld_melding"
|
||||
+ " WHERE mld_melding_kto_type = 'T'"
|
||||
+ " AND mld_melding_kto_key = " + deelsrtcont_key;
|
||||
sql = "SELECT mld_melding_key"
|
||||
+ " FROM mld_melding_object"
|
||||
+ " WHERE ins_deelsrtcontrole_key = " + deelsrtcont_key;
|
||||
oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
{
|
||||
|
||||
@@ -19,7 +19,8 @@
|
||||
<%
|
||||
FCLTHeader.Requires({ js: ["jquery-ui.js"]});
|
||||
|
||||
var ins_key = getQParamInt("ins_key");
|
||||
var ins_key = getQParamInt("ins_key", -1);
|
||||
var mld_key = getQParamInt("mld_key", -1);
|
||||
var outputmode = getQParamInt("outputmode", 0);
|
||||
var showall = getQParamInt("showall", 0) == 1;
|
||||
var print = (outputmode == 1 || outputmode == 5);
|
||||
@@ -95,6 +96,30 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
});
|
||||
}
|
||||
|
||||
function insUnexecute(row)
|
||||
{
|
||||
|
||||
FcltMgr.confirm(L("lcl_ins_unexecuting"), function() {
|
||||
var inskey = row.getAttribute("ROWKEY");
|
||||
var rowdata = JSON.parse(row.getAttribute("ROWDATA"));
|
||||
if (rowdata)
|
||||
{
|
||||
var srtcontrolekey = rowdata.insSrtControleKey;
|
||||
var deelSrtContrKey = rowdata.insDeelSrtContrKey;
|
||||
|
||||
var data = {
|
||||
mld_key: <%=mld_key%>,
|
||||
ins_key: inskey,
|
||||
srtcont_key: srtcontrolekey,
|
||||
deelsrtcont_key: deelSrtContrKey
|
||||
};
|
||||
|
||||
protectRequest.dataToken(data);
|
||||
$.post("ins_inspect_unexecute.asp", data, FcltCallbackRefresh, "json");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function insClose(row, fromfinish)
|
||||
{
|
||||
$(row).addClass('dirty');
|
||||
@@ -155,11 +180,11 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
|
||||
// Als de controlesoort niet meer geldig is dan kunnen er geen inspecties meer komen.
|
||||
// Een object kan meerdere controlesoorten hebben. Alleen die controlesoorten laten zien die nog geldig zijn.
|
||||
var sql = insp.list_sql(ins_key, {past: true, present: true, future: true});
|
||||
var sql = insp.list_sql(ins_key, mld_key, {past: true, present: true, future: mld_key < 0});
|
||||
|
||||
function fnrowData(oRs)
|
||||
{
|
||||
var insKey = ins_key;
|
||||
var insKey = oRs("ins_deel_key").Value;
|
||||
var insSrtControleKey = oRs("ins_srtcontrole_key").Value;
|
||||
var insSrtControleType = oRs("ctr_controle_type").Value;
|
||||
var insSrtControleOpt = oRs("options").Value;
|
||||
@@ -169,15 +194,18 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
var istatus = oRs("ins_deelsrtcontrole_status").Value;
|
||||
var insDeelSrtContrKey = oRs("ins_deelsrtcontrole_key").Value != null? oRs("ins_deelsrtcontrole_key").Value : -2;
|
||||
|
||||
var data = { insKey: ins_key, insSrtControleKey: insSrtControleKey, insSrtControleType: insSrtControleType,
|
||||
var data = { insKey: insKey, insSrtControleKey: insSrtControleKey, insSrtControleType: insSrtControleType,
|
||||
insSrtControleOpt: insSrtControleOpt, insCtrIsMJOB: insCtrIsMJOB, insDeelSrtContrKey: insDeelSrtContrKey, ins_status: istatus};
|
||||
return JSON.stringify(data);
|
||||
}
|
||||
|
||||
var this_ins = ins.func_enabled_deel(ins_key); // De ins_key is voor alle regels in de lijst hetzelfde.
|
||||
var this_ins;
|
||||
if (ins_key > 0)
|
||||
this_ins = ins.func_enabled_deel(ins_key); // De ins_key is voor alle regels in de lijst hetzelfde.
|
||||
function fnrowActionEnabler(oRs)
|
||||
{
|
||||
// Als object is vervallen dan kun je niet meer inspecteren en uitstellen.
|
||||
var insKey = oRs("ins_deel_key").Value;
|
||||
var vervallen = (oRs("inspectie_eind").Value != null && new Date(oRs("inspectie_eind").Value).getTime() < new Date().midnight());
|
||||
var istatus = oRs("ins_deelsrtcontrole_status").Value != null? oRs("ins_deelsrtcontrole_status").Value : -1;
|
||||
|
||||
@@ -187,7 +215,10 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
var eStartD = false;
|
||||
var eClose = false;
|
||||
var eFinish = false;
|
||||
var eUnexecute = false;
|
||||
|
||||
if (ins_key < 0)
|
||||
this_ins = ins.func_enabled_deel(insKey); // Bij een melding hoeft de ins_key voor alle regels in de lijst niet hetzelfde te zijn.
|
||||
// De inspecties van vervallen taken moeten nog ingezien kunnen worden. De actie eShow dus niet afhankelijk van vervallen maken.
|
||||
var eShow = istatus >= 0 && this_ins.readuse; // this_ins.canInspShow niet gebruikt zodat ins.func_enabled_deel niet hoeft te worden aangeroepen voor status = 6.
|
||||
// Elke afgeronde inspectie (status Afgerond(6)) is in dit geval een regel. Die afgeronde inspecties mogen niet ingepland worden.
|
||||
@@ -195,10 +226,10 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
{
|
||||
var insSrtControleKey = oRs("ins_srtcontrole_key").Value;
|
||||
var insDeelSrtContrKey = oRs("ins_deelsrtcontrole_key").Value;
|
||||
var lthis_ins = ins.func_enabled_deel(ins_key,
|
||||
var lthis_ins = ins.func_enabled_deel(insKey,
|
||||
{srtcont_key: insSrtControleKey,
|
||||
deelsrtcont_key: insDeelSrtContrKey
|
||||
}); // De ins_key is voor alle regels in de lijst hetzelfde.
|
||||
}); // De ins_key is voor alle regels in de lijst hetzelfde indien er geen mld_key is meegegeven.
|
||||
|
||||
// Gedaande inspecties kunnen alleen geedit worden.
|
||||
// Ik zie alleen objecten waar ik read rechten (3d) op heb. Dan mag ik ze ook verder inzien.
|
||||
@@ -207,12 +238,13 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
// Start een nieuwe inspectie m.b.v. een inline button actie. MJOB mag alleen starten/freezen in de jaren voor het freeze jaar.
|
||||
var eStart = lthis_ins.canInspStart || (lthis_ins.canInspFreeze && S("mjb_freeze_year") < new Date().getYear());
|
||||
var eStartD = (lthis_ins.canInspStart || lthis_ins.canInspFreeze) && (istatus < 0); // Start een nieuwe inspectie m.b.v. een default inline actie (op regel klikken).
|
||||
var eUnexecute = mld_key > 0 && lthis_ins.canInspUnexecute;
|
||||
var eClose = lthis_ins.canInspClose;
|
||||
// Als er nog niet gereed gemeld/afgemeld is dan wordt die butten wel getoond. MJOB mag alleen starten/freezen in de jaren voor het freeze jaar.
|
||||
var eFinish = (!lthis_ins.canInspClose && lthis_ins.canInspFinish) || (lthis_ins.canInspFinishMjb && S("mjb_freeze_year") < new Date().getYear());
|
||||
}
|
||||
|
||||
var data = {eEdit: eEdit, eShow: eShow, ePlan: ePlan, eStart: eStart, eStartD: eStartD, eClose: eClose, eFinish: eFinish};
|
||||
var data = {eEdit: eEdit, eShow: eShow, ePlan: ePlan, eStart: eStart, eStartD: eStartD, eUnexecute: eUnexecute, eClose: eClose, eFinish: eFinish};
|
||||
return data;
|
||||
}
|
||||
|
||||
@@ -409,7 +441,7 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
}
|
||||
|
||||
var buttons = [];
|
||||
if (this_ins.canChange)
|
||||
if (ins_key > 0 && this_ins.canChange)
|
||||
{
|
||||
var addurl_add = "../ins/ins_xcp.asp?ins_key=" + ins_key + "&urole=bo&add=1";
|
||||
var addurl_editxcp = "../ins/ins_xcp.asp?ins_key=" + ins_key + "&urole=bo";
|
||||
@@ -456,6 +488,7 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
buttons: buttons
|
||||
});
|
||||
|
||||
rst.addColumn(new Column({caption: L("lcl_obj_identification"), content: "ins_deel_omschrijving"}));
|
||||
rst.addColumn(new Column({caption: L("ctr_discipline"), content: "ins_discipline_omschrijving"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_ins_controle_plandate"), content: fnVolgende}));
|
||||
rst.addColumn(new Column({caption: L("lcl_ins_controle_datum"), content: fnControleDatum}));
|
||||
@@ -472,6 +505,8 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
rst.addAction({ action: "insStart", caption: L("lcl_ins_start"), enabler: "eStartD", isDefault: true });
|
||||
rst.addAction({ action: "insPlan", caption: L("lcl_ins_schedule"), enabler: "ePlan" });
|
||||
rst.addAction({ action: "insStart", caption: L("lcl_ins_start"), enabler: "eStart" });
|
||||
if (mld_key > 0)
|
||||
rst.addAction({ action: "insUnexecute", caption: L("lcl_ins_unexecute"), enabler: "eUnexecute", tooltip: L("lcl_ins_unexecute_task") });
|
||||
rst.addAction({ action: "insClose", caption: L("lcl_ins_stop"), enabler: "eClose" });
|
||||
rst.addAction({ action: "insFinish", caption: L("lcl_ins_finish"), enabler: "eFinish" });
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<%
|
||||
|
||||
insp = {
|
||||
list_sql: function _list_sql(ins_key, params)
|
||||
list_sql: function _list_sql(ins_key, mld_key, params)
|
||||
{
|
||||
var mjb_freeze_year = S("mjb_freeze_year");
|
||||
var mjb_start_year = S("mjb_start_year");
|
||||
@@ -256,11 +256,9 @@ insp = {
|
||||
+ " , di.ins_srtcontrole_options options"
|
||||
+ " , NULL ins_controlemode_success"
|
||||
+ " , d.ins_deel_omschrijving"
|
||||
+ " , s.ins_srtdeel_omschrijving"
|
||||
+ " , cd.ins_discipline_omschrijving"
|
||||
+ " FROM ins_v_defined_inspect_xcp di"
|
||||
+ " , ins_deel d"
|
||||
+ " , ins_srtdeel s"
|
||||
+ " , ctr_v_aanwezigdiscipline cd"
|
||||
+ " , (SELECT MAX(ins_deelsrtcontrole_key) laatste"
|
||||
+ " , id2.ins_deel_key"
|
||||
@@ -292,7 +290,6 @@ insp = {
|
||||
+ " OR di.ins_srtcontrole_eind IS NULL)"
|
||||
+ " AND di.ins_deel_key = " + ins_key
|
||||
+ " AND di.ins_deel_key = d.ins_deel_key"
|
||||
+ " AND d.ins_srtdeel_key = s.ins_srtdeel_key"
|
||||
+ " AND di.ins_deel_key = ltst.ins_deel_key(+)"
|
||||
+ " AND di.ins_srtcontrole_key = ltst.ins_srtcontrole_key(+)"
|
||||
+ " AND di.ins_deel_key = ltst_not_suc.ins_deel_key(+)"
|
||||
@@ -420,23 +417,27 @@ insp = {
|
||||
+ " , di.ins_srtcontrole_options options"
|
||||
+ " , cm.ins_controlemode_success ins_controlemode_success"
|
||||
+ " , d.ins_deel_omschrijving"
|
||||
+ " , s.ins_srtdeel_omschrijving"
|
||||
+ " , cd.ins_discipline_omschrijving"
|
||||
+ " FROM ins_v_defined_inspect_xcp di"
|
||||
+ " , ins_deelsrtcontrole idsc"
|
||||
+ " , prs_perslid p"
|
||||
+ " , ins_controlemode cm"
|
||||
+ " , ins_deel d"
|
||||
+ " , ins_srtdeel s"
|
||||
+ (mld_key > 0
|
||||
? " , mld_melding_object mo"
|
||||
: "")
|
||||
+ " , ctr_v_aanwezigdiscipline cd"
|
||||
+ " WHERE idsc.ins_srtcontrole_key = di.ins_srtcontrole_key"
|
||||
+ " AND idsc.ins_deel_key = di.ins_deel_key"
|
||||
+ " AND d.ins_deel_key = di.ins_deel_key"
|
||||
+ " AND d.ins_srtdeel_key = s.ins_srtdeel_key"
|
||||
+ (!params.present ? " AND idsc.ins_deelsrtcontrole_status NOT IN (2, 3)" : "")
|
||||
+ " AND idsc.prs_perslid_key = p.prs_perslid_key(+)"
|
||||
+ " AND idsc.ins_controlemode_key = cm.ins_controlemode_key(+)"
|
||||
+ " AND di.ins_deel_key = " + ins_key
|
||||
+ (mld_key > 0
|
||||
? " AND d.ins_deel_key = mo.ins_deel_key"
|
||||
+ " AND idsc.ins_deelsrtcontrole_key = mo.ins_deelsrtcontrole_key"
|
||||
+ " AND mo.mld_melding_key = " + mld_key
|
||||
: " AND di.ins_deel_key = " + ins_key)
|
||||
+ " AND di.ins_srtcontrole_periode > 0" // Als de periode 0 is dan de inspecties die gaan komen niet meer tonen.
|
||||
+ " AND di.ins_scenario_key = 1"
|
||||
+ " AND idsc.ins_scenario_key = 1"
|
||||
|
||||
@@ -17,11 +17,22 @@ if (mode != "save" && mode != "delete" && mode != "api2")
|
||||
<%
|
||||
}
|
||||
|
||||
var ins_srtcontrole_key = getQParamInt("id", -1);
|
||||
var sql = "SELECT cdp.ctr_disc_params_ismjob"
|
||||
+ " FROM ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " WHERE isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND isc.ins_srtcontrole_key = " + ins_srtcontrole_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
var ismjob = false;
|
||||
if (!oRs.eof)
|
||||
var ismjob = oRs("ctr_disc_params_ismjob").Value == 1;
|
||||
oRs.Close();
|
||||
|
||||
var this_model = new model_ins_srtcontrole();
|
||||
|
||||
function canChangeCycle(srtcontrole_arr)
|
||||
{ // Kan ik de cyclus (eenheid en/of periode) aanpassen?
|
||||
var ins_srtcontrole_key = getQParamInt("id", -1);
|
||||
// De eenheid en periode van de taak (ins_srtcontrole) kunnen niet aangepast worden als:
|
||||
// 1) er geen xcp record is bij de taak van een object,
|
||||
// 2) er een xcp record is bij de taak van een object waarbij de periode niet is aangepast,
|
||||
@@ -50,7 +61,6 @@ if (mode != "save")
|
||||
{
|
||||
this_model.hook_pre_edit = function (obj, fld)
|
||||
{
|
||||
var ins_srtcontrole_key = getQParamInt("id", -1);
|
||||
if (!canChangeCycle([ins_srtcontrole_key]))
|
||||
{
|
||||
this_model.fields.period.readonly = true;
|
||||
|
||||
@@ -172,7 +172,7 @@ user.anything_todo_or_abort(((hasReadCTRUSE || hasReadCTRBOF) && scen_key == 1)
|
||||
|
||||
function onChangeGroupBy()
|
||||
{
|
||||
if ($("#groupby").val() == 7 || $("#groupby").val() == 8)
|
||||
if ($("#groupby").val() == 7 || $("#groupby").val() == 9)
|
||||
{
|
||||
$("#fitness_score").show();
|
||||
$("#fitness_score_neg").show();
|
||||
@@ -565,16 +565,6 @@ user.anything_todo_or_abort(((hasReadCTRUSE || hasReadCTRBOF) && scen_key == 1)
|
||||
whenEmpty: L("lcl_search_generic") // want filter
|
||||
});
|
||||
|
||||
RWCHECKBOXTR("incbtw", "fldincbtw", L("lcl_mjb_inclusiefbtw"), incbtw, { html: " value='1' "});
|
||||
sql = "SELECT 1, " + safe.qL("lcl_district") + ", 1 FROM DUAL"
|
||||
+ " UNION SELECT 2, " + safe.qL("lcl_location") + ", 2 FROM DUAL"
|
||||
+ " UNION SELECT 3, " + safe.qL("lcl_bld_terra") + ", 3 FROM DUAL"
|
||||
+ " UNION SELECT 4, " + safe.qL("lcl_discipline") + ", 4 FROM DUAL"
|
||||
+ " UNION SELECT 5, " + safe.qL("lcl_obj_group") + ", 5 FROM DUAL"
|
||||
+ " UNION SELECT 6, " + safe.qL("lcl_obj_sort") + ", 6 FROM DUAL"
|
||||
+ " UNION SELECT 7, " + safe.qL("lcl_ins_object") + ", 7 FROM DUAL"
|
||||
+ " UNION SELECT 8, " + safe.qL("lcl_ins_controle_srt") + ", 8 FROM DUAL";
|
||||
|
||||
if (mode == 1)
|
||||
{ // periode alleen van belang bij plannen (en/of verleden?)
|
||||
var jaar = new Date().getFullYear();
|
||||
@@ -605,6 +595,20 @@ user.anything_todo_or_abort(((hasReadCTRUSE || hasReadCTRBOF) && scen_key == 1)
|
||||
label: L("lcl_mjb_fromyear")
|
||||
});
|
||||
}
|
||||
|
||||
RWCHECKBOXTR("incbtw", "fldincbtw", L("lcl_mjb_inclusiefbtw"), incbtw, { html: " value='1' "});
|
||||
sql = "SELECT 1, " + safe.qL("lcl_district") + ", 1 FROM DUAL"
|
||||
+ " UNION SELECT 2, " + safe.qL("lcl_location") + ", 2 FROM DUAL"
|
||||
+ " UNION SELECT 3, " + safe.qL("lcl_bld_terra") + ", 3 FROM DUAL"
|
||||
+ " UNION SELECT 4, " + safe.qL("lcl_discipline") + ", 4 FROM DUAL"
|
||||
+ " UNION SELECT 5, " + safe.qL("lcl_obj_group") + ", 5 FROM DUAL"
|
||||
+ " UNION SELECT 6, " + safe.qL("lcl_obj_sort") + ", 6 FROM DUAL"
|
||||
+ " UNION SELECT 7, " + safe.qL("lcl_ins_object") + ", 7 FROM DUAL"
|
||||
+ (mode == 2
|
||||
? " UNION SELECT 8, " + safe.qL("lcl_mjb_melding") + ", 8 FROM DUAL"
|
||||
: "")
|
||||
+ " UNION SELECT 9, " + safe.qL("lcl_ins_controle_srt") + ", 9 FROM DUAL";
|
||||
|
||||
FCLTselector("groupby",
|
||||
sql,
|
||||
{ initKey: groupby,
|
||||
|
||||
@@ -81,7 +81,7 @@ var mjb_freeze_year = S("mjb_freeze_year");
|
||||
var mjb_show_years = S("mjb_show_years");
|
||||
|
||||
var groupby = getQParamInt("groupby"); // kan obv filtering nog wijzigen verderop
|
||||
var fulldetails = (groupby == 8); // Geen aggregate, dan kun je van alles manipuleren
|
||||
var fulldetails = (groupby == 9); // Geen aggregate, dan kun je van alles manipuleren
|
||||
var fromyear = getQParamInt("fromyear", new Date().getFullYear());
|
||||
var toyear = getQParamInt("toyear", new Date().getFullYear());
|
||||
|
||||
@@ -590,7 +590,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
}
|
||||
|
||||
function fnDeel(oRs)
|
||||
{ // Alleen voor groupby Element(7) en Taak(8)
|
||||
{ // Alleen voor groupby Element(7) en Taak(9)
|
||||
if (outputmode != 0)
|
||||
return safe.html(oRs("ins_deel_omschrijving").Value);
|
||||
if (hasReadINSMAN)
|
||||
@@ -620,7 +620,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
}
|
||||
|
||||
function fnMelding(oRs)
|
||||
{ // Alleen voor groupby Taak(8) en mode Uitvoering(3).
|
||||
{ // Alleen voor groupby Taak(9) en mode Uitvoering(3).
|
||||
if (outputmode != 0)
|
||||
return safe.html(oRs("melding").Value);
|
||||
var melding_omschr = safe.html(oRs("prefix").Value) + safe.html(oRs("melding").Value);
|
||||
@@ -812,14 +812,14 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
|
||||
function fncolScore1Class(oRs)
|
||||
{ // Conditiescore.
|
||||
if (groupby >= 7 && ins_score_enabled && oRs("ins_deel_mjb_score1").Value != null)
|
||||
if ((groupby == 7 || groupby == 9) && ins_score_enabled && oRs("ins_deel_mjb_score1").Value != null)
|
||||
return safe.htmlattr("dcscore" + (oRs("ins_deel_mjb_score1").Value).toString().replace(".", "_"));
|
||||
|
||||
}
|
||||
|
||||
function fncolScore2Class(oRs)
|
||||
{ // Prioriteit.
|
||||
if (groupby >= 7 && ins_score_enabled && oRs("ins_deel_mjb_score2").Value != null)
|
||||
if ((groupby == 7 || groupby == 9) && ins_score_enabled && oRs("ins_deel_mjb_score2").Value != null)
|
||||
return safe.htmlattr("dpscore" + (oRs("ins_deel_mjb_score2").Value).toString().replace(".", "_"));
|
||||
|
||||
}
|
||||
@@ -947,7 +947,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
rst.addColumn(new Column({caption: L("lcl_alg_locatie_mjb_score1"), content: "alg_locatie_mjb_score1", datatype: "number", align: "center"}));
|
||||
if (groupby == 3 && ins_score_enabled)
|
||||
rst.addColumn(new Column({caption: L("lcl_alg_gebouw_mjb_score1"), content: "alg_gebouw_mjb_score1", datatype: "number", align: "center"}));
|
||||
if (groupby >= 7)
|
||||
if (groupby == 7 || groupby == 9)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("lcl_ins_object"), content: fnDeel, colName: "fnDeel"}));
|
||||
if (S("mjb_show_ruimte") == 1)
|
||||
@@ -963,7 +963,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
rst.addColumn(new Column({caption: L("ins_srtdeel_mjb_grensscore1"), content: "ins_srtdeel_mjb_grensscore1", datatype: "number", align: "center"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_ins_deel_mjb_score1"), content: "ins_deel_mjb_score1", datatype: "number", align: "center", columnClass: fncolScore1Class}));
|
||||
rst.addColumn(new Column({caption: L("lcl_ins_deel_mjb_score2"), content: "ins_deel_mjb_score2", datatype: "number", align: "center", columnClass: fncolScore2Class}));
|
||||
if (groupby == 8)
|
||||
if (groupby == 9)
|
||||
rst.addColumn(new Column({caption: L("lcl_ins_srtcontroledl_xcp_prio"), content: fnXcpPrio, colName: "fnXcpPrio", columnClass: fnfncolPrioClass, align: "center"}));
|
||||
}
|
||||
}
|
||||
@@ -986,7 +986,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
}
|
||||
rst.addColumn(new Column({caption: L("lcl_prs_kosten"), content: "kostenplaats"}));
|
||||
}
|
||||
if (groupby == 8 && excel)
|
||||
if (groupby == 9 && excel)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("lcl_mjb_scen_opm"), content: "ins_srtcontrole_opmerking"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_mjb_plan_opmerking"), content: "ins_deelsrtcontrole_plan_opm"}));
|
||||
@@ -1084,9 +1084,6 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
</script>
|
||||
<div id="legenda" style="display:none; line-height: 30px;">
|
||||
<table id="inslegenda">
|
||||
<tr class="mjbfreezed">
|
||||
<td title="<%= L("lcl_mjb_started") %>"><%= L("lcl_ins_controle_gestart") %></td>
|
||||
</tr>
|
||||
<tr class="mjbplanned">
|
||||
<td title="<%= L("lcl_mjb_moved") %>"><%= L("lcl_mjb_moved") %></td>
|
||||
</tr>
|
||||
|
||||
@@ -57,7 +57,7 @@ var mjb_start_year = S("mjb_start_year");
|
||||
var mjb_freeze_year = S("mjb_freeze_year");
|
||||
|
||||
var groupby = getQParamInt("groupby");
|
||||
var fulldetails = (groupby == 8); // Geen aggregate, dan kun je van alles manipuleren
|
||||
var fulldetails = (groupby == 9); // Geen aggregate, dan kun je van alles manipuleren
|
||||
var fromyear = getQParamInt("fromyear", new Date().getFullYear());
|
||||
|
||||
var deel = getQParam("deel", ""); // Identieficatie
|
||||
@@ -141,7 +141,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
if (fulldetails)
|
||||
var url = "appl/alg/alg_locatie.asp?key=" + loc_key;
|
||||
else
|
||||
var url = "appl/mjb/mjb_search.asp?autosearch=1&groupby=8<%=transitParam%>&locatie_key=" + loc_key;
|
||||
var url = "appl/mjb/mjb_search.asp?autosearch=1&groupby=9<%=transitParam%>&locatie_key=" + loc_key;
|
||||
FcltMgr.openDetail(url, $(deze).text());
|
||||
}
|
||||
|
||||
@@ -150,7 +150,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
if (fulldetails)
|
||||
var url = "appl/alg/alg_gebouw.asp?key=" + bld_key;
|
||||
else
|
||||
var url = "appl/mjb/mjb_search.asp?autosearch=1&groupby=8<%=transitParam%>&gebouw_key=" + bld_key;
|
||||
var url = "appl/mjb/mjb_search.asp?autosearch=1&groupby=9<%=transitParam%>&gebouw_key=" + bld_key;
|
||||
FcltMgr.openDetail(url, $(deze).text());
|
||||
}
|
||||
|
||||
@@ -191,7 +191,13 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
+ " , alg_locatie l"
|
||||
+ " , alg_gebouw g"
|
||||
+ " , alg_verdieping v"
|
||||
+ " , alg_ruimte r";
|
||||
+ " , alg_ruimte r"
|
||||
+ " , mld_melding_object mo"
|
||||
+ " , ( SELECT mo1.mld_melding_key"
|
||||
+ " , COUNT(mo1.ins_deelsrtcontrole_key) aantal_taken"
|
||||
+ " FROM mld_melding_object mo1"
|
||||
+ " WHERE mo1.ins_deelsrtcontrole_key IS NOT NULL"
|
||||
+ " GROUP BY mo1.mld_melding_key) moc";
|
||||
|
||||
var sql_where = " WHERE dsc.ins_deel_key = xcp.ins_deel_key"
|
||||
+ " AND dsc.ins_srtcontrole_key = xcp.ins_srtcontrole_key"
|
||||
@@ -205,6 +211,9 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
+ " AND v.alg_gebouw_key = g.alg_gebouw_key"
|
||||
+ " AND g.alg_locatie_key = l.alg_locatie_key"
|
||||
+ " AND d.alg_district_key = l.alg_district_key"
|
||||
+ " AND mo.ins_deelsrtcontrole_key(+) = dsc.ins_deelsrtcontrole_key"
|
||||
+ " AND mo.ins_deel_key(+) = dl.ins_deel_key"
|
||||
+ " AND mo.mld_melding_key = moc.mld_melding_key(+)"
|
||||
+ " AND xcp.ins_srtcontrole_periode > 0"
|
||||
+ " AND xcp.ins_scenario_key = 1"
|
||||
+ " AND xcp.ctr_ismjob = 1"
|
||||
@@ -307,8 +316,11 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
break;
|
||||
case 6: keyColumn = "isd.ins_srtdeel_key";
|
||||
break;
|
||||
case 7:
|
||||
case 8: keyColumn = "dl.ins_deel_key";
|
||||
case 7: keyColumn = "dl.ins_deel_key";
|
||||
break;
|
||||
case 8: keyColumn = "mo.mld_melding_key";
|
||||
break;
|
||||
case 9: keyColumn = "dl.ins_deel_key";
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -340,17 +352,30 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
// dan is het bedrag van mld_opdr_kosten in principe al met BTW en zou mld_opdr_kosten_btw (nieuw)
|
||||
// het btw-deel daarvan voorstellen. Dan hoef je dat er dus niet meer bij op te tellen. Nu kijken we
|
||||
// hier nog helemaal niet naar de kostensoort, en de precieze werken is tbd. Te zijner tijd.
|
||||
var osql = "SELECT SUM(mld_opdr_kosten)" + (incbtw ? "+SUM(mld_opdr_kosten_btw)" : "")
|
||||
+ " FROM mld_opdr o, mld_melding m"
|
||||
+ " WHERE m.mld_melding_key = o.mld_melding_key"
|
||||
var osql = "SELECT CASE"
|
||||
+ " WHEN moc.aantal_taken IS NULL"
|
||||
+ " THEN 0"
|
||||
+ " ELSE (SUM(mld_opdr_kosten)" + (incbtw? " + SUM(mld_opdr_kosten_btw)" : "") + ") / moc.aantal_taken"
|
||||
+ " END"
|
||||
+ " FROM mld_opdr o"
|
||||
+ " WHERE o.mld_melding_key = mo.mld_melding_key"
|
||||
+ " AND o.mld_statusopdr_key NOT IN (1, 2, 3, 4, 10)"
|
||||
+ " AND o.mld_statusopdr_key IN "+ (fase == 1 ? "(7,9)" : "(5,6,8)")
|
||||
+ " AND m.mld_melding_kto_type = 'T'"
|
||||
+ " AND m.mld_melding_kto_key = dsc.ins_deelsrtcontrole_key";
|
||||
return "("+osql+")";
|
||||
+ " AND mo.ins_deelsrtcontrole_key = dsc.ins_deelsrtcontrole_key"
|
||||
+ " GROUP BY moc.aantal_taken";
|
||||
return "(" + osql + ")";
|
||||
}
|
||||
|
||||
var sql_cost = "SELECT d.alg_district_key"
|
||||
var sql_cost = "SELECT (SELECT sd.ins_srtdiscipline_prefix"
|
||||
+ " FROM ins_srtdiscipline sd"
|
||||
+ " , mld_discipline md"
|
||||
+ " , mld_stdmelding std"
|
||||
+ " , mld_melding m"
|
||||
+ " WHERE m.mld_melding_key = mo.mld_melding_key"
|
||||
+ " AND std.mld_stdmelding_key = m.mld_stdmelding_key"
|
||||
+ " AND md.ins_discipline_key = std.mld_ins_discipline_key"
|
||||
+ " AND sd.ins_srtdiscipline_key = md.ins_srtdiscipline_key) || mo.mld_melding_key melding"
|
||||
+ " , d.alg_district_key"
|
||||
+ " , d.alg_district_omschrijving"
|
||||
+ " , l.alg_locatie_omschrijving"
|
||||
+ " , l.alg_locatie_key"
|
||||
@@ -407,14 +432,16 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
if (!fulldetails)
|
||||
{
|
||||
var fields = [];
|
||||
if (groupby == 1 || groupby == 2 || groupby == 3 || moredetail)
|
||||
if (groupby == 8)
|
||||
fields.push("melding");
|
||||
if (groupby == 1 || groupby == 2 || groupby == 3 || groupby == 8 || moredetail)
|
||||
{
|
||||
fields.push("alg_district_omschrijving");
|
||||
if (groupby == 2 || groupby == 3 || moredetail)
|
||||
if (groupby == 2 || groupby == 3 || groupby == 8 || moredetail)
|
||||
{
|
||||
fields.push("alg_locatie_key");
|
||||
fields.push("alg_locatie_omschrijving");
|
||||
if (groupby == 3 || moredetail)
|
||||
if (groupby == 3 || groupby == 8 || moredetail)
|
||||
{
|
||||
fields.push("alg_gebouw_key");
|
||||
fields.push("alg_gebouw_naam"); // en code?
|
||||
@@ -427,12 +454,11 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
fields.push("ins_srtgroep_omschrijving");
|
||||
if (groupby == 6 || groupby == 7 || moredetail)
|
||||
fields.push("ins_srtdeel_omschrijving");
|
||||
if (groupby == 7)
|
||||
fields.push("ins_deel_omschrijving");
|
||||
if (groupby >= 7) // bij omschrijving hoort ook aantal met eenheid.
|
||||
if (groupby == 7) // bij omschrijving hoort ook aantal met eenheid.
|
||||
{
|
||||
fields.push("ins_deel_aantal");
|
||||
fields.push("ins_srtdeel_eenheid");
|
||||
fields.push("ins_deel_omschrijving");
|
||||
}
|
||||
|
||||
var sql_cost = "SELECT " + fields.join(", ")
|
||||
@@ -473,6 +499,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
+ " , ins_srtcontroledl_xcp_key"
|
||||
+ " , freezedatejaar"
|
||||
+ " , ins_deelsrtcontrole_freezecost"
|
||||
+ " , melding"
|
||||
+ (S("mjb_operation_external") == 0 // Realisatie binnen de administratie van Facilitor. Realisatie kolommen tonen.
|
||||
? " , begrootbedrag"
|
||||
+ " , besteedbedrag"
|
||||
@@ -501,7 +528,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
}
|
||||
}
|
||||
|
||||
sql += " ORDER BY 1";
|
||||
sql += " ORDER BY " + (groupby == 8? "keyColumn" : "1");
|
||||
|
||||
for (var i = 2; i <= groupby; i++)
|
||||
{
|
||||
@@ -572,7 +599,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
}
|
||||
|
||||
function fnDeel(oRs)
|
||||
{ // Alleen voor groupby Element(7) en Taak(8)
|
||||
{ // Alleen voor groupby Element(7) en Taak(9)
|
||||
if (hasReadINSMAN)
|
||||
{
|
||||
return "<span class='details' title='{2}' onclick='naardeel({0}, this)'>{1}</span>".format(oRs("keyColumn").Value, safe.html(oRs("ins_deel_omschrijving").Value), (oRs("ins_deel_opmerking").Value == null ? safe.htmlattr(L("lcl_mld_deel_details")) : safe.htmlattr(oRs("ins_deel_opmerking").Value)));
|
||||
@@ -699,23 +726,25 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
buttons: buttons
|
||||
});
|
||||
|
||||
if (groupby == 1 || groupby == 2 || groupby == 3 || moredetail == 2)
|
||||
if (groupby == 8)
|
||||
rst.addColumn(new Column({caption: L("lcl_mjb_melding"), content: "melding"}));
|
||||
if (groupby == 1 || groupby == 2 || groupby == 3 || groupby == 8 || moredetail == 2)
|
||||
rst.addColumn(new Column({caption: L("lcl_district"), content: "alg_district_omschrijving"/*, purpose: (dist_key > -1 ? PRINTING_ONLY : PRINT_AND_VIEW)*/}));
|
||||
if (groupby == 2 || groupby == 3 || moredetail == 2)
|
||||
if (groupby == 2 || groupby == 3 || groupby == 8 || moredetail == 2)
|
||||
rst.addColumn(new Column({caption: L("lcl_location"), content: fnLocatie }));
|
||||
if (fulldetails || groupby == 3 || moredetail == 2)
|
||||
if (fulldetails || groupby == 3 || groupby == 8 || moredetail == 2)
|
||||
rst.addColumn(new Column({caption: L("lcl_building"), content: fnGebouw }));
|
||||
if (!fulldetails || moredetail == 1)
|
||||
if (groupby < 8 || moredetail == 1)
|
||||
{
|
||||
if (groupby >= 4 || moredetail == 1) rst.addColumn(new Column({caption: L("lcl_discipline"), content: "ins_discipline_omschrijving"}));
|
||||
if (groupby >= 5 || moredetail == 1) rst.addColumn(new Column({caption: L("lcl_obj_group"), content: "ins_srtgroep_omschrijving"}));
|
||||
if (groupby >= 6 || moredetail == 1) rst.addColumn(new Column({caption: L("lcl_obj_sort"), content: "ins_srtdeel_omschrijving"}));
|
||||
}
|
||||
if (groupby >= 7)
|
||||
if (groupby == 7 || groupby == 9)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("lcl_ins_object"), content: fnDeel}));
|
||||
rst.addColumn(new Column({caption: L("lcl_amount"), content: "ins_deel_aantal", datatype: "float"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_obj_unit"), content: "ins_srtdeel_eenheid"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_ins_object"), content: fnDeel}));
|
||||
rst.addColumn(new Column({caption: L("lcl_amount"), content: "ins_deel_aantal", datatype: "float"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_obj_unit"), content: "ins_srtdeel_eenheid"}));
|
||||
}
|
||||
if (fulldetails)
|
||||
{
|
||||
@@ -723,6 +752,7 @@ var transitParam = buildTransitParam(["urole", "mode", "deel", "groep", "categor
|
||||
// PF: deze status wordt pas zinvol wanneer er meerdere statussen kunnen zijn hier
|
||||
// dus wanneer er een statusfilter oid komt waarmee je ook nog naar de historie kunt, ooit.
|
||||
//rst.addColumn(new Column({caption: L("lcl_ins_status"), content: fnStatus}));
|
||||
rst.addColumn(new Column({caption: L("lcl_mjb_melding"), content: "melding"}));
|
||||
}
|
||||
for (var j = 0; j < jaren.length; j++)
|
||||
{
|
||||
|
||||
@@ -1994,6 +1994,9 @@ mld = {
|
||||
+ " WHERE o4.mld_typeopdr_key = mto.mld_typeopdr_key"
|
||||
+ " AND mto.mld_typeopdr_isofferte = 0"
|
||||
+ " GROUP BY o4.mld_melding_key) opdracht"
|
||||
: "")
|
||||
+ (deelsrtcont_key
|
||||
? ", mld_melding_object mo"
|
||||
: "");
|
||||
|
||||
if (ingevoerd)
|
||||
@@ -2164,7 +2167,8 @@ mld = {
|
||||
|
||||
if (deelsrtcont_key)
|
||||
{ // Alle meldingen die gekoppeld zijn aan de periodieke inspectie.
|
||||
sqln += " AND m.mld_melding_kto_key = " + deelsrtcont_key + " AND m.mld_melding_kto_type = 'T'";
|
||||
sqln += " AND m.mld_melding_key = mo.mld_melding_key(+)"
|
||||
+ " AND mo.ins_deelsrtcontrole_key = " + deelsrtcont_key;
|
||||
}
|
||||
|
||||
if (no_old_closed_calls)
|
||||
@@ -3053,14 +3057,16 @@ mld = {
|
||||
oRsR.Close();
|
||||
}
|
||||
|
||||
sql = "SELECT ins_deel_key FROM mld_v_aanwezigmelding_object"
|
||||
sql = "SELECT ins_deel_key"
|
||||
+ " , ins_deelsrtcontrole_key"
|
||||
+ " FROM mld_v_aanwezigmelding_object"
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
oRs = Oracle.Execute(sql);
|
||||
|
||||
result.room_obj_arr = new Array;
|
||||
while (!oRs.eof)
|
||||
{
|
||||
result.room_obj_arr.push(oRs("ins_deel_key").Value);
|
||||
result.room_obj_arr.push({ins_key: oRs("ins_deel_key").Value, deelsrtcont_key: oRs("ins_deelsrtcontrole_key").Value});
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.close();
|
||||
@@ -6656,8 +6662,10 @@ mld = {
|
||||
//+ " UNION"
|
||||
+ " SELECT 'T'" // Taken [T].
|
||||
+ ", " + safe.quoted_sql(L("lcl_mld_taak"))
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_kto_type = 'T'"
|
||||
+ " FROM mld_melding m"
|
||||
+ " , mld_melding_object mo"
|
||||
+ " WHERE m.mld_melding_key = mo.mld_melding_key"
|
||||
+ " AND mo.ins_deelsrtcontrole_key IS NOT NULL"
|
||||
+ " ORDER BY 2";
|
||||
return refsql;
|
||||
},
|
||||
|
||||
@@ -144,40 +144,42 @@ for (var i = 0; i < ingesloten.length; i++)
|
||||
|
||||
if (i == 0) lcl.set_dialect(mld_melding.srtdisc_key, "MLD_SRTDISCIPLINE_KEY"); // Neem voor informatie de eerste melding.
|
||||
|
||||
if (mld_melding.meldbron_key == 10 && mld_melding.kto_type == 'T')
|
||||
var sql = "SELECT dsc.ins_deel_key"
|
||||
+ " , dsc.ins_srtcontrole_key"
|
||||
+ " , cdp.ctr_disc_params_controle_type"
|
||||
+ " , dsc.ins_deelsrtcontrole_freezedate"
|
||||
+ " , mo.ins_deelsrtcontrole_key"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " , ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " , mld_melding_object mo"
|
||||
+ " WHERE dsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND mo.ins_deelsrtcontrole_key = dsc.ins_deelsrtcontrole_key"
|
||||
+ " AND mo.mld_melding_key = " + ingesloten[i];
|
||||
var oRs = Oracle.Execute(sql);
|
||||
while (!oRs.eof)
|
||||
{
|
||||
var sql = "SELECT dsc.ins_deel_key"
|
||||
+ " , dsc.ins_srtcontrole_key"
|
||||
+ " , ctr_disc_params_controle_type"
|
||||
+ " , dsc.ins_deelsrtcontrole_freezedate"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " , ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " WHERE dsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND dsc.ins_deelsrtcontrole_key = " + mld_melding.kto_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
// De controle moet aanwezig zijn. Maar een inspectie kan ook verwijderd zijn!
|
||||
var this_ins = ins.func_enabled_deel(oRs("ins_deel_key").Value,
|
||||
{srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: oRs("ins_deelsrtcontrole_key").Value,
|
||||
scen_key: 1
|
||||
});
|
||||
if (this_ins.canInspFinishMjb)
|
||||
{
|
||||
// De controle moet aanwezig zijn. Maar een inspectie kan ook verwijderd zijn!
|
||||
var this_ins = ins.func_enabled_deel(oRs("ins_deel_key").Value,
|
||||
{srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: mld_melding.kto_key,
|
||||
scen_key: 1
|
||||
});
|
||||
if (this_ins.canInspFinishMjb)
|
||||
{
|
||||
canCloseCtr.push({ ins_key: oRs("ins_deel_key").Value,
|
||||
srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: mld_melding.kto_key,
|
||||
controlemode: oRs("ctr_disc_params_controle_type").Value,
|
||||
freezedateyear: new Date(oRs("ins_deelsrtcontrole_freezedate").Value).getFullYear()
|
||||
});
|
||||
srtContKeyArray.push(oRs("ins_srtcontrole_key").Value);
|
||||
controleModeArray[oRs("ctr_disc_params_controle_type").Value - 1] = oRs("ctr_disc_params_controle_type").Value; // Controlemode 2 op de 2de plek van de Array invullen [-1, 2, -1].
|
||||
}
|
||||
canCloseCtr.push({ ins_key: oRs("ins_deel_key").Value,
|
||||
srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: oRs("ins_deelsrtcontrole_key").Value,
|
||||
controlemode: oRs("ctr_disc_params_controle_type").Value,
|
||||
freezedateyear: new Date(oRs("ins_deelsrtcontrole_freezedate").Value).getFullYear()
|
||||
});
|
||||
srtContKeyArray.push(oRs("ins_srtcontrole_key").Value);
|
||||
controleModeArray[oRs("ctr_disc_params_controle_type").Value - 1] = oRs("ctr_disc_params_controle_type").Value; // Controlemode 2 op de 2de plek van de Array invullen [-1, 2, -1].
|
||||
}
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
// De -1 waarden in de controlemode Array verwijderen
|
||||
|
||||
@@ -28,7 +28,11 @@ if (mld_key > 0)
|
||||
var verdiepingkey = mld_info.flr_key;
|
||||
var gebouwkey = mld_info.bld_key;
|
||||
var locatiekey = mld_info.loc_key;
|
||||
var ins_arr = mld_info.room_obj_arr;
|
||||
var ins_arr = [];
|
||||
for (var i = 0; i < mld_info.room_obj_arr.length; i++)
|
||||
{
|
||||
ins_arr.push(mld_info.room_obj_arr[i].ins_key);
|
||||
}
|
||||
var isNew = false;
|
||||
}
|
||||
else
|
||||
|
||||
@@ -853,21 +853,30 @@ SUBFRAME_START();
|
||||
|
||||
/* Global variables (spanning multiple BLOCK's) */
|
||||
var valid_kto_key = mld_melding.kto_key > 0;
|
||||
var freezecost = null;
|
||||
if (mld_melding.meldbron_key != S("mld_meldbron_key") &&
|
||||
mld_melding.meldbron_key == 10 && mld_melding.kto_type == 'T')
|
||||
var freezecost = 0;
|
||||
var sql_obj = "SELECT ins_deelsrtcontrole_key"
|
||||
+ " FROM mld_melding_object"
|
||||
+ " WHERE mld_melding_key = " + mld_key
|
||||
+ " AND ins_deelsrtcontrole_key IS NOT NULL";
|
||||
var oRs_obj = Oracle.Execute(sql_obj);
|
||||
var showfreezecost = false;
|
||||
while (mld_melding.meldbron_key != S("mld_meldbron_key") &&
|
||||
!oRs_obj.eof)
|
||||
{
|
||||
var sql = "SELECT dsc.ins_deelsrtcontrole_freezecost"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " WHERE dsc.ins_deelsrtcontrole_key = " + mld_melding.kto_key;
|
||||
+ " WHERE dsc.ins_deelsrtcontrole_key = " + oRs_obj("ins_deelsrtcontrole_key").Value;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof) {
|
||||
freezecost = oRs("ins_deelsrtcontrole_freezecost").Value;
|
||||
freezecost = freezecost + parseFloat(oRs("ins_deelsrtcontrole_freezecost").Value, 10);
|
||||
showfreezecost = true;
|
||||
} else {
|
||||
valid_kto_key = false;
|
||||
}
|
||||
oRs.close();
|
||||
oRs.Close();
|
||||
oRs_obj.MoveNext();
|
||||
}
|
||||
oRs_obj.Close();
|
||||
|
||||
var personEditable = (mld_key > 0 && this_mld.canPersChange) || (mld_key < 0 && !frontend);
|
||||
var personForExist = (S("mld_allow_for_others") == 1 || S("mld_allow_for_others") == 2) &&
|
||||
@@ -1433,7 +1442,7 @@ SUBFRAME_START();
|
||||
|
||||
ROFIELDTR("fld", L("lcl_mld_meldbron"), oRs("mld_meldbron_omschrijving").Value);
|
||||
oRs.close();
|
||||
if (mld_melding.meldbron_key == 10 && mld_melding.kto_type == 'T') {
|
||||
if (showfreezecost) {
|
||||
ROFIELDTR("fld", L("lcl_mld_frozen_costs") + " " + L("lcl_valutasign"), freezecost, { suppressEmpty: true, datatype: "currency" });
|
||||
}
|
||||
}
|
||||
@@ -1574,7 +1583,7 @@ SUBFRAME_START();
|
||||
canPlaatsChange: copy_or_cont && !multi? this_mld_copy.canPlaatsChange : this_mld.canPlaatsChange,
|
||||
canClose: copy_or_cont && !multi? this_mld_copy.canClose : this_mld.canClose,
|
||||
hasMultiObj: thereAreMultipleObjects,
|
||||
init_obj_key: (mld_melding.room_obj_arr && mld_melding.room_obj_arr.length == 1 ? mld_melding.room_obj_arr[0] : -1),
|
||||
init_obj_key: (mld_melding.room_obj_arr && mld_melding.room_obj_arr.length == 1? mld_melding.room_obj_arr[0].ins_key : -1),
|
||||
srtinst_verplichtstatus: mld_melding.srtinst_verplichtstatus,
|
||||
aantalobj: 0,
|
||||
thereAreObjects: thereAreObjects,
|
||||
|
||||
@@ -1221,7 +1221,7 @@ if (mld_opdr.kp_key == -1)
|
||||
disableobjects: disableobjects,
|
||||
aantalobj: aantalobj,
|
||||
hasMultiObj: thereAreMultipleObjects,
|
||||
init_obj_key: (mld_melding.room_obj_arr && mld_melding.room_obj_arr.length == 1 ? mld_melding.room_obj_arr[0] : -1),
|
||||
init_obj_key: (mld_melding.room_obj_arr && mld_melding.room_obj_arr.length == 1? mld_melding.room_obj_arr[0].ins_key : -1),
|
||||
srtinst_verplichtstatus: mld_melding.srtinst_verplichtstatus,
|
||||
onclickobj: "mld_opdracht_object()"};
|
||||
|
||||
|
||||
@@ -485,10 +485,20 @@ if (mld_key == -1 || copy)
|
||||
}
|
||||
}
|
||||
|
||||
if (hasFOBOread || (!hasFOBOread && hasFEread && !S("mld_hide_fe_tracking")))
|
||||
// Als je geen mld rechten hebt dan hoef je iframe ook niet te tonen.
|
||||
var authparamsCTRBOF = user.checkAutorisation("WEB_CTRBOF", true);
|
||||
var hasReadCTRBOF = authparamsCTRBOF && authparamsCTRBOF.ALGreadlevel < 9 && authparamsCTRBOF.PRSreadlevel < 9;
|
||||
var sqlt = "SELECT COUNT(mo.mld_melding_object_key) aantal"
|
||||
+ " FROM mld_melding_object mo"
|
||||
+ " WHERE mo.mld_melding_key = " + mld_key
|
||||
+ " AND mo.ins_deelsrtcontrole_key IS NOT NULL";
|
||||
var oRst = Oracle.Execute(sqlt);
|
||||
var has_taken = oRst("aantal").Value > 0;
|
||||
|
||||
if (hasReadCTRBOF && has_taken)
|
||||
{
|
||||
page = protectQS.create("../shared/status_info.asp?mld_key=" + mld_key + "&urole=" + (urole == "fe" && hasFOBOread ? "bo" : urole));
|
||||
IFRAMER("mldhistoryframe", page, { icon: "fa-list", title: L("lcl_tracking")} );
|
||||
page = "../INS/ins_inspect_list.asp?mld_key=" + mld_key + "&urole=bo";
|
||||
IFRAMER("mldctrframe", page, { icon: "fa-list", title: L("ins_mjb_task")} );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -70,46 +70,41 @@ for (var i = 0; i < ingesloten.length; i++)
|
||||
}
|
||||
|
||||
var canCloseCtr = 0;
|
||||
var srtContKeyArray = [];
|
||||
var controleModeArray = [-1, -1, -1]; // De drie controlemoden zijn niet aanwezig (-1);
|
||||
for (var i = 0; i < ingesloten.length; i++)
|
||||
{
|
||||
var mld_melding = mld.mld_melding_info(ingesloten[i].mld_key);
|
||||
var stdm_info = mld.mld_stdmeldinginfo(mld_melding.stdm_key);
|
||||
|
||||
ingesloten[i].canInspFinishMjb = false;
|
||||
if (mld_melding.kto_key > 0 && mld_melding.kto_type == 'T')
|
||||
var sql = "SELECT dsc.ins_deel_key"
|
||||
+ " , dsc.ins_srtcontrole_key"
|
||||
+ " , cdp.ctr_disc_params_controle_type"
|
||||
+ " , mo.ins_deelsrtcontrole_key"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " , ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " , mld_melding_object mo"
|
||||
+ " WHERE dsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND mo.ins_deelsrtcontrole_key = dsc.ins_deelsrtcontrole_key"
|
||||
+ " AND mo.mld_melding_key = " + ingesloten[i].mld_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
while (!oRs.eof)
|
||||
{
|
||||
var sql = "SELECT dsc.ins_deel_key"
|
||||
+ " , dsc.ins_srtcontrole_key"
|
||||
+ " , ctr_disc_params_controle_type"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " , ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " WHERE dsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND dsc.ins_deelsrtcontrole_key = " + mld_melding.kto_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
// De controle moet aanwezig zijn. Maar een inspectie kan ook verwijderd zijn!
|
||||
var this_ins = ins.func_enabled_deel(oRs("ins_deel_key").Value,
|
||||
{srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: oRs("ins_deelsrtcontrole_key").Value,
|
||||
scen_key: 1
|
||||
});
|
||||
if (this_ins.canInspFinishMjb)
|
||||
{
|
||||
// De controle moet aanwezig zijn. Maar een inspectie kan ook verwijderd zijn!
|
||||
var this_ins = ins.func_enabled_deel(oRs("ins_deel_key").Value,
|
||||
{srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: mld_melding.kto_key,
|
||||
scen_key: 1
|
||||
});
|
||||
if (this_ins.canInspFinishMjb)
|
||||
{
|
||||
ingesloten[i].canInspFinishMjb = true;
|
||||
ingesloten[i].controlemode = oRs("ctr_disc_params_controle_type").Value;
|
||||
ingesloten[i].ins_key = oRs("ins_deel_key").Value;
|
||||
ingesloten[i].srtcont_key = oRs("ins_srtcontrole_key").Value;
|
||||
canCloseCtr++;
|
||||
srtContKeyArray.push(oRs("ins_srtcontrole_key").Value);
|
||||
controleModeArray[oRs("ctr_disc_params_controle_type").Value - 1] = oRs("ctr_disc_params_controle_type").Value; // Controlemode 2 op de 2de plek van de Array invullen [-1, 2, -1].
|
||||
}
|
||||
canCloseCtr++;
|
||||
controleModeArray[oRs("ctr_disc_params_controle_type").Value - 1] = oRs("ctr_disc_params_controle_type").Value; // Controlemode 2 op de 2de plek van de Array invullen [-1, 2, -1].
|
||||
}
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
// De -1 waarden in de controlemode Array verwijderen
|
||||
|
||||
@@ -126,111 +126,103 @@ for (var i = 0; i < mld_key_arr.length; i++)
|
||||
user.anything_todo_or_abort(!reqStatusEmptyMelding.length, reqStatusEmptyMelding.join("<br />"));
|
||||
user.anything_todo_or_abort(toberejected > 0); // We klagen niet over enkele wel en enkele niet
|
||||
|
||||
var mldKeyArray = "";
|
||||
for (var i = 0; i < ingesloten.length; i++)
|
||||
{
|
||||
mldKeyArray += (i > 0? "," : "") + ingesloten[i].mld_key;
|
||||
}
|
||||
var mld_melding = mld.mld_melding_info(ingesloten[i].mld_key);
|
||||
|
||||
var controleModeArray = [-1, -1, -1]; // De drie controlemoden zijn niet aanwezig (-1);
|
||||
for (var i = 0; i < ingesloten.length; i++)
|
||||
{
|
||||
var mld_melding = mld.mld_melding_info(ingesloten[i].mld_key);
|
||||
|
||||
ingesloten[i].canInspFinishMjb = false;
|
||||
if (mld_melding.kto_key > 0 && mld_melding.kto_type == 'T')
|
||||
ingesloten[i].ins_key_arr = [];
|
||||
ingesloten[i].srtcont_key_arr = [];
|
||||
ingesloten[i].controlemode_arr = [];
|
||||
var sql = "SELECT dsc.ins_deel_key"
|
||||
+ " , dsc.ins_srtcontrole_key"
|
||||
+ " , cdp.ctr_disc_params_controle_type"
|
||||
+ " , mo.ins_deelsrtcontrole_key"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " , ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " , mld_melding_object mo"
|
||||
+ " WHERE dsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND mo.ins_deelsrtcontrole_key = dsc.ins_deelsrtcontrole_key"
|
||||
+ " AND mo.mld_melding_key = " + ingesloten[i].mld_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
while (!oRs.eof)
|
||||
{
|
||||
// De controle moet aanwezig zijn. Maar een inspectie kan ook verwijderd zijn!
|
||||
var this_ins = ins.func_enabled_deel(oRs("ins_deel_key").Value,
|
||||
{srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: oRs("ins_deelsrtcontrole_key").Value,
|
||||
scen_key: 1
|
||||
});
|
||||
if (this_ins.canInspFinishMjb)
|
||||
{
|
||||
var sql = "SELECT dsc.ins_deel_key"
|
||||
+ " , dsc.ins_srtcontrole_key"
|
||||
+ " , ctr_disc_params_controle_type"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " , ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " WHERE dsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND dsc.ins_deelsrtcontrole_key = " + mld_melding.kto_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
{
|
||||
// De controle moet aanwezig zijn. Maar een inspectie kan ook verwijderd zijn!
|
||||
var this_ins = ins.func_enabled_deel( oRs("ins_deel_key").Value
|
||||
, { srtcont_key: oRs("ins_srtcontrole_key").Value
|
||||
, deelsrtcont_key: mld_melding.kto_key
|
||||
, scen_key: 1
|
||||
});
|
||||
if (this_ins.canInspFinishMjb)
|
||||
{
|
||||
ingesloten[i].canInspFinishMjb = true;
|
||||
ingesloten[i].controlemode = oRs("ctr_disc_params_controle_type").Value;
|
||||
ingesloten[i].ins_key = oRs("ins_deel_key").Value;
|
||||
ingesloten[i].srtcont_key = oRs("ins_srtcontrole_key").Value;
|
||||
controleModeArray[oRs("ctr_disc_params_controle_type").Value - 1] = oRs("ctr_disc_params_controle_type").Value; // Controlemode 2 op de 2de plek van de Array invullen [-1, 2, -1].
|
||||
}
|
||||
}
|
||||
ingesloten[i].ins_key_arr.push(oRs("ins_deel_key").Value);
|
||||
ingesloten[i].srtcont_key_arr.push(oRs("ins_srtcontrole_key").Value);
|
||||
ingesloten[i].controlemode_arr.push(oRs("ctr_disc_params_controle_type").Value);
|
||||
}
|
||||
}
|
||||
|
||||
// De -1 waarden in de controlemode Array verwijderen
|
||||
for (var i = 2; i >= 0; i--)
|
||||
{
|
||||
if (controleModeArray[i] == -1) controleModeArray.splice(i, 1);
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
var reject_arr = [];
|
||||
var notaccepted = 0;
|
||||
for (var i = 0; i < ingesloten.length; i++)
|
||||
{
|
||||
mld.nextworkflowstep(ingesloten[i].mld_key, 0); // 0 = rejected
|
||||
mld.nextworkflowstep(ingesloten[i].mld_key, 0); // 0 = rejected
|
||||
|
||||
sql = "SELECT mm.mld_melding_opmerking"
|
||||
+ " FROM mld_melding mm"
|
||||
+ " WHERE mld_melding_key = " + ingesloten[i].mld_key;
|
||||
oRs = Oracle.Execute(sql);
|
||||
var new_opm = (oRs("mld_melding_opmerking").value||""); // + "\n" + opmerk;
|
||||
new_opm = new_opm + ((new_opm + opmerk) != "" ? "\n" : "") + opmerk; // alleen een CR als er al iets staat EN er iets wordt toegevoegd.
|
||||
oRs.Close();
|
||||
sql = "SELECT mm.mld_melding_opmerking"
|
||||
+ " FROM mld_melding mm"
|
||||
+ " WHERE mld_melding_key = " + ingesloten[i].mld_key;
|
||||
oRs = Oracle.Execute(sql);
|
||||
var new_opm = (oRs("mld_melding_opmerking").value||""); // + "\n" + opmerk;
|
||||
new_opm = new_opm + ((new_opm + opmerk) != "" ? "\n" : "") + opmerk; // alleen een CR als er al iets staat EN er iets wordt toegevoegd.
|
||||
oRs.Close();
|
||||
|
||||
var fields = [ { dbs: "mld_melding_opmerking"
|
||||
, typ: "varchar"
|
||||
, val: new_opm
|
||||
, track: L("lcl_mld_inf_Opmerking")
|
||||
, len: 4000
|
||||
}
|
||||
];
|
||||
var fields = [ { dbs: "mld_melding_opmerking"
|
||||
, typ: "varchar"
|
||||
, val: new_opm
|
||||
, track: L("lcl_mld_inf_Opmerking")
|
||||
, len: 4000
|
||||
}
|
||||
];
|
||||
|
||||
var mldUpd = buildTrackingUpdate("mld_melding", " mld_melding_key = " + ingesloten[i].mld_key, fields);
|
||||
oRs = Oracle.Execute(mldUpd.sql);
|
||||
if (mldUpd.trackarray.length)
|
||||
mld.trackmeldingupdate(ingesloten[i].mld_key, L("lcl_mld_is_mldupd") + "\n" + mldUpd.trackarray.join("\n"));
|
||||
var mldUpd = buildTrackingUpdate("mld_melding", " mld_melding_key = " + ingesloten[i].mld_key, fields);
|
||||
oRs = Oracle.Execute(mldUpd.sql);
|
||||
if (mldUpd.trackarray.length)
|
||||
mld.trackmeldingupdate(ingesloten[i].mld_key, L("lcl_mld_is_mldupd") + "\n" + mldUpd.trackarray.join("\n"));
|
||||
|
||||
// Zetten van de status op afgewezen en afhandelen van de tracking.
|
||||
mld.setmeldingstatus(ingesloten[i].mld_key, 1); // afgewezen
|
||||
// Zetten van de status op afgewezen en afhandelen van de tracking.
|
||||
mld.setmeldingstatus(ingesloten[i].mld_key, 1); // afgewezen
|
||||
|
||||
// check (zat er al in)
|
||||
// TODO: Het afwijzen gaat niet altijd goed. Wat is de reden daartoe? Status wordt in enkele gevallen niet op 1 gezet door mld.setmeldingstatus?
|
||||
sql = "SELECT ''"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_key = " + ingesloten[i].mld_key
|
||||
+ " AND mld_melding_status = 1";
|
||||
oRs = Oracle.Execute(sql);
|
||||
if (oRs.eof)
|
||||
// check (zat er al in)
|
||||
// TODO: Het afwijzen gaat niet altijd goed. Wat is de reden daartoe? Status wordt in enkele gevallen niet op 1 gezet door mld.setmeldingstatus?
|
||||
sql = "SELECT ''"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_key = " + ingesloten[i].mld_key
|
||||
+ " AND mld_melding_status = 1";
|
||||
oRs = Oracle.Execute(sql);
|
||||
if (oRs.eof)
|
||||
{
|
||||
notaccepted++;
|
||||
}
|
||||
|
||||
var ctr_close = getFParam("ctr_close", "off") == "on";
|
||||
if (ctr_close)
|
||||
{
|
||||
for (var t = 0; t < ingesloten[i].ins_key_arr.length; t++)
|
||||
{
|
||||
notaccepted++;
|
||||
var reject_mld = { mld_key: ingesloten[i].mld_key};
|
||||
reject_mld.inspect = { savemode: "C"
|
||||
, ins_keys: ingesloten[i].ins_key_arr[t]
|
||||
, srtcont_key_arr: ingesloten[i].srtcont_key_arr[t]
|
||||
, finish: 1
|
||||
, deelsrtcontrole_datum: (new Date()).getTime()
|
||||
, sel_controlemode: getFParamInt("sel_controlemode" + ingesloten[i].controlemode_arr[t])
|
||||
};
|
||||
reject_arr.push(reject_mld);
|
||||
}
|
||||
|
||||
var reject_mld = { mld_key: ingesloten[i].mld_key};
|
||||
var ctr_close = getFParam("ctr_close", "off") == "on";
|
||||
if (ctr_close && ingesloten[i].canInspFinishMjb)
|
||||
{
|
||||
reject_mld.inspect = { savemode: "C"
|
||||
, ins_keys: ingesloten[i].ins_key
|
||||
, srtcont_key_arr: ingesloten[i].srtcont_key
|
||||
, finish: 1
|
||||
, deelsrtcontrole_datum: (new Date()).getTime()
|
||||
, sel_controlemode: getFParamInt("sel_controlemode" + ingesloten[i].controlemode)
|
||||
};
|
||||
}
|
||||
reject_arr.push(reject_mld);
|
||||
}
|
||||
}
|
||||
var warning = (notaccepted == ingesloten.length ? L("lcl_mld_reject_failed") : "");
|
||||
|
||||
|
||||
@@ -396,21 +396,30 @@ SUBFRAME_START();
|
||||
|
||||
/* Global variables (spanning multiple BLOCK's) */
|
||||
var valid_kto_key = true;
|
||||
var freezecost = null;
|
||||
if (mld_melding.meldbron_key != S("mld_meldbron_key") &&
|
||||
mld_melding.meldbron_key == 10 && mld_melding.kto_type == 'T')
|
||||
var freezecost = 0;
|
||||
var sql_obj = "SELECT ins_deelsrtcontrole_key"
|
||||
+ " FROM mld_melding_object"
|
||||
+ " WHERE mld_melding_key = " + mld_key
|
||||
+ " AND ins_deelsrtcontrole_key IS NOT NULL";
|
||||
var oRs_obj = Oracle.Execute(sql_obj);
|
||||
var showfreezecost = false;
|
||||
while (mld_melding.meldbron_key != S("mld_meldbron_key") &&
|
||||
!oRs_obj.eof)
|
||||
{
|
||||
var sql = "SELECT dsc.ins_deelsrtcontrole_freezecost"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " WHERE dsc.ins_deelsrtcontrole_key = " + mld_melding.kto_key;
|
||||
+ " WHERE dsc.ins_deelsrtcontrole_key = " + oRs_obj("ins_deelsrtcontrole_key").Value;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof) { // De controle moet aanwezig zijn.
|
||||
freezecost = oRs("ins_deelsrtcontrole_freezecost").Value;
|
||||
freezecost = freezecost + parseFloat(oRs("ins_deelsrtcontrole_freezecost").Value, 10);
|
||||
showfreezecost = true;
|
||||
} else {
|
||||
valid_kto_key = false;
|
||||
}
|
||||
oRs.close();
|
||||
oRs_obj.MoveNext();
|
||||
}
|
||||
oRs_obj.Close();
|
||||
|
||||
// Uitvoertijden naar dagen omrekenen zodat we ze onderling goed kunnen vergelijken.
|
||||
var mld_respijt = mld_melding.respijt_eenheid == "U"? mld_melding.respijt / 24 : mld_melding.respijt;
|
||||
@@ -587,7 +596,7 @@ SUBFRAME_START();
|
||||
|
||||
ROFIELDTR("fld", L("lcl_mld_meldbron"), oRs("mld_meldbron_omschrijving").value);
|
||||
oRs.close();
|
||||
if (mld_melding.meldbron_key == 10 && mld_melding.kto_type == 'T') {
|
||||
if (showfreezecost) {
|
||||
ROFIELDTR("fld", L("lcl_mld_frozen_costs") + " " + L("lcl_valutasign"), freezecost, { suppressEmpty: true, datatype: "currency" });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ if (ins_key > 0)
|
||||
var oRs = Oracle.Execute(sql);
|
||||
var alg_ruimte_key = oRs("ins_alg_ruimte_key").Value;
|
||||
|
||||
var vorige_insp_sql = insp.list_sql(ins_key, {past: true, present: false, future: false});
|
||||
var vorige_insp_sql = insp.list_sql(ins_key, -1, {past: true, present: false, future: false});
|
||||
var oRs_i = Oracle.Execute(vorige_insp_sql);
|
||||
var oAr = [];
|
||||
while (!oRs_i.eof)
|
||||
|
||||
@@ -285,44 +285,42 @@ if (mld_key > -1)
|
||||
// Als er meerder meldingen zijn waarvan een verplicht kenmerk niet is ingevuld, dan abort en melding.
|
||||
// Als er 1 melding is waarvan een verplicht kenmerk niet is ingevuld, dan wordt er verderop alleen een melding met twee buttons getoond.
|
||||
user.anything_todo_or_abort(mldRequireCnt < 2, reqStatusEmptyMelding.join("<br />"));
|
||||
// user.auth_required_or_abort(!(mld_key && futureOpdr), L("lcl_mld_einddatum_to_late_mld")); // Bij enkele melding met toekomstige opdrachten een aparte melding geven
|
||||
// user.anything_todo_or_abort(tobeclosed > 0); // We klagen niet over enkele wel en enkele niet
|
||||
|
||||
var canCloseCtr = [];
|
||||
var srtContKeyArray = [];
|
||||
var canCloseCtr = 0;
|
||||
for (var i = 0; i < ingesloten.length; i++)
|
||||
{
|
||||
if (i == 0) lcl.set_dialect(mld_info.srtdisc_key, "MLD_SRTDISCIPLINE_KEY"); // Neem voor informatie de eerste melding.
|
||||
|
||||
if (mld_info.meldbron_key == 10 && mld_info.kto_type == 'T')
|
||||
var sql = "SELECT dsc.ins_deel_key"
|
||||
+ " , dsc.ins_srtcontrole_key"
|
||||
+ " , cdp.ctr_disc_params_controle_type"
|
||||
+ " , mo.ins_deelsrtcontrole_key"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " , ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " , mld_melding_object mo"
|
||||
+ " WHERE dsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND mo.ins_deelsrtcontrole_key = dsc.ins_deelsrtcontrole_key"
|
||||
+ " AND mo.mld_melding_key = " + ingesloten[i].mld_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
while (!oRs.eof)
|
||||
{
|
||||
var sql = "SELECT dsc.ins_deel_key"
|
||||
+ " , dsc.ins_srtcontrole_key"
|
||||
+ " , ctr_disc_params_controle_type"
|
||||
+ " FROM ins_deelsrtcontrole dsc"
|
||||
+ " , ins_srtcontrole isc"
|
||||
+ " , ctr_disc_params cdp"
|
||||
+ " WHERE dsc.ins_srtcontrole_key = isc.ins_srtcontrole_key"
|
||||
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
|
||||
+ " AND dsc.ins_deelsrtcontrole_key = " + mld_info.kto_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
// De controle moet aanwezig zijn.
|
||||
// De controle moet aanwezig zijn. Maar een inspectie kan ook verwijderd zijn!
|
||||
var this_ins = ins.func_enabled_deel(oRs("ins_deel_key").Value,
|
||||
{srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: mld_info.kto_key,
|
||||
deelsrtcont_key: oRs("ins_deelsrtcontrole_key").Value,
|
||||
scen_key: 1
|
||||
});
|
||||
|
||||
if (this_ins.canInspFinishMjb)
|
||||
{
|
||||
canCloseCtr.push({ ins_key: oRs("ins_deel_key").Value,
|
||||
srtcont_key: oRs("ins_srtcontrole_key").Value,
|
||||
deelsrtcont_key: mld_info.kto_key,
|
||||
controlemode: oRs("ctr_disc_params_controle_type").Value
|
||||
});
|
||||
srtContKeyArray.push(oRs("ins_srtcontrole_key").Value);
|
||||
canCloseCtr++;
|
||||
controleModeArray[oRs("ctr_disc_params_controle_type").Value - 1] = oRs("ctr_disc_params_controle_type").Value; // Controlemode 2 op de 2de plek van de Array invullen [-1, 2, -1].
|
||||
}
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
// De -1 waarden in de controlemode Array verwijderen
|
||||
@@ -544,7 +542,6 @@ lcl.set_dialect(stdm_info.ins_srtdiscipline_key, "MLD_SRTDISCIPLINE_KEY");
|
||||
|
||||
function mld_print()
|
||||
{
|
||||
//window.location.href = "<%=rooturl%>/appl/mld/mld_opdr_xml.asp?mld_key=<%=mld_key%>";
|
||||
FcltMgr.openDetail("/appl/mld/mld_opdr_xml.asp?mld_key=<%=mld_key%>");
|
||||
return false;
|
||||
};
|
||||
@@ -1899,11 +1896,11 @@ if (mld_key > -1 && this_mld.canClose && action != "forward")
|
||||
</td>
|
||||
</tr>
|
||||
<% }
|
||||
if (canCloseCtr.length)
|
||||
if (canCloseCtr > 0)
|
||||
{ %>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<% CHB_FIELD("ctr_close", canCloseCtr.length + L("lcl_mld_ctr_close_all"), 0, { html: "onChange='ctrcloseToggler(this)'" }); %>
|
||||
<% CHB_FIELD("ctr_close", canCloseCtr + L("lcl_mld_ctr_close_all"), 0, { html: "onChange='ctrcloseToggler(this)'" }); %>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
@@ -29,7 +29,11 @@ if (mld_key > 0)
|
||||
var verdiepingkey = mld_info.flr_key;
|
||||
var gebouwkey = mld_info.bld_key;
|
||||
var locatiekey = mld_info.loc_key;
|
||||
var ins_arr = mld_info.room_obj_arr;
|
||||
var ins_arr = [];
|
||||
for (var i = 0; i < mld_info.room_obj_arr.length; i++)
|
||||
{
|
||||
ins_arr.push(mld_info.room_obj_arr[i].ins_key);
|
||||
}
|
||||
var isNew = false;
|
||||
}
|
||||
else
|
||||
|
||||
@@ -411,8 +411,8 @@ ResultsetTable.prototype.ProcessAsCSV = function _ProcessAsCSV()
|
||||
if (isCSV2XLSX) // dan maken een CSV bestand in de TEMP folder en leveren een JSON op
|
||||
{
|
||||
var fso = new ActiveXObject("Scripting.FileSystemObject")
|
||||
var tmpcsv = shared.tempFolder() + "/CSV_" + shared.random(16) +".csv"
|
||||
var uitvoerstream = fso.CreateTextFile(tmpcsv, true);
|
||||
var tmpcsv = "CSV_" + shared.random(16) +".csv"
|
||||
var uitvoerstream = fso.CreateTextFile(shared.tempFolder() + "/" + tmpcsv, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -943,11 +943,12 @@ function __rsProcessResultset(processParams) // processParams wordt blind aan al
|
||||
var def = (this.actions[i].isDefault? " isdefault='1'" : "")
|
||||
+ (this.actions[i].onlyMulti? " onlymulti='1'" : "")
|
||||
+ (this.actions[i].isDefault || this.actions[i].onlyMulti? " style='display:none'" : "");
|
||||
var tooltip_actions = this.actions[i].tooltip? " title='" + safe.htmlattr(this.actions[i].tooltip) + "'" : "";
|
||||
var disp = useHamburger != 0 ? " style='display: block;'" : "";
|
||||
if (this.actions[i].multiOnce)
|
||||
val = "<span class='ia2' " + def + " onclick='doAm(event, this, \"" + this.actions[i].action + "\")'" + disp + ">";
|
||||
val = "<span class='ia2' " + def + " onclick='doAm(event, this, \"" + this.actions[i].action + "\")'" + disp + tooltip_actions + ">";
|
||||
else
|
||||
val = "<span class='ia2' " + def + " onclick='doA(event, this, \"" + this.actions[i].action + "\")'" + disp + ">";
|
||||
val = "<span class='ia2' " + def + " onclick='doA(event, this, \"" + this.actions[i].action + "\")'" + disp + tooltip_actions + ">";
|
||||
actionsDiv += val + this.actions[i].caption + "</span>";
|
||||
}
|
||||
hasInlineActions = aantalInline > 0;
|
||||
|
||||
@@ -225,10 +225,11 @@ var status = {
|
||||
|
||||
case "INSCN1" : tekst = L("lcl_ins_is_inscn1") ; break;
|
||||
|
||||
case "INSCUP" : tekst = L("lcl_ins_controle_is_inscup") ; break;
|
||||
case "INSCBE" : tekst = L("lcl_ins_controle_is_inscbe") ; break;
|
||||
case "INSCTU" : tekst = L("lcl_ins_controle_is_insctu") ; break;
|
||||
case "INSCAF" : tekst = L("lcl_ins_controle_is_inscaf") ; break;
|
||||
case "INSCVE" : tekst = L("lcl_ins_controle_is_inscve") ; break;
|
||||
case "INSCUP" : tekst = L("lcl_ins_controle_is_inscup") ; break;
|
||||
|
||||
case "FINUPD" : tekst = L("lcl_faq_is_faqupd") ; break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user