FSN#40877 Datum laatste actie op meldingenlijst

svn path=/Website/trunk/; revision=39381
This commit is contained in:
Erik Groener
2018-10-12 11:08:42 +00:00
parent 3c025ebe2e
commit 6e2f5df2b4

View File

@@ -578,8 +578,15 @@ function mld_list (pautfunction, params)
// Ik zou dit liever in de hoofdquery meenemen maar Oracle12 komt daar slecht uit
// Hier per regel ophalen is netto veel sneller
// Datum van laatste actie is op 2 plekken nodig. Daarom in fnrowData() ophalen en in globale variabele zetten.
var mld_recent = globalRowData.laatste_actie;
var sql = "SELECT MAX(t.fac_tracking_datum) recentdatum"
+ " FROM fac_tracking t"
+ " , fac_srtnotificatie sn"
+ " WHERE t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key"
+ " AND t.fac_tracking_refkey = " + oRs("mld_melding_key").Value
+ " AND sn.fac_srtnotificatie_xmlnode = 'melding'";
var roRs = Oracle.Execute(sql);
var mld_recent = new Date(roRs("recentdatum").Value);
roRs.Close();
if (mld_recent > recent)
{
@@ -603,16 +610,6 @@ function mld_list (pautfunction, params)
// Extra data voor de client om daar dynamisch buttons te kunnen activeren.
function fnrowData(oRs)
{
var sql = "SELECT MAX(t.fac_tracking_datum) recentdatum"
+ " FROM fac_tracking t"
+ " , fac_srtnotificatie sn"
+ " WHERE t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key"
+ " AND t.fac_tracking_refkey = " + oRs("mld_melding_key").Value
+ " AND sn.fac_srtnotificatie_xmlnode = 'melding'";
var roRs = Oracle.Execute(sql);
globalRowData.laatste_actie = new Date(roRs("recentdatum").Value);
roRs.Close();
var mldStatus = parseInt(oRs("mld_status").Value);
var mldPrefix = oRs("ins_srtdiscipline_prefix").Value || "";
var gewijzigd = oRs("isGewijzigd").Value == 1;
@@ -729,6 +726,17 @@ function mld_list (pautfunction, params)
function fnHasOrders(oRs)
{
var sql = "SELECT MAX(t.fac_tracking_datum) recentdatum"
+ " FROM fac_tracking t"
+ " , fac_srtnotificatie sn"
+ " WHERE t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key"
+ " AND t.fac_tracking_refkey = " + oRs("mld_melding_key").Value
+ " AND sn.fac_srtnotificatie_xmlnode = 'melding'";
var roRs = Oracle.Execute(sql);
globalRowData.laatste_actie = new Date(roRs("recentdatum").Value);
roRs.Close();
if (oRs("nrOrders").Value > 0)
{
var opdr_hint = oRs("nrOrders").Value == 1 ? "1 " + L("lcl_shared_order") : oRs("nrOrders").Value + " " + L("lcl_orders");
@@ -813,11 +821,31 @@ function mld_list (pautfunction, params)
function fncolLaatsteActieDatum(oRs)
{
return toDateString(globalRowData.laatste_actie, excel);
var sql = "SELECT MAX(t.fac_tracking_datum) recentdatum"
+ " FROM fac_tracking t"
+ " , fac_srtnotificatie sn"
+ " WHERE t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key"
+ " AND t.fac_tracking_refkey = " + oRs("mld_melding_key").Value
+ " AND sn.fac_srtnotificatie_xmlnode = 'melding'";
var roRs = Oracle.Execute(sql);
var laatste_actie = new Date(roRs("recentdatum").Value);
roRs.Close();
return toDateString(laatste_actie, excel);
}
function fncolLaatsteActieTijd(oRs)
{
return toTimeString(globalRowData.laatste_actie);
var sql = "SELECT MAX(t.fac_tracking_datum) recentdatum"
+ " FROM fac_tracking t"
+ " , fac_srtnotificatie sn"
+ " WHERE t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key"
+ " AND t.fac_tracking_refkey = " + oRs("mld_melding_key").Value
+ " AND sn.fac_srtnotificatie_xmlnode = 'melding'";
var roRs = Oracle.Execute(sql);
var laatste_actie = new Date(roRs("recentdatum").Value);
roRs.Close();
return toTimeString(laatste_actie);
}
function fncolFlags(oRs)
@@ -1207,7 +1235,7 @@ function mld_list (pautfunction, params)
if (!frontend)
{
rst.addColumn(new Column({caption: L("lcl_mld_laatste_actie"), content: fncolLaatsteActieDatum, nowrap: true}));
rst.addColumn(new Column({caption: "", content: fncolLaatsteActieTijd, nowrap: true, combine: true}));
rst.addColumn(new Column({caption: L("lcl_time"), content: fncolLaatsteActieTijd, nowrap: true, combine: true}));
}
/* de mogelijke acties */