FSN#38277 een melding vanuit een taak krijgt nu ook de referentie naar die taak, in bestaande referentievelden

svn path=/Website/trunk/; revision=31355
This commit is contained in:
Peter Feij
2016-11-03 14:57:27 +00:00
parent 634a68a857
commit 11f34c7199
11 changed files with 118 additions and 68 deletions

View File

@@ -389,7 +389,7 @@ if (ins_key_arr.length == 1)
function ins_melding()
{ // Meldbron "Inspection" meegeven (mld_meldbron_key = 10).
FcltMgr.openDetail("appl/mld/mld_melding.asp?urole=fo&meldbronkey=10&ins_key=<%=ingesloten[0]%>", "<%=L("lcl_add")%>");
FcltMgr.openDetail("appl/mld/mld_melding.asp?urole=fo&meldbronkey=10&ins_key=<%=ingesloten[0]%>&deelsrtcont_key=<%=ingeslotendsc[0]%>", "<%=L("lcl_add")%>");
}
</script>
</head>

View File

@@ -5,13 +5,9 @@
File: ins_inspect.asp
Description: Muteerscherm voor inspecties
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: ins_keys
srtcont_keys
deelsrtcont_key
dit is de 'wrapper' voor de diverse andere schermen
Parameters: ins_keys EN srtcont_keys voor een nieuwe OF deelsrtcont_key voor een bestaande inspectie
Context:
Note:
*/
%>
@@ -27,11 +23,15 @@ FCLTHeader.Requires({ plugins: ["jQuery", "suggest", "kenmerk"],
js: ["jquery.timepicker-table.js"],
css: ["timePicker-table.css"] });
var ins_keys = getQParamIntArray("ins_keys");
var srtcont_keys = getQParamIntArray("srtcont_keys");
var deelsrtcont_key = getQParamInt("deelsrtcont_key", -1); // Bestaande inspectie indien meegegeven.
var multi = ins_keys.length > 1; // Multi inplannen.
if (deelsrtcont_key == -1)
{
// ik besef: deze zijn dus niet altijd gedefinieerd, maar die zouden ook niet gebruikt mogen worden
// in geval van een bestaande volgens mij.
var ins_keys = getQParamIntArray("ins_keys");
var srtcont_keys = getQParamIntArray("srtcont_keys");
var multi = ins_keys.length > 1; // Multi inplannen.
}
var insPlan = getQParamInt("plan", 0) == 1; // Inplannen inspectie.
var insClose = getQParamInt("close", 0) == 1; // Afmelden of afronden inspectie.
var insEdit = !insPlan && !insClose; // Wijzigen inspectie.
@@ -62,7 +62,7 @@ var insEdit = !insPlan && !insClose; // Wijzigen inspectie.
<% }
else
{ // Bestaande inspectie bewerkt, switch naar show-mode
%> $("#inspectFrame")[0].src = "ins_show_inspect.asp?ins_key=<%=ins_keys%>&srtcont_key=<%=srtcont_keys%>&deelsrtcont_key=<%=deelsrtcont_key%>";
%> $("#inspectFrame")[0].src = "ins_show_inspect.asp?deelsrtcont_key=<%=deelsrtcont_key%>";
<% } %>
}
</script>
@@ -78,7 +78,7 @@ var insEdit = !insPlan && !insClose; // Wijzigen inspectie.
}
else
{
var page = "ins_show_inspect.asp?ins_key=" + ins_keys + "&srtcont_key=" + srtcont_keys + "&deelsrtcont_key=" + deelsrtcont_key;
var page = "ins_show_inspect.asp?deelsrtcont_key=" + deelsrtcont_key;
}
// 1. Het hoofdframe
IFRAMER("inspectFrame", page, {

View File

@@ -28,28 +28,23 @@ FCLTHeader.Requires({ plugins: ["jQuery", "suggest", "kenmerk"],
js: ["jquery.timepicker-table.js"],
css: ["timePicker-table.css"] });
var ins_key = getQParamInt("ins_key");
var srtcont_key = getQParamInt("srtcont_key");
var deelsrtcont_key = getQParamInt("deelsrtcont_key", -1); // Bestaande inspectie indien meegegeven.
if (deelsrtcont_key == -1)
{
var ins_key = getQParamInt("ins_key");
var srtcont_key = getQParamInt("srtcont_key");
}
var this_ins = ins.func_enabled_deel(ins_key,
{srtcont_key: srtcont_key,
deelsrtcont_key: deelsrtcont_key
});
user.auth_required_or_abort(this_ins.canInspShow);
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<%
if (deelsrtcont_key != -1)
{
// existing task
var sql = "SELECT ins_deelsrtcontrole_datum"
+ " , ins_controlemode_key"
+ " , ins_deelsrtcontrole_opmerking"
+ " , ins_deelsrtcontrole_plandatum"
+ " , ins_deelsrtcontrole_status"
+ " , ins_deel_key"
+ " , ins_srtcontrole_key"
+ " FROM ins_deelsrtcontrole"
+ " WHERE ins_deelsrtcontrole_key = " + deelsrtcont_key;
var oRs = Oracle.Execute(sql);
@@ -59,13 +54,30 @@ user.auth_required_or_abort(this_ins.canInspShow);
var deelsrtcontrole_plandatum = oRs("ins_deelsrtcontrole_plandatum").Value != null? new Date(oRs("ins_deelsrtcontrole_plandatum").Value) : null;
var deelsrtcontrole_status = oRs("ins_deelsrtcontrole_status").Value;
var deelsrtcontrole_status_str = ins.getinspectstatustext(oRs("ins_deelsrtcontrole_status").Value);
// We know this better than the eventual parameters:
ins_key = oRs("ins_deel_key").Value;
srtcont_key = oRs("ins_srtcontrole_key").Value;
oRs.close();
}
var this_ins = ins.func_enabled_deel(ins_key,
{srtcont_key: srtcont_key,
deelsrtcont_key: deelsrtcont_key
});
user.auth_required_or_abort(this_ins.canInspShow);
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<%
var eenheid = -1;
var scmode = 1; // 0 = Momentmode, 1 = Intervalmode.
var sctype = -1;
var vervaldatum = null;
var vervallen = false;
var info = "";
sql = "SELECT *"
+ " FROM (SELECT DISTINCT COALESCE (xcp.ins_srtcontroledl_xcp_eenheid, di.ins_srtcontrole_eenheid) eenheid"
+ " , di.ins_srtcontrole_info info"
@@ -85,7 +97,9 @@ user.auth_required_or_abort(this_ins.canInspShow);
+ " AND idsc.ins_deelsrtcontrole_key = " + deelsrtcont_key
+ " )";
var oRs = Oracle.Execute(sql);
lcl.set_dialect(oRs("ctr_discipline_key").Value, "INS_TAB_DISCIPLINE_KEY");
eenheid = oRs("eenheid").Value;
info = oRs("info").Value;
scmode = oRs("scmode").Value;
@@ -93,27 +107,27 @@ user.auth_required_or_abort(this_ins.canInspShow);
vervaldatum = oRs("vervaldatum").Value != null? new Date(oRs("vervaldatum").Value) : null;
vervallen = vervaldatum != null && vervaldatum < new Date();
sql = "SELECT d.ins_deel_omschrijving" // identificatie
+ " , s.ins_srtdeel_code"
+ " , " + lcl.xsqla('s.ins_srtdeel_omschrijving', 's.ins_srtdeel_key')
+ " FROM ins_deel d"
+ " , ins_srtdeel s"
+ " WHERE ins_deel_key = " + ins_key
+ " AND d.ins_srtdeel_key = s.ins_srtdeel_key";
oRs = Oracle.Execute(sql);
var desc = oRs("ins_deel_omschrijving").Value;
var srtcode = oRs("ins_srtdeel_code").Value;
var sort = oRs("ins_srtdeel_omschrijving").Value;
oRs.Close();
sql = "SELECT d.ins_deel_omschrijving" // identificatie
+ " , s.ins_srtdeel_code"
+ " , " + lcl.xsqla('s.ins_srtdeel_omschrijving', 's.ins_srtdeel_key')
+ " FROM ins_deel d"
+ " , ins_srtdeel s"
+ " WHERE ins_deel_key = " + ins_key
+ " AND d.ins_srtdeel_key = s.ins_srtdeel_key";
oRs = Oracle.Execute(sql);
var desc = oRs("ins_deel_omschrijving").Value;
var srtcode = oRs("ins_srtdeel_code").Value;
var sort = oRs("ins_srtdeel_omschrijving").Value;
oRs.Close();
var titletext;
switch(sctype)
{
case 1: titletext = L("lcl_ins_srtcontrole_insp"); break;
case 2: titletext = L("lcl_ins_srtcontrole_repl"); break;
case 3: titletext = L("lcl_ins_srtcontrole_cert"); break;
default: titletext = L("lcl_menu_ins_controle"); break;
}
var titletext;
switch(sctype)
{
case 1: titletext = L("lcl_ins_srtcontrole_insp"); break;
case 2: titletext = L("lcl_ins_srtcontrole_repl"); break;
case 3: titletext = L("lcl_ins_srtcontrole_cert"); break;
default: titletext = L("lcl_menu_ins_controle"); break;
}
%>
<script type="text/javascript">
@@ -167,7 +181,7 @@ switch(sctype)
function ins_melding()
{ // Meldbron "Inspection" meegeven (mld_meldbron_key = 10).
FcltMgr.openDetail("appl/mld/mld_melding.asp?urole=fo&meldbronkey=10&ins_key=<%=ins_key%>", "<%=L("lcl_add")%>");
FcltMgr.openDetail("appl/mld/mld_melding.asp?urole=fo&meldbronkey=10&ins_key=<%=ins_key%>&deelsrtcont_key=<%=deelsrtcont_key%>", "<%=L("lcl_add")%>");
}
//var title = params.srtcontrole_type == 1? L("lcl_ins_srtcontrole_insp") : (params.srtcontrole_type == 2? L("lcl_ins_srtcontrole_repl") : L("lcl_ins_srtcontrole_cert"));

View File

@@ -1485,6 +1485,9 @@ mld = {setmeldingstatus:
case "F":
var params = { infoPointer: { Url: "appl/fin/fin_factuur.asp?urole="+urole+"&fin_key=" + pkey}};
break;
case "T":
var params = { infoPointer: { Url: "appl/ins/ins_inspect.asp?deelsrtcont_key=" + pkey }};
break;
}
if (params)
ROFIELDTR("fld", plabel, lbl, params);
@@ -1525,6 +1528,17 @@ mld = {setmeldingstatus:
case "F":
return L("lcl_fin_invoice") + " " + pkey;
break;
case "T":
var sql = "SELECT lcl.x ('c.ins_discipline_omschrijving', c.ins_discipline_key, c.ins_discipline_omschrijving) ins_discipline_omschrijving"
+ ", dsc.ins_deelsrtcontrole_opmerking"
+ ", dsc.ins_deelsrtcontrole_datum"
+ " FROM ins_deelsrtcontrole dsc, ins_srtcontrole sc, ctr_discipline c"
+ " WHERE dsc.ins_srtcontrole_key = sc.ins_srtcontrole_key"
+ " AND sc.ctr_discipline_key = c.ins_discipline_key"
+ " AND ins_deelsrtcontrole_key = " + pkey;
var oRs = Oracle.Execute(sql);
return oRs("ins_discipline_omschrijving").value + " " + (oRs("ins_deelsrtcontrole_datum").value != "" ? toDateString(oRs("ins_deelsrtcontrole_datum").value) : "x");
break;
}
},

View File

@@ -58,6 +58,7 @@ var ins_key = getQParamInt("ins_key", -1); // nieuwe melding op dit object?
var fromkb = getQParamInt("fromkb", 0) == 1; // Ik kom vanuit kennisbank
var meldbron_key = getQParamInt("meldbronkey", -1);
var deelsrtcont_key = getQParamInt("deelsrtcont_key", -1); // nieuwe melding bij deze taak
var start_key = getQParamInt("start_key", -1);
// cache.whenTrue(mld_key == -1 && !copy && ins_key == -1);
@@ -545,6 +546,11 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
if (start_key > 0)
{ %>
<input type="hidden" name="start_key" id="start_key" value="<%=start_key%>">
<% }
// Als er een deelsrtcont_key is meegegeven, dan deze doorgeven.
if (deelsrtcont_key > 0)
{ %>
<input type="hidden" name="deelsrtcont_key" id="deelsrtcont_key" value="<%=deelsrtcont_key%>">
<% }
}

View File

@@ -95,6 +95,8 @@ var stdm_key = getFParamInt("stdm");
var stdm_info = mld.mld_stdmeldinginfo(stdm_key);
var meldbron_key = getFParamInt("meldbronkey", S("mld_meldbron_key"));
// If a deelsrtcont_key is given, this new melding will reference to a kto_type=T and kto_key=deelsrtcont_key
var deelsrtcont_key = getFParamInt("deelsrtcont_key");
// Onroerendgoed_keys wordt de verfijnste van de opgegeven plaats
@@ -459,10 +461,21 @@ if (savemode)
var this_mld = mld.func_enabled_mld(stdm_info.ins_discipline_key, "D");
user.auth_required_or_abort(this_mld.canFEwrite || this_mld.canFOwrite);
if (stdm_info.is_kto_antwoord || stdm_info.kanverwijzen == 0)
var ref_key = getFParamInt("kto_key", null);
if (deelsrtcont_key)
{
var ref_key = getFParamInt("deelsrtcont_key", null);
var ref_type = "T";
}
else if (stdm_info.is_kto_antwoord || stdm_info.kanverwijzen == 0)
{
var ref_key = getFParamInt("kto_key", null);
var ref_type = getFParamInt("kto_type", null);
}
else
var ref_key = getFParamInt("ref_key", -1);
{
var ref_key = getFParamInt("ref_key", -1); // explicit reference
var ref_type = getFParamInt("ref_type", null);
}
if (!stdm_info.is_kto_antwoord && stdm_info.kanverwijzen==128 && !validReferenceKey(-1, ref_key) )
abort_with_warning(L("lcl_mld_invalid_reference"));
@@ -473,7 +486,7 @@ if (savemode)
{ dbs: "mld_melding_module", typ: "varchar", val: "MLD" },
{ dbs: "mld_melding_spoed", typ: "key", val: (prio > 0? prio : 3) }, // default (frontend) 3
{ dbs: "fac_activiteit_key", typ: "key", frm: "fac_activiteit_key" },
{ dbs: "mld_melding_kto_type", typ: "varchar", frm: (stdm_info.is_kto_antwoord || stdm_info.kanverwijzen == 0)? "kto_type" : "ref_type" },
{ dbs: "mld_melding_kto_type", typ: "varchar", val: ref_type },
{ dbs: "mld_melding_kto_key", typ: "key", val: ref_key },
{ dbs: "mld_melding_kto", typ: "number", val: (stdm_info.stdmelding_kto & 1)? 1 : 0 }
]);

View File

@@ -35,6 +35,7 @@ var mld_key = getQParamInt("mld_key", -1);
var copy = (getQParamInt("mld_copy", 0) == 1);
var standalone = (getQParamInt("standalone", 0) == 1);
var ins_key = getQParamInt("ins_key", -1); // nieuwe melding op dit object?
var deelsrtcont_key = getQParamInt("deelsrtcont_key", -1); // .. en bij deze inspectie?
var kto_key = getQParamInt("kto_key", -1);
var kto_type = getQParam("kto_type", "");
@@ -57,7 +58,7 @@ if (kto_key > 0)
// def_kenmerk_link_key: Default person for flexfields, can be used from deeplink (e-mail notification)
// txt: default tekst
// act_key: fac_activiteit_key voor geplande meldingen
transitParam = buildTransitParam(["loc_key", "bld_key", "def_kenmerk_link_key", "txt", "ins_key", "meldbronkey",
transitParam = buildTransitParam(["loc_key", "bld_key", "def_kenmerk_link_key", "txt", "ins_key", "meldbronkey", "deelsrtcont_key",
"verynew", "mld_copy", "rsv_ruimte_key", "fromkb", "tracking", "start_key",
"act_key", "dienst", "cnt_key", "typeopdr", "txtreado", "kto_type", "kto_key"]);

View File

@@ -3,11 +3,11 @@
$Revision$
$Id$
File:
Description:
Parameters:
Note:
Description: Mobile taakdetailscherm
Parameters: vereist ins_key en optioneel deelsrtcont_key
Note: Ik vind de werking wat impliciet/schimmig irt deelsrtcont_key.
Voor een bestaande inspectie moet nu redundant de ins_key ook
worden meegegeven en dat gaat in principe ten koste van de mogelijkheden
*/
%>
@@ -263,7 +263,7 @@ if (srtcontrole_key < 0 || defaultmode_key > 0)
<%
}
else
{ // Er is een soort controle key
{ // Er is een soort controle key PF: maar niet noodzakelijkerwijs een ins_key eigenlijk
var sql = "SELECT id.ins_deel_omschrijving"
+ " FROM ins_deel id"
+ " WHERE id.ins_deel_key = " + ins_key;
@@ -282,8 +282,8 @@ else
+ " , ctr_disc_params cdp"
+ " WHERE isc.ins_srtcontrole_key = idsc.ins_srtcontrole_key(+)" // Er kan nog voor de eerste keer geinspecteerd moeten worden.
+ " AND isc.ctr_discipline_key = cdp.ctr_ins_discipline_key"
+ " AND idsc.ins_deel_key(+) = " + ins_key
+ " AND isc.ins_srtcontrole_key = " + srtcontrole_key
+ " AND idsc.ins_deel_key(+) = " + ins_key // PF: lijkt mij alleen indien deelsrtcont_key == -1
+ " AND isc.ins_srtcontrole_key = " + srtcontrole_key // PF: lijkt mij alleen indien deelsrtcont_key == -1
+ (deelsrtcont_key > 0
? " AND idsc.ins_deelsrtcontrole_key = " + deelsrtcont_key
: "")
@@ -591,13 +591,12 @@ else
+ " FROM (" + mySRTsql + ")";
var oRs = Oracle.Execute(sql);
if (oRs("aantal").Value > 0)
BUTTON(L("lcl_mobile_newmelding"), {linkid: "./melding.asp?mld_key=-1&ins_key=" + ins_key + "&meldbronkey=10", dataicon: "plus", dataajax: "false"});
//BUTTON(L("lcl_mobile_newmelding"), {click: "ins_newmelding()", dataicon: "plus"});
BUTTON(L("lcl_mobile_newmelding"), {linkid: "./melding.asp?mld_key=-1&ins_key=" + ins_key + "&meldbronkey=10&deelsrtcont_key="+deelsrtcont_key, dataicon: "plus", dataajax: "false"});
oRs.Close();
}
else if (toRs("aantal").Value > 0 && user.checkAutorisation("WEB_MLDBOF", true))
{
BUTTON(L("lcl_mobile_meldingen") + " (" + toRs("aantal").Value + ")", {linkid: "./mld_list.asp?ins_key=" + ins_key + "&meldbronkey=10", dataicon: "alert"});
BUTTON(L("lcl_mobile_meldingen") + " (" + toRs("aantal").Value + ")", {linkid: "./mld_list.asp?ins_key=" + ins_key + "&meldbronkey=10&deelsrtcont_key="+deelsrtcont_key, dataicon: "alert"});
}
toRs.Close();
}

View File

@@ -39,7 +39,8 @@ FCLTHeader.Requires({plugins: ["suggest"]});
var mld_key = getQParamInt("mld_key",-1);
var action = getQParam("action", "");
var qrc = getQParamInt("qrc", 0) != 0;
var meldbron_key = getQParamInt("meldbronkey", 7);
var meldbron_key = getQParamInt("meldbronkey", 7); // 7 = mobile
var deelsrtcont_key = getQParamInt("deelsrtcont_key", -1);
var urole = getQParamSafe("urole", "fe");
var mld_info = {};
var plaats_key = -1;
@@ -470,6 +471,7 @@ if (action != "forward")
<input type="hidden" name="verdiepingkey" value="<%=verdieping_key%>">
<input type="hidden" name="ruimtekey" id="ruimtekey" value="<%=ruimte_key%>">
<input type="hidden" name="meldbronkey" value="<%=meldbron_key%>">
<input type="hidden" name="deelsrtcont_key" value="<%=deelsrtcont_key%>">
<%
}
else

View File

@@ -36,7 +36,7 @@ if (urole == "")
{
urole = (user.has("WEB_MLDFOF") ? "fo" : "fe");
}
var transitParam = buildTransitParam(["mld_key", "action", "disc", "srtdisc", "ins_key", "locatie_key", "gebouw_key", "verdieping_key", "ruimte_key", "meldbronkey"] );
var transitParam = buildTransitParam(["mld_key", "action", "disc", "srtdisc", "ins_key", "locatie_key", "gebouw_key", "verdieping_key", "ruimte_key", "meldbronkey", "deelsrtcont_key"] );
// Verplicht:
var disc_key = getQParamInt("disc", -1);

View File

@@ -36,6 +36,7 @@ var gebouw_key = getQParamInt("gebouw_key", user.alg_gebouw_key({withcurrent:tru
var verdieping_key = getQParamInt("verdieping_key", user.alg_verdieping_key({withcurrent:true}));
var qrc = getQParamInt("qrc", 0) != 0;
var meldbron_key = getQParamInt("meldbronkey", 7);
var deelsrtcont_key = getQParamInt("deelsrtcont_key", -1); // nieuwe melding vanuit een controletaak
var grp_sel = getQParam("grp", "");
@@ -322,7 +323,7 @@ var authparams = user.checkAutorisation(autfunction);
PAGE_START();
HEADER({title: subject,
back: !qrc,
addaction: "../pda/melding.asp?mld_key=-1" + (ins_key > -1? "&ins_key=" + ins_key : "") + (ruimte_key > -1? "&ruimte_key=" + ruimte_key : "") + "&meldbronkey=" + meldbron_key});
addaction: "../pda/melding.asp?mld_key=-1" + (ins_key > -1? "&ins_key=" + ins_key : "") + (ruimte_key > -1? "&ruimte_key=" + ruimte_key : "") + "&meldbronkey=" + meldbron_key + (deelsrtcont_key>-1 ? "&deelsrtcont_key=" + deelsrtcont_key : "")});
CONTENT_START();
var rst = new ResultsetTable({sql: sqln,