UWVA#40805 XML.kostenplaats kan nu meegegeven worden

svn path=/Website/branches/v2017.1/; revision=34219
This commit is contained in:
2017-06-12 11:22:09 +00:00
parent 025311c906
commit cb0d7ad5ed

View File

@@ -105,6 +105,7 @@ for (i = 0; i < meldingen.length; i++)
var meldrnr = XMLval(meldingen[i], "ruimtecode");
var locatie_key = -1; // Bepaald op basis van meldloc
var plaats_key = -1; // Bepaald op basis van meldgeb/meldver/meldrnr
var meld_kpn = XMLval(meldingen[i], "kostenplaats");
var meld_oms = XMLval(meldingen[i], "omschrijving");
//var mldkenmerken = (meldingen[i].getElementsByTagName("kenmerk"))[0].childNodes[0].nodeValue; // Unsupported yet
var mldkenmerken = meldingen[i].getElementsByTagName("kenmerk");
@@ -136,7 +137,7 @@ for (i = 0; i < meldingen.length; i++)
resultcode = 1;
resulttekst = "Undefined external ID (key)";
}
else if (meldaction == 'update')
else if (meldaction == "update")
{
resultcode = 0;
// verder nog even kijken wat we willen doen.
@@ -145,7 +146,7 @@ for (i = 0; i < meldingen.length; i++)
var mldUpd = buildTrackingUpdate("mld_melding", "mld_melding_key = " + mld_key, fields, { noValidateToken: true });
Oracle.Execute(mldUpd.sql);
}
else if (meldaction != 'insert')
else if (meldaction != "insert")
{
resultcode = 2;
resulttekst = "Undefined operation (type)";
@@ -313,12 +314,39 @@ for (i = 0; i < meldingen.length; i++)
__DoLog(resulttekst, "#00FF00");
}
var kpn_key = user.afdeling().prs_kostenplaats_key() || -1;
tsql = "SELECT prs_kostenplaats_key"
+ " FROM prs_kostenplaats"
+ " WHERE prs_kostenplaats_verwijder IS NULL"
+ " AND (prs_kostenplaats_begin IS NULL"
+ " OR prs_kostenplaats_begin < SYSDATE)"
+ " AND (prs_kostenplaats_eind IS NULL"
+ " OR prs_kostenplaats_eind > SYSDATE)"
+ " AND prs_kostenplaats_upper = " + safe.quoted_sql_upper(meld_kpn); // Unique
oRs = Oracle.Execute(tsql);
if (!oRs.EoF)
{
var meld_kpn_key = oRs("prs_kostenplaats_key").Value;
tsql = "SELECT ''"
+ " FROM prs_perslidkostenplaats"
+ " WHERE prs_perslidkostenplaats_boeken = 1"
+ " AND (prs_kostenplaats_key = " + meld_kpn_key
+ " OR prs_kostenplaats_key IS NULL)" // Mandated for all
+ " AND prs_perslid_key = " + perslid_key;
oRs = Oracle.Execute(tsql);
if (!oRs.EoF) // persoon gemandateerd voor gegeven kostenplaats
kpn_key = meld_kpn_key;
}
oRs.Close();
fields = fields.concat(
[ { dbs: "mld_melding_key", typ: "key", seq: "mld_s_mld_melding_key" },
{ dbs: "mld_melding_module", typ: "varchar", val: "MLD" },
{ dbs: "mld_meldbron_key", typ: "key", val: 6 }, // system
{ dbs: "mld_melding_omschrijving", typ: "varchar", val: meld_oms, len: 4000 },
{ dbs: "prs_kostenplaats_key", typ: "key", val: user.afdeling().prs_kostenplaats_key() },
{ dbs: "prs_kostenplaats_key", typ: "key", val: kpn_key },
{ dbs: "prs_perslid_key", typ: "key", val: perslid_key },
{ dbs: "prs_perslid_key_voor", typ: "key", val: voor_key },
{ dbs: "mld_melding_spoed", typ: "key", val: 3 }, // default (frontend) = 3