Merge 2024.2 Gold D patches

svn path=/Website/trunk/; revision=66313
This commit is contained in:
2024-09-25 09:11:11 +00:00
parent 5a8175703b
commit 2793ebb6dd
13 changed files with 88 additions and 46 deletions

View File

@@ -467,7 +467,10 @@ for (i = 0; i < meldingen.length; i++)
upsertKenmerk(mldkenmerken, stdmld_key, mld_key);
resultcode = 0; // Ik heb gedaan wat ik moest en mocht doen voor deze melding.
// En nog maar even de aanname dat een extern systeem niet aan workflows/ktos doet?
// Handle workflow actions for new call:
// Let wel: alleen initiele stap ondersteund, niet latere vervolgstappen bij statuswijzigingen!
mld.nextworkflowstep(mld_key, -1); // -1 = initial (the originating call)
// Klantspecifieke check functie (hookfunction) voor de invoer
var pResult = new HookResult();

View File

@@ -228,17 +228,20 @@ function model_appointments()
else if (jsondata.building)
alg_key = jsondata.building;
var sql = "SELECT MAX(alg_locatie_key) loc_key"
+ " FROM alg_v_allonroerendgoed"
+ " WHERE alg_onroerendgoed_keys = " + alg_key;
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
if (alg_key > 0) // anders niet meegegeven bij update en/of het is een appointment onder een reservering en er komt nog wel een follow_afspraak
{
var loc_key = oRs("loc_key").Value;
dbfields["location"] = { dbs: "alg_locatie_key", typ: "key", foreign: "alg_locatie", val: loc_key};
jsondata.location = loc_key;
var sql = "SELECT MAX(alg_locatie_key) loc_key"
+ " FROM alg_v_allonroerendgoed"
+ " WHERE alg_onroerendgoed_keys = " + alg_key;
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
var loc_key = oRs("loc_key").Value;
dbfields["location"] = { dbs: "alg_locatie_key", typ: "key", foreign: "alg_locatie", val: loc_key};
jsondata.location = loc_key;
}
oRs.Close();
}
oRs.Close();
}
}
};

View File

@@ -446,14 +446,6 @@ function model_issues(mld_key, params)
var this_mld = mld.func_enabled_melding(mld_info.mld_key);
var stdm_info = mld.mld_stdmeldinginfo(mld_info.stdm_key);
var sql = "SELECT mld_meldbron_kiesbaar"
+ " FROM mld_meldbron"
+ " WHERE mld_meldbron_key = " + mld_info.meldbron_key;
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
mld_info.meldbron_kiesbaar = oRs("mld_meldbron_kiesbaar").Value;
oRs.Close();
// Uitgebreide condities eerst hier maken.
var remark_canchange = ( (this_mld.canBOwrite || this_mld.canFOwrite)
&& (S("mld_afhandeling_restrict_edit") == 0)
@@ -490,7 +482,6 @@ function model_issues(mld_key, params)
delete_fld(jsondata, "handler", !this_mld.canAfhandChange);
delete_fld(jsondata, "public", !mld_info.canbepublished);
delete_fld(jsondata, "origin", true);
delete_fld(jsondata, "extern_id", !((mld_info.mld_meldbron_kiesbaar & 2) == 2));
delete_fld(jsondata, "indult" , !(stdm_info.slabewaken && this_mld.canSLAChange) );
delete_fld(jsondata, "completed", !this_mld.canAfrond);
delete_fld(jsondata, "kto", !((mld_info.kto_opt & 2) == 2 && mld_info.kto_verstuurd == null && this_mld.canClose) );

View File

@@ -71,7 +71,7 @@ if (floorKey != -1)
+ " , r.alg_ruimte_omschrijving"
+ " , r.alg_ruimte_opp_alt1"
+ " , r.alg_ruimte_opp_alt2"
+ " , ROUND(100 * cr.prs_ruimteafdeling_bezetting / rp.som_bezetting) bezet_perc"
+ " , (100 * cr.prs_ruimteafdeling_bezetting / rp.som_bezetting) bezet_perc"
+ " , r.alg_ruimte_bruto_vloeropp * (cr.prs_ruimteafdeling_bezetting / rp.som_bezetting) bezet_vloeropp"
+ " , (SELECT " + S("prs_dep_string")
+ " FROM prs_v_afdeling d"

View File

@@ -483,7 +483,7 @@ __Log(actie);
var opdr_key = melding.opdracht.mld_opdr_key || -1;
if (params.ticket)
{
if (params.ticket.status >= 200 && params.ticket.status < 300)
if (params.ticket.status >= 200 && params.ticket.status < 300 && params.ticket.data.issue.id)
{
var sql = "";
var v_id = "";
@@ -500,12 +500,26 @@ __Log(actie);
}
else if (methode == "PUT" && actie == "issue")
{
// Soms wordt er een nieuwe opdracht aangemaakt als er een bug wordt afgemeld die leidt tot een change
// Voor de change is dan een nieuwe opdracht aangemaakt die gelinkt is aan dezelfde melding in het logcenter
// In dat geval gaan we toch het externnummer vullen voor de verdere communicatie.
v_id = "Update naar facilitor doorgestuurd. id: " + params.ticket.data.issue.id;
sql = "UPDATE mld_opdr"
+ " SET mld_opdr_externnr = " + safe.quoted_sql("" + params.ticket.data.issue.id)
+ " WHERE mld_opdr_externnr IS NULL "
+ " AND mld_opdr_key = " + opdr_key;
}
if (sql)
Oracle.Execute(sql);
shared.trackaction("#ORDTRK", opdr_key, v_id);
}
else
{
if (params.ticket.data.message)
{
shared.trackaction("#ORDTRK", opdr_key, "Foutmelding: " + safe.quoted_sql(params.ticket.data.message));
}
}
//var opm = (methode == "POST" ? "Creating " : "Updating ") + actie + " facilitor. Status: " + params.ticket.status;
//shared.trackaction("#MLDDOO", opdr_key, opm);
}
@@ -577,6 +591,10 @@ __Log(actie);
__Log(result);
__Log("*< facilitor.api");
Response.Write(JSON.stringify(result));
//Response.End;
if (result.ticket.status)
{
Response.Status = result.ticket.status + " " + result.ticket.message;
}
Response.End;
%>
<% ASPPAGE_END(); %>

View File

@@ -32,7 +32,7 @@ var ForAppending = 8
var tsUnicode = -1;
var tsAscii = 0;
// Achterhaal het wachtwoord van de doelomgving uit de udl
// Achterhaal het wachtwoord van de doelomgeving uit de udl
function read_ora_udl()
{
var fullPath = Server.MapPath("../../CUST");
@@ -81,8 +81,15 @@ try
{
var udl_data = read_ora_udl();
var f = fso.OpenTextFile(batchfile, ForWriting, true, tsAscii);
f.WriteLine("SET sourceUSER=" + customerId);
f.WriteLine("SET targetUSER=" + customerId + "_TEST"); // of udl_data.UserID
if (customerId == 'MAD2')
{
f.WriteLine("SET sourceUSER=MADE");
}
else
{
f.WriteLine("SET sourceUSER=" + customerId);
}
f.WriteLine("SET targetUSER=" + udl_data['UserID']);
f.WriteLine("SET targetPASS=" + udl_data.Password);
var dumpfile = S("refreshfromdumpfile", "").format(customerId);
if (dumpfile.match(/\.7z$/))
@@ -116,7 +123,7 @@ try
fso.CreateFolder(folder);
var nowtxt = toISODateString(new Date());
/* global */ __LogfileName = folder + "/log_" + nowtxt + ".html";
__DoLog("Refresh scheduled for {0}_TEST@{1}".format(customerId, udl_data.DataSource), "#f00");
__DoLog("Refresh scheduled for {0}@{1}".format(udl_data['UserID'], udl_data.DataSource), "#f00");
var dumpfile_timestamp = fso.getFile(dumpfile).DateLastModified;
__DoLog("Using dump {0} from before {1}".format(dumpfile, toDateTimeString(dumpfile_timestamp)));
__DoLog("Anonimize option: {0}".format(fac_refresh_anon));

View File

@@ -34,7 +34,7 @@
// stylesheet: optionele overrule van de import-XSL-stylesheet
function parseCSVLine(csvLine, delimiter)
function parseCSVLine(csvLine, delimiter)
{
var fields = csvLine.split(delimiter);
var correctedFields = [];
@@ -43,21 +43,21 @@ function parseCSVLine(csvLine, delimiter)
for (var regel in fields)
{
var field = fields[regel];
if (!mergedField && field.charAt(0) !== '"')
if (!mergedField && field.charAt(0) !== '"')
{
correctedFields.push(field);
}
else
}
else
{
mergedField += mergedField ? (delimiter + field) : field;
if (mergedField.charAt(mergedField.length - 1) === '"')
if (mergedField.charAt(mergedField.length - 1) === '"')
{
correctedFields.push(mergedField.substring(1, mergedField.length - 1));
mergedField = '';
}
}
};
return correctedFields;
}
@@ -346,12 +346,13 @@ function impReadStream(fileStream, import_app_key, params)
}
__Log("Ingelezen regels: " + fileDataArr.length);
if (!import_csv)
{ // De _IMPORT_ proc zal doorgaans de data van FAC_IMP_FILE naar bijv. FAC_IMP_CATALOGUS overzetten
var extra_params = (params.proc_params ? params.proc_params : "");
sql = "BEGIN " + procprefix + "_IMPORT_" + import_app + "(" + import_key + extra_params + "); END;"
Oracle.Execute(sql);
} // Als import_csv=true dan wordt er niet in specifieke import tabellen geimporteerd maar zal verwerking (update) vanuit fac_imp_csv gebeuren.
// De _IMPORT_ proc zal doorgaans de data van FAC_IMP_FILE of FAC_IMP_CSV naar bijv. FAC_IMP_CATALOGUS overzetten
// De latere _UPDATE_ proc zal zo'n FAC_IMP_CATALOGUS dan echt verwerken
// (sommige _UPDATE_ procs werken rechtstreekd op FAC_IMP_CSV maar moeten dan nog steeds een dummy _IMPORT_ hebben)
var extra_params = (params.proc_params ? params.proc_params : "");
sql = "BEGIN " + procprefix + "_IMPORT_" + import_app + "(" + import_key + extra_params + "); END;"
Oracle.Execute(sql);
var read_lines = teller-1;
var summarytxt = "";
if (read_lines != 2) // uitsluitend header + 1 dataregel komt bij klanten die PRSIMP per persoon doen duizenden keren per dag voor

View File

@@ -24,6 +24,7 @@ var putorders = {
putorders._puo_Oracle = new SafeOracle(Oracle.RealConnection);
putorders._puo_Oracle.marker = "<span style='font-size:smaller'>(PutOrders)</span>";
}
settings.overrule_setting("bdradrfiles_path", Server.MapPath(custpath + "/bdradrfiles")); // Zo verwacht putorders het
hook.initialize({ customerId: customerId,
S: S,
settings: settings,

View File

@@ -1378,21 +1378,20 @@ function __rsProcessResultset(processParams) // processParams wordt blind aan al
badgehtml = "<span class='subtab-badge-icon subtab-badge-missing'>"
+ I("fa-exclamation-triangle fa-lg", { "fastyle": "fas" })
+ "</span>"
}
%> <script>
var prevent_badge_reset = false;
<% if (!badgehtml && this.rstableNr && this.rstableNr > 1)
{ /* Itereer over alle voorgaande resultsets, als er 1 bestaat hoeven we de spinner niet meer uit de badge te halen,
want dat is dan al gebeurd, en mogelijk staat er ook al een counter in. */
%> for (var i = <%=this.rstableNr-1%>; i && !prevent_badge_reset; i--) {
%> for (var i = <%=this.rstableNr-1%>; i && !prevent_badge_reset; i--) {
prevent_badge_reset = $("[id=rstable].rstable" + i).length > 0;
}
}
<% } %>
if (!prevent_badge_reset) {
FcltMgr.setSubtabExtra("<%=safe.jsstring(badgehtml)%>");
FcltMgr.setSubtabExtra("<%=safe.jsstring(badgehtml)%>");
}
</script>
<%
<% }
return -1;
}
else

View File

@@ -695,6 +695,8 @@ function _buildFields(fields, params, tabel, where)
if (field.typ == 'clob' && val2.length > 4000)
{
__Log("CLOB field {0} is {1} characters long, switching to bind variables.".format(field.dbs, val2.length))
if (field.len)
val2 = val2.substr(0, field.len);
tupel.sql = '? ';
bindparams.push({ typ: adLongVarChar, dir: adParamInput, val: val2 });
}

View File

@@ -93,6 +93,8 @@
var full_import_app_key = getImportAppKey("EXCHFULL");
while (!oRs.Eof) {
var token = requestToken(config); // iedere keer opnieuw. Moet eigenlijk expiration controleren
// Fullsync bij het aanmaken van een nieuwe subscription zodat we volgens updates snel met een deltatoken kunnen ophalen
var zaalemail = oRs("res_ruimte_extern_id").Value;
var res_ruimte_key = oRs("res_ruimte_key").Value;

View File

@@ -98,7 +98,7 @@ function sendNotification(ref_key, pcode, params)
+ " WHERE ( BITAND (fac_notificatie_status, " + (puo_const.STATUS_EMAIL | puo_const.STATUS_SMS| puo_const.STATUS_APPPUSH) + ") > 0"
+ " OR fac_notificatie_systeemadres IS NOT NULL"
+ " OR prs_bedrijfadres_key IS NOT NULL)"
+ " AND fac_notificatie_notbefore <= SYSDATE"
+ (!forceOrders? " AND fac_notificatie_notbefore <= SYSDATE":"")
+ " AND f.prs_perslid_key_receiver = p.prs_perslid_key(+)"
+ strFilter
+ " ORDER BY fac_notificatie_datum"

View File

@@ -554,8 +554,23 @@ function sendMail( p_mailfrom
if (MailReply)
objMail.ReplyTo = MailReply;
objMail.To = p_mailto;
objMail.CC = params.cc || "";
objMail.BCC = params.bcc || "";
if (S("puo_forcemailaddress")) // Dat wordt veel te ingewikkeld
{
if (params.cc)
Log2File(1, "Not sending to cc ({0}) because puo_forcemailaddress is set".format(params.cc));
if (params.bcc)
Log2File(1, "Not sending to bcc ({0}) because puo_forcemailaddress is set".format(params.bcc));
}
else
{
if (params.cc)
Log2File(1, "CC to {0}".format(params.cc));
if (params.bcc)
Log2File(1, "BCC toc {0}".format(params.bcc));
objMail.CC = params.cc || "";
objMail.BCC = params.bcc || "";
}
objMail.subject = p_subject || "(no subject)";
//
if (params.attachStream)