PLAT#41497: TB038 Geen ‘laatste wijziging’ in beeld bij gewijzigde taak.

svn path=/Website/trunk/; revision=36155
This commit is contained in:
Maykel Geerdink
2017-11-29 13:07:44 +00:00
parent 8987e96dd0
commit 5e71c6f4bd
7 changed files with 67 additions and 48 deletions

View File

@@ -1596,6 +1596,8 @@ function generic_REST_POST(model, gparams)
var err = Oracle.Execute(xxxIns.sql, true);
if (err.friendlyMsg)
api2.error(400, err.friendlyMsg); // Veronderstel Bad Request
if (model.trackcode)
shared.trackaction(model.trackcode, the_key, L("lcl_inserted0").format(model.record_title));
var inctrack = api2.process_includes(params, model, jsondata, the_key);

View File

@@ -61,6 +61,12 @@ ins = {checkAutLevel:
shared.trackaction("INSCUP", deelsrtcontrole_key, ptxt);
},
tracksrtdeelupdate:
function (srtdeel_key, ptxt)
{
shared.trackaction("INSSUP", srtdeel_key, ptxt);
},
getBindingItemString:
function(bind, bind_key, parent_key)
{

View File

@@ -29,62 +29,69 @@ var binding = (getFParam("bindR", "off") == "on" ? BIND_RUIMTE : 0) +
(getFParam("bindP", "off") == "on" ? BIND_PERSOO : 0) +
(getFParam("bindI", "off") == "on" ? BIND_INSDEE : 0);
var fields = [ { dbs: "ins_srtgroep_key", typ: "key", frm: "srtgroep" },
{ dbs: "ins_srtdeel_code", typ: "varchar", frm: "srtcode" },
{ dbs: "ins_srtdeel_omschrijving", typ: "varchar", frm: "srtomschr" },
{ dbs: "ins_srtdeel_volgnr", typ: "number", frm: "srtdeel_volgnr" },
{ dbs: "ins_srtdeel_eenheid", typ: "varchar", frm: "srtdeel_eenheid" },
//{ dbs: "ins_srtdeel_dimensie", typ: "varchar", frm: "srtdeel_dimensie" },
{ dbs: "ins_srtdeel_acadsymbol", typ: "varchar", frm: "srtdeel_acadsymbol" },
{ dbs: "ins_srtdeel_uitleenbaar", typ: "check", frm: "srtdeel_uitleenbaar" },
{ dbs: "ins_srtdeel_nr", typ: "varchar", frm: "srtdeel_nr" },
{ dbs: "prs_bedrijf_key", typ: "key", frm: "prs_bedrijf_key" },
{ dbs: "ins_srtdeel_vervaldatum", typ: "date", frm: "vervaldatum" },
{ dbs: "ins_srtdeel_image", typ: "varchar", frm: "srtdeel_image" },
var fields = [ { dbs: "ins_srtgroep_key", typ: "key", frm: "srtgroep", track: L("lcl_obj_group"), foreign: "ins_srtgroep" },
{ dbs: "ins_srtdeel_code", typ: "varchar", frm: "srtcode", track: L("lcl_obj_srtdeel_code") },
{ dbs: "ins_srtdeel_omschrijving", typ: "varchar", frm: "srtomschr", track: L("lcl_descr") },
{ dbs: "ins_srtdeel_volgnr", typ: "number", frm: "srtdeel_volgnr", track: L("lcl_ins_volgnr") },
{ dbs: "ins_srtdeel_eenheid", typ: "varchar", frm: "srtdeel_eenheid", track: L("lcl_obj_unit") },
//{ dbs: "ins_srtdeel_dimensie", typ: "varchar", frm: "srtdeel_dimensie", track: L("lcl_ins_dimensie") },
{ dbs: "ins_srtdeel_acadsymbol", typ: "varchar", frm: "srtdeel_acadsymbol", track: L("lcl_obj_symbol") },
{ dbs: "ins_srtdeel_uitleenbaar", typ: "check", frm: "srtdeel_uitleenbaar", track: L("lcl_ins_uitleenbaar") },
{ dbs: "ins_srtdeel_nr", typ: "varchar", frm: "srtdeel_nr", track: L("lcl_ins_srtartikelnr") },
{ dbs: "prs_bedrijf_key", typ: "key", frm: "prs_bedrijf_key", track: L("lcl_ins_leverancier"), foreign: "prs_bedrijf" },
{ dbs: "ins_srtdeel_vervaldatum", typ: "date", frm: "vervaldatum", track: L("lcl_ins_vervaldatum") },
{ dbs: "ins_srtdeel_image", typ: "varchar", frm: "srtdeel_image", track: L("lcl_ins_image") },
{ dbs: "ins_srtdeel_module", typ: "varchar", val: "INS" },
{ dbs: "ins_srtdeel_binding", typ: "number", val: binding }];
{ dbs: "ins_srtdeel_binding", typ: "number", val: binding, track: L("lcl_obj_bind") }];
var warning = "";
var insUpd = { trackarray: [] };
if (srtdeel_key > 0)
{
sql = buildUpdate("ins_srtdeel", fields) + " ins_srtdeel_key = " + srtdeel_key;
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
insUpd = buildTrackingUpdate("ins_srtdeel", "ins_srtdeel_key = " + srtdeel_key, fields);
var err = Oracle.Execute(insUpd.sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
}
else
{ // nieuw objectsoort
fields.push({ dbs: "ins_srtdeel_key", typ: "key", seq: "ins_s_ins_srtinst_keys" });
var regIns = buildInsert("ins_srtdeel", fields);
var srtdeel_key = regIns.sequences["ins_srtdeel_key"];
var err = Oracle.Execute(regIns.sql, true);
fields.push({ dbs: "ins_srtdeel_key", typ: "key", seq: "ins_s_ins_srtinst_keys" });
var regIns = buildInsert("ins_srtdeel", fields);
srtdeel_key = regIns.sequences["ins_srtdeel_key"];
var err = Oracle.Execute(regIns.sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
if (err.friendlyMsg)
warning = err.friendlyMsg;
ins.tracksrtdeelupdate(srtdeel_key, L("lcl_obj_sort_add"));
}
if (!warning)
{
var currentKenmerkenSQL = "SELECT v.ins_kenmerk_key, v.ins_kenmerkdeel_waarde"
+ " FROM ins_kenmerkdeel v, ins_kenmerk ik"
+ " WHERE v.ins_kenmerkdeel_verwijder IS NULL"
+ " AND v.ins_kenmerk_key = ik.ins_kenmerk_key"
+ " AND ik.ins_kenmerk_bewerkniveau = 'S'"
+ " AND v.ins_deel_key = " + srtdeel_key; // herge/misbruik ins_deel_key
var currentKenmerkenSQL = "SELECT v.ins_kenmerk_key, v.ins_kenmerkdeel_waarde"
+ " FROM ins_kenmerkdeel v, ins_kenmerk ik"
+ " WHERE v.ins_kenmerkdeel_verwijder IS NULL"
+ " AND v.ins_kenmerk_key = ik.ins_kenmerk_key"
+ " AND ik.ins_kenmerk_bewerkniveau = 'S'"
+ " AND v.ins_deel_key = " + srtdeel_key; // herge/misbruik ins_deel_key
saveFlexKenmerken(srtdeel_key,
{ kenmerkTable: "ins_kenmerkdeel",
kenmerkParentKey : "ins_deel_key", // zal in de praktijk srtdeel_key zijn
kenmerkWaarde: "ins_kenmerkdeel_waarde",
kenmerkKey: "ins_kenmerk_key",
currentKenmerkenSQL: currentKenmerkenSQL,
requestQF: Request.Form,
isNew: isNew,
flexPath: "INS/S",
module: "INS"
});
var flextrack = saveFlexKenmerken(srtdeel_key,
{ kenmerkTable: "ins_kenmerkdeel",
kenmerkParentKey : "ins_deel_key", // zal in de praktijk srtdeel_key zijn
kenmerkWaarde: "ins_kenmerkdeel_waarde",
kenmerkKey: "ins_kenmerk_key",
currentKenmerkenSQL: currentKenmerkenSQL,
requestQF: Request.Form,
isNew: isNew,
flexPath: "INS/S",
module: "INS"
});
}
if ((insUpd.trackarray.length || flextrack.length))
{
ins.tracksrtdeelupdate(srtdeel_key, L("lcl_obj_is_inssuptrack").format(srtdeel_key) + "\n" + insUpd.trackarray.concat(flextrack).join("\n"));
}
%>
<html>

View File

@@ -105,7 +105,11 @@ oRs.close();
BLOCK_START("insIns", L("lcl_inssrt_general_info"));
ROFIELDTR("fld", L("lcl_discipline"), srtdeel.discipline_omschrijving);
ROFIELDTR("fld", L("lcl_obj_group"), srtdeel.groep_omschrijving);
ROFIELDTR("fld", L("lcl_obj_srtdeel_code"), srtdeel.srtdeel_code);
var params = { infoPointer: { Url: "appl/shared/status_info.asp?srtdeel_key=" + srtdeel_key + "&urole=" + urole,
Title: L("lcl_status_details") + " " + srtdeel.srtdeel_code
}
}
ROFIELDTR("fld", L("lcl_obj_srtdeel_code"), srtdeel.srtdeel_code, params);
ROFIELDTR("fld", L("lcl_descr"), srtdeel.srtdeel_omschrijving,
{ translate: { fld: "ins_srtdeel_omschrijving", key : srtdeel_key }});

View File

@@ -856,7 +856,7 @@ function scf_create_layout_list(model, p_params, p_fld_arr_all)
var fld_arr_rest = [];
for (var i=0 ; i<p_fld_arr_all.length;i++)
{
if (!inArray(p_fld_arr_all[i], fld_arr_layout) && p_fld_arr_all[i] != "id")
if (!inArray(p_fld_arr_all[i], fld_arr_layout) && (!p_params.layout || (p_params.layout && p_fld_arr_all[i] != "id")))
fld_arr_rest.push(p_fld_arr_all[i]);
}
//

View File

@@ -144,8 +144,6 @@ function scaffolding_show(model, scf_params)
var cnt = oRs(0).Value;
oRs.Close();
}
if ("hook_pre_show" in model)
model.hook_pre_show(xxx_data, model.fields);
if ("hook_pre_show" in model)
model.hook_pre_show(xxx_data, model.fields, scf_params);

View File

@@ -41,6 +41,7 @@
var afspr_key = getQParamInt('afspr_key', -1);
var cnt_key = getQParamInt('cnt_key', -1);
var ins_key = getQParamInt('ins_key', -1);
var srtdeel_key = getQParamInt('srtdeel_key', -1);
var insc_key = getQParamInt('insc_key', -1); // controle (inspectie)
var inssc_key = getQParamInt('inssc_key', -1); // srtcontrole (periodieke taak)
var fin_key = getQParamInt('fin_key', -1);
@@ -64,14 +65,15 @@
case afspr_key != -1: entkey = afspr_key; enttype ='afspraak'; break;
case cnt_key != -1: entkey = cnt_key; enttype ='contract'; break;
case ins_key != -1: entkey = ins_key; enttype ='deel'; break;
case srtdeel_key != -1: entkey = srtdeel_key; enttype ='srtdeel'; break;
case insc_key != -1: entkey = insc_key; enttype ='controle'; break;
case inssc_key != -1: entkey = inssc_key; enttype ='taak'; break;
case fin_key != -1: entkey = fin_key; enttype ='factuur'; break;
case bes_key != -1: entkey = bes_key; enttype ='bestelling'; break;
case ord_key != -1: entkey = ord_key; enttype ='bestelopdr'; break;
case room_key != -1: entkey = room_key; enttype ='ruimte'; break;
case prs_key != -1: entkey = prs_key; enttype ='perslid'; break;
case kpn_key != -1: entkey = kpn_key; enttype ='kostenplaats'; break;
case insc_key != -1: entkey = insc_key; enttype ='controle'; break;
case inssc_key != -1: entkey = inssc_key; enttype ='taak'; break;
case room_key != -1: entkey = room_key; enttype ='ruimte'; break;
case bld_key != -1: entkey = bld_key; enttype ='gebouw'; break;
}
if (typeof enttype == 'string')