Branch 2022.2 revisions 56070,56073-56079,56083-56088
svn path=/Website/trunk/; revision=56089
This commit is contained in:
@@ -227,10 +227,9 @@ try
|
||||
oRs.Close();
|
||||
if (any3D)
|
||||
{
|
||||
if (!autfunction)
|
||||
API.error("3d yet autfunction undefined"); // Strict genomen niet nodig voor FCLT_3D_USER_KEY
|
||||
|
||||
if (autfunction)
|
||||
var authparams = user.checkAutorisation(autfunction);
|
||||
|
||||
// TODO: Onderstaande code gaan delen met fac_usrrap.inc?
|
||||
if (has3D["FCLT_3D_DISCIPLINE_KEY"])
|
||||
{
|
||||
|
||||
@@ -833,11 +833,12 @@ oRs.Close();
|
||||
required: true
|
||||
}
|
||||
);
|
||||
|
||||
if (aflever_readonly && bes_bestelling.mld_adres_key > 0)
|
||||
{
|
||||
Reponse.Write("<input type='hidden' name='deliveryAddr' value='" + bes_bestelling.mld_adres_key + "'>")
|
||||
}
|
||||
*/
|
||||
// if (aflever_readonly && bes_bestelling.mld_adres_key > 0)
|
||||
// { %>
|
||||
// <input type='hidden' name='deliveryAddr' value='<%=bes_bestelling.mld_adres_key%>'><%
|
||||
// }
|
||||
|
||||
FCLTadresselector("deliveryAddr", "sgAdres",
|
||||
{ trid: "deliveryaddress",
|
||||
|
||||
@@ -125,8 +125,7 @@ if(S("bez_import_column5") != 0){
|
||||
var regel = regels[i];
|
||||
var spl = regel.split(bed_sep);
|
||||
|
||||
var format = "<%=formatstring%>";
|
||||
var splColumns = format.split(";");
|
||||
var splColumns = formatstring.split(";");
|
||||
splColumns.pop(); // Get the last element out of there, it's empty
|
||||
|
||||
if (spl.length && trim(spl[0]) != "")
|
||||
@@ -195,7 +194,7 @@ if (!novervang) {
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><%=formatstring.substring(0, formatstring.length - 1)%></td>
|
||||
<td><%=formatstring.slice(0, -1)%></td>
|
||||
</tr>
|
||||
<%
|
||||
}
|
||||
|
||||
@@ -43,8 +43,7 @@ if (cnt_key > 0)
|
||||
+ " FROM cnt_srtkenmerk t"
|
||||
+ " , cnt_kenmerk k"
|
||||
+ " , cnt_contract c"
|
||||
+ " WHERE (c.ins_discipline_key = k.cnt_srtcontract_key"
|
||||
+ " OR k.cnt_srtcontract_key IS NULL)"
|
||||
+ " WHERE c.ins_discipline_key = k.cnt_srtcontract_key"
|
||||
+ " AND k.cnt_kenmerk_niveau IN ('C', 'S')"
|
||||
+ " AND k.cnt_srtkenmerk_key = t.cnt_srtkenmerk_key"
|
||||
+ " AND k.cnt_kenmerk_verwijder IS NULL"
|
||||
|
||||
@@ -309,7 +309,7 @@ else { // In alle andere gevallen, dus normaliter (bij gevulde oRs) zijn dat nog
|
||||
else // plain rapportage, dus NIET via xml/xsl
|
||||
{
|
||||
if (safeShowFilter != "" && (outputmode==1 || outputmode==2)) {
|
||||
%><table width=100%>
|
||||
%><table width="100%">
|
||||
<tr>
|
||||
<td><table><%=safeShowFilter%></table></td>
|
||||
</tr></table><%
|
||||
|
||||
@@ -623,7 +623,7 @@ var ins_deel_aantal = 1;
|
||||
{ <%
|
||||
if (disc_key_arr.length > 0)
|
||||
{ %>
|
||||
return <%=disc_key_arr%>;
|
||||
return [<%=disc_key_arr%>];
|
||||
<% }
|
||||
else
|
||||
{ %>
|
||||
|
||||
111
APPL/MLD/mld.inc
111
APPL/MLD/mld.inc
@@ -497,6 +497,116 @@ mld = {
|
||||
}
|
||||
},
|
||||
|
||||
executedworkflowsteps:
|
||||
// Haal alle mld_melding keys op van de workflow tot deze melding.
|
||||
// Met include_self wordt de huidige melding ook toegevoegd aan het array.
|
||||
function (p_mld_key, include_self)
|
||||
{
|
||||
function set_label(p_key)
|
||||
{
|
||||
return mld.mld_prefix(p_key) + p_key + " ({0})";
|
||||
}
|
||||
|
||||
function workflowchain_reverse(pstart_key, current_workflowstep_key, pkeylist)
|
||||
{
|
||||
// Doorloop directe voorgangers van current_workflowstep_key
|
||||
var sql_b = "SELECT m.mld_melding_key"
|
||||
+ " , r.mld_workflowstep_key previous_step"
|
||||
+ " FROM mld_melding m"
|
||||
+ " , mld_workflowrule r"
|
||||
+ " WHERE m.mld_workflowstep_key = r.mld_workflowstep_key"
|
||||
+ " AND m.mld_melding_start_key = " + pstart_key
|
||||
+ " AND r.mld_workflowstep_next_key = " + current_workflowstep_key;
|
||||
var oRs_b = Oracle.Execute(sql_b);
|
||||
while (!oRs_b.eof)
|
||||
{
|
||||
var mkey = oRs_b("mld_melding_key").Value;
|
||||
if (!(mkey in pkeylist))
|
||||
{
|
||||
pkeylist[mkey] = set_label(mkey);
|
||||
workflowchain_reverse(pstart_key, oRs_b("previous_step").Value, pkeylist);
|
||||
}
|
||||
oRs_b.MoveNext();
|
||||
}
|
||||
oRs_b.Close();
|
||||
}
|
||||
|
||||
//
|
||||
var parent_list = []; // Ook knoppen met bijlagen van de 'parent'-chain
|
||||
if (include_self)
|
||||
{
|
||||
parent_list.push ( { label: set_label(p_mld_key)
|
||||
, module: "MLD"
|
||||
, key: p_mld_key
|
||||
}
|
||||
);
|
||||
}
|
||||
if (S("mld_show_parent_attachments"))
|
||||
{
|
||||
var sql = "SELECT w.mld_workflowstep_attachments"
|
||||
+ " , m.mld_workflowstep_key"
|
||||
+ " , m.mld_melding_start_key"
|
||||
+ " FROM mld_melding m"
|
||||
+ " , mld_workflowstep w"
|
||||
+ " WHERE m.mld_melding_key = " + p_mld_key
|
||||
+ " AND m.mld_workflowstep_key = w.mld_workflowstep_key";
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
{
|
||||
var start_key = oRs("mld_melding_start_key").Value;
|
||||
var show_attach = oRs("mld_workflowstep_attachments").Value;
|
||||
var cur_step_key = oRs("mld_workflowstep_key").Value;
|
||||
|
||||
if (show_attach > 0)
|
||||
{
|
||||
if (show_attach == 2)
|
||||
{
|
||||
var pkeylist = {};
|
||||
workflowchain_reverse(start_key, cur_step_key, pkeylist); // pkeylist is een object en dus by-reference parameter
|
||||
for (mkey in pkeylist)
|
||||
{
|
||||
parent_list.push ( { label: pkeylist[mkey]
|
||||
, module: "MLD"
|
||||
, key: mkey
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (show_attach == 1)
|
||||
{
|
||||
var sql_a = "SELECT mld_melding_key"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_key = " + start_key
|
||||
+ " AND mld_melding_key <> " + p_mld_key;
|
||||
}
|
||||
else if (show_attach == 3)
|
||||
{
|
||||
var sql_a = "SELECT mld_melding_key"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_start_key = " + start_key
|
||||
+ " AND mld_melding_key <> " + p_mld_key;
|
||||
}
|
||||
var oRs_a = Oracle.Execute(sql_a);
|
||||
while (!oRs_a.eof)
|
||||
{
|
||||
parent_list.push ( { label: set_label(oRs_a("mld_melding_key").Value)
|
||||
, module: "MLD"
|
||||
, key: oRs_a("mld_melding_key").Value
|
||||
}
|
||||
);
|
||||
oRs_a.MoveNext();
|
||||
}
|
||||
oRs_a.Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
return parent_list;
|
||||
},
|
||||
|
||||
notifyprio:
|
||||
function (mld_key, prio)
|
||||
{ // Notify relevant to prio;
|
||||
@@ -4411,7 +4521,6 @@ mld = {
|
||||
mresult.canStdmChange = (mresult_vakg.canWrite("WEB_MLDBOF") || mresult_vakg.canWrite("WEB_MLDBO3")) && !is_wf_root
|
||||
mresult.canDeptChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3") || mresult.canFEwrite);
|
||||
mresult.canKostChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3") || mresult.canFEwrite);
|
||||
mresult.canFlexChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3") || (mresult.canWrite("WEB_MLDFOF") && S("mld_fof_canFlexChange")));
|
||||
mresult.canPlaatsChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3"));
|
||||
mresult.canAflChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3"));
|
||||
// Alleen BO/FO kan melding aanpassen. FE toevoegen voor canPrioChange heeft geen zin.
|
||||
|
||||
@@ -118,94 +118,7 @@ var fwdInfo = mld.getFwdType(mld_key, this_mld, mld_melding);
|
||||
|
||||
function gen_flex() // ik weet nog niet waar
|
||||
{
|
||||
var parent_list = []; // Ook knoppen met bijlagen van de 'parent'-chain
|
||||
if (S("mld_show_parent_attachments"))
|
||||
{
|
||||
var skey = mld_melding.Startkey;
|
||||
var mkey = mld_key;
|
||||
var sql = "SELECT mld_workflowstep_attachments"
|
||||
+ " , m.mld_workflowstep_key"
|
||||
+ " FROM mld_melding m, mld_workflowstep w"
|
||||
+ " WHERE m.mld_melding_key = " + mkey
|
||||
+ " AND m.mld_workflowstep_key = w.mld_workflowstep_key";
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
{
|
||||
var show_attach = oRs("mld_workflowstep_attachments").Value
|
||||
var cur_step_key = oRs("mld_workflowstep_key").Value;
|
||||
// mld_workflowstep_attachments = 0 : own, kenmerken worden meegenomen door de eigen mld_key.
|
||||
if (show_attach >= 1) // 1= own + root call 2= all previous 3=complete
|
||||
{
|
||||
if (show_attach == 1 || show_attach == 3)
|
||||
{
|
||||
if (show_attach == 1) // own + root call
|
||||
{
|
||||
var sql_a = "SELECT mld_melding_key"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_key = " + skey
|
||||
+ " AND mld_melding_key <> " + mkey;
|
||||
}
|
||||
else if (show_attach == 3) // complete
|
||||
{
|
||||
var sql_a = "SELECT mld_melding_key"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_start_key = " + skey
|
||||
+ " AND mld_melding_key <> " + mkey;
|
||||
}
|
||||
var oRs_a = Oracle.Execute(sql_a);
|
||||
while (!oRs_a.eof)
|
||||
{
|
||||
parent_list.push ( { label: mld.mld_prefix(oRs_a("mld_melding_key").Value)+oRs_a("mld_melding_key").Value + " ({0})",
|
||||
module: "MLD",
|
||||
key: oRs_a("mld_melding_key").Value
|
||||
}
|
||||
);
|
||||
oRs_a.MoveNext();
|
||||
}
|
||||
oRs_a.Close();
|
||||
}
|
||||
else // mld_workflowstep_attachments == 2 // all in chain
|
||||
{
|
||||
function workflowchain_reverse(start_key, current_workflowstep_key, pkeylist)
|
||||
{
|
||||
// Doorloop directe voorgangers van current_workflowstep_key
|
||||
var sql_b = "SELECT m.mld_melding_key"
|
||||
+ " , r.mld_workflowstep_key previous_step"
|
||||
+ " FROM mld_melding m"
|
||||
+ " , mld_workflowrule r"
|
||||
+ " WHERE m.mld_workflowstep_key = r.mld_workflowstep_key"
|
||||
+ " AND m.mld_melding_start_key = " + start_key
|
||||
+ " AND r.mld_workflowstep_next_key = " + current_workflowstep_key;
|
||||
var oRs_b = Oracle.Execute(sql_b);
|
||||
while (!oRs_b.EOF)
|
||||
{
|
||||
var mkey = oRs_b("mld_melding_key").Value;
|
||||
if (!(mkey in pkeylist))
|
||||
{
|
||||
pkeylist[mkey] = mld.mld_prefix(mkey) + mkey + " ({0})";
|
||||
workflowchain_reverse(skey, oRs_b("previous_step").Value, pkeylist);
|
||||
}
|
||||
oRs_b.MoveNext();
|
||||
}
|
||||
oRs_b.Close();
|
||||
}
|
||||
|
||||
var pkeylist = {};
|
||||
workflowchain_reverse(skey, cur_step_key, pkeylist); // pkeylist is een object en dus by-reference parameter
|
||||
for (mkey in pkeylist)
|
||||
{
|
||||
parent_list.push ( { label: pkeylist[mkey]
|
||||
, module: "MLD"
|
||||
, key: mkey
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
var parent_list = mld.executedworkflowsteps(mld_key);
|
||||
generateFlexKenmerkBlock({stdm_arr : [mld_melding.stdm],
|
||||
mld_key : mld_key,
|
||||
parent_list : parent_list,
|
||||
|
||||
@@ -30,10 +30,6 @@ function mldClose(sluitmelding, ingesloten)
|
||||
if (sluitmelding == 1)
|
||||
{
|
||||
var mld_close = (Request.Form("mld_close").count == 1); // Die ook?
|
||||
var ismobile = getFParamInt("ismobile", 0) == 1; // Meld ik de opdracht met mijn mobile af?
|
||||
|
||||
if (ismobile)
|
||||
sluitmelding = 2; // // Via mobile afmelden nooit vragen maar gewoon melding afmelden (FSN#26329).
|
||||
|
||||
if (ingesloten.length > 1) // Vraag is al geweest
|
||||
{
|
||||
|
||||
@@ -23,6 +23,10 @@ var urole = getQParamSafe("urole");
|
||||
var has_opdrXUit = getQParamInt("has_opdrXUit", 0) == 1; // Wordt er gefilterd?
|
||||
var internuit = getQParamInt("opdrIUit", (has_opdrXUit ? 0 : 1)) == 1; // Interne uitvoerders.
|
||||
var externuit = getQParamInt("opdrEUit", (has_opdrXUit ? 0 : 1)) == 1; // Externe uitvoerders.
|
||||
// Beperken tot geplande of ongeplande? Standaard niet, beide tonen
|
||||
var has_opdrPlan = getQParamInt("has_opdrPlan", 0) == 1; // Wordt er gefilterd?
|
||||
var opdrplanned = getQParamInt("opdrPlanned", (has_opdrPlan ? 0 : 1)) == 1; // Geplande opdrachten
|
||||
var opdrunplanned = getQParamInt("opdrUnplanned", (has_opdrPlan ? 0 : 1)) == 1; // Ongeplande opdrachten
|
||||
|
||||
// let op: geen parameter moet equivalent zijn met een null parameter (NIET -1 oid)!
|
||||
var theparams = { urole: urole,
|
||||
@@ -53,6 +57,8 @@ var theparams = { urole: urole,
|
||||
handler_key: getQParamInt("handler", null),
|
||||
internuit: internuit,
|
||||
externuit: externuit,
|
||||
opdrplanned: opdrplanned,
|
||||
opdrunplanned: opdrunplanned,
|
||||
typeopdr_key: getQParamInt("typeopdr_key", null),
|
||||
stpen: getQParamInt("stpen", 0) == 1,
|
||||
strej: getQParamInt("strej", 0) == 1,
|
||||
|
||||
@@ -57,6 +57,8 @@ var urole = getQParamSafe("urole", "");
|
||||
var caddwgx = getQParamFloat("caddwgx", null); // x co<63>rdinaat van een specifieke plek in de ruimte die gehighlight moet worden.
|
||||
var caddwgy = getQParamFloat("caddwgy", null); // y co<63>rdinaat van een specifieke plek in de ruimte die gehighlight moet worden.
|
||||
|
||||
var opdr_opm = getFParam("opdr_opm", "");
|
||||
|
||||
var mld_info = {};
|
||||
var plaats_key = -1;
|
||||
var plaats_niveau = "";
|
||||
@@ -767,7 +769,17 @@ function askdoubleCallback(data, text)
|
||||
sgDept.setValue(data.prs_afdeling_key, data.prs_afdeling_naam, true, true, null, true);
|
||||
}
|
||||
}
|
||||
function mld_opmpaste()
|
||||
{
|
||||
$("#opmerk_close").focus();
|
||||
$("#opmerk_close").val($("#opmerk_close").val() + ($("#opmerk_close").val() != ""? "\n" : "") + "<%=safe.jsstring(opdr_opm)%>");
|
||||
$("#opmpaste").css("visibility", "hidden"); // Button na invoegen opmerking onzichtbaar maken zodat geen tweede keer toegevoegd kan worden.
|
||||
}
|
||||
$(function() {
|
||||
<% if (opdr_opm != "" && S("mld_add_mldopmerk_on_opdrclose") == 1)
|
||||
{ %>
|
||||
mld_opmpaste();
|
||||
<% } %>
|
||||
<% if (mld_info.melder_key != user_key) { %>
|
||||
$("[name='note']").focus(function() {
|
||||
$("#quickNoteTip").fadeIn();
|
||||
@@ -1883,6 +1895,8 @@ if (mld_key > -1 && this_mld.canClose && action != "forward")
|
||||
});
|
||||
|
||||
CONTROLGROUP_START();
|
||||
if (opdr_opm != "")
|
||||
BUTTON(L("lcl_mld_opm_paste"), {id: "opmpaste", click: "mld_opmpaste();", dataicon: "fa-clipboard"});
|
||||
BUTTON(L("lcl_close"), {click: "mld_close_submit();", dataicon: "fa fa-flag-checkered"});
|
||||
BUTTON(L("lcl_cancel"), {datarel: "back", dataicon: "fa-fclt-cancel"} );
|
||||
CONTROLGROUP_END();
|
||||
|
||||
@@ -41,6 +41,34 @@ var quicknoteSetting = S("pda_order_quick_note");
|
||||
var activeopdr = mld.getactiveopdracht(opdr_key);
|
||||
var hltopdr = mld.gethltopdrachten(opdr_key);
|
||||
|
||||
var askclosemld = false;
|
||||
|
||||
if (opdr_key > -1)
|
||||
{
|
||||
// Vragen om ook de melding te sluiten?
|
||||
var sql = "SELECT o.mld_melding_key"
|
||||
+ " , mto.mld_typeopdr_sluitmelding"
|
||||
+ " FROM mld_opdr o"
|
||||
+ " , mld_typeopdr mto"
|
||||
+ " WHERE o.mld_typeopdr_key = mto.mld_typeopdr_key"
|
||||
+ " AND o.mld_opdr_key = " + opdr_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
var mldkey = oRs("mld_melding_key").Value;
|
||||
var typeopdr_sluitmelding = oRs("mld_typeopdr_sluitmelding").Value;
|
||||
oRs.Close();
|
||||
|
||||
// Hoeveel opdrachten staan er open bij deze melding.
|
||||
var sql = "SELECT COUNT(mld_opdr_key) nrOpen"
|
||||
+ " FROM mld_opdr o"
|
||||
+ " WHERE o.mld_melding_key = " + mldkey
|
||||
+ " AND o.mld_statusopdr_key NOT IN (1, 6, 7, 9)";
|
||||
var oRs = Oracle.Execute(sql);
|
||||
var nrOpen = oRs("nrOpen").Value;
|
||||
oRs.Close();
|
||||
|
||||
askclosemld = (typeopdr_sluitmelding == 1 && nrOpen == 1);
|
||||
}
|
||||
|
||||
// Zijn bij deze opdracht alle verplichte kenmerken ingevuld voor het onderbreken?
|
||||
var reqStatusEmptyOpdr = [];
|
||||
reqStatusEmptyOpdr = mld.getActieKenmerkenOpdr(reqStatusEmptyOpdr, opdr_key, {halt: true});
|
||||
@@ -506,6 +534,23 @@ oRs.close();
|
||||
window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=<%=opdr_key%>";
|
||||
}
|
||||
|
||||
function MopdrCloseCallback(json, textStatus)
|
||||
{
|
||||
if (json.canCloseMld)
|
||||
{
|
||||
$("form[name=closeform]")[0].action = "<%=rooturl%>/appl/pda/melding.asp?mld_key=<%=mld_key%>#close-3-<%=mld_key%>";
|
||||
var hiddenField = document.createElement('input');
|
||||
hiddenField.setAttribute("type", "hidden");
|
||||
hiddenField.setAttribute("name", "opdr_opm");
|
||||
hiddenField.setAttribute("value", json.opdr_opm);
|
||||
document.forms.closeform.appendChild(hiddenField);
|
||||
|
||||
document.forms.closeform.submit();
|
||||
}
|
||||
else
|
||||
window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=<%=opdr_key%>";
|
||||
}
|
||||
|
||||
function opdr_close_submit()
|
||||
{
|
||||
// Zelf de form-parameters zetten: PasteFromSelectbox() werkt niet als er meerdere velden met id=opdr_opm zijn
|
||||
@@ -518,7 +563,7 @@ oRs.close();
|
||||
|
||||
$.post($("form[name=closeform]")[0].action,
|
||||
data,
|
||||
McltCallbackAndThen(function() { window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=<%=opdr_key%>"; }),
|
||||
McltCallbackAndThen(MopdrCloseCallback),
|
||||
"json");
|
||||
return false;
|
||||
}
|
||||
@@ -985,7 +1030,7 @@ oRs.close();
|
||||
|
||||
if (this_opdr.canClose)
|
||||
{ // Afmelden
|
||||
if (this_opdr.canOpmChange || hltopdr.aantal == 1)
|
||||
if (this_opdr.canOpmChange || hltopdr.aantal == 1 || askclosemld)
|
||||
BUTTON(L("lcl_close"), {linkid: "#opdr-4-" + opdr_key, dataicon: "fa fa-flag-checkered"});
|
||||
else
|
||||
BUTTON(L("lcl_close"), {click: "opdr_close()", dataicon: "fa fa-flag-checkered"});
|
||||
@@ -1134,6 +1179,10 @@ if (opdr_key > -1)
|
||||
|
||||
RWFIELD("opdr_opm_4", L("lcl_mld_final_remark"), mld_opdr.opdr_opmerking, {multi: true});
|
||||
}
|
||||
if (askclosemld)
|
||||
{
|
||||
CHB_FIELD("mld_close", L("lcl_mld_mld_close_try"));
|
||||
}
|
||||
if (hltopdr.aantal == 1)
|
||||
{
|
||||
CHB_FIELD("mld_hlt", L("lcl_mld_opdr_cont").format(hltopdr.opdracht));
|
||||
|
||||
@@ -704,7 +704,7 @@ for (var i = 0; i < r_a_key.length; i++)
|
||||
+ " FROM res_artikel ra"
|
||||
+ " WHERE ra.res_artikel_key = " + r_a_key[i].key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
trackarray.push(L("lcl_res_artupdate") + ": " + oRs("art_oms").Value);
|
||||
trackarray.push(L("lcl_res_artupdate").format(oRs("art_oms").Value));
|
||||
oRs.Close();
|
||||
}
|
||||
trackarray = trackarray.concat(flextrack);
|
||||
|
||||
@@ -70,6 +70,15 @@ switch (pmodule)
|
||||
case "PRS": isProfessional = xfunc.canRead("WEB_PRSSYS"); break; /* unsupported yet */
|
||||
}
|
||||
|
||||
function inArrayElm(needle, haystack, elmname)
|
||||
{ // Zoeken in een array van objecten op een waarde van een element.
|
||||
var length = haystack.length;
|
||||
for(var i = 0; i < length; i++) {
|
||||
if(haystack[i][elmname] == needle) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function bestandenlijst(pmodule, pniveau, pkey)
|
||||
{ // flexfiles.inc/flexProps() niet bruikbaar omdat die niet over kenmerken heen kan zoeken
|
||||
// Kan nu wel omdat de bestanden uit fac_bijlagen worden gelezen.
|
||||
@@ -87,24 +96,23 @@ function bestandenlijst(pmodule, pniveau, pkey)
|
||||
function bestandenlijstALL(pmodule, pniveau, pkey, pnoWorkflow)
|
||||
{
|
||||
var bestandlijst = bestandenlijst(pmodule, pniveau, pkey);
|
||||
if (pmodule == "MLD" && pniveau == "M" && !pnoWorkflow)
|
||||
if (pmodule == "MLD" && pniveau == "M" && !pnoWorkflow && S("mld_show_parent_attachments"))
|
||||
{
|
||||
var sk = pkey;
|
||||
var mk = pkey;
|
||||
while (true)
|
||||
var mld_lijst = mld.executedworkflowsteps(pkey, true);
|
||||
for (var i=0; i<mld_lijst.length; i++)
|
||||
{
|
||||
var sql = "SELECT mld_melding_start_key"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_key = " + mk;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
var sk = oRs("mld_melding_start_key").Value;
|
||||
if (!sk || sk == mk)
|
||||
break; // klaar
|
||||
bestandlijst.files = bestandlijst.files.concat(bestandenlijst(pmodule, pniveau, sk).files);
|
||||
mk = sk;
|
||||
var sk = mld_lijst[i].key;
|
||||
var mld_attachlijst = bestandenlijst(pmodule, pniveau, sk);
|
||||
for (var j=0; j<mld_attachlijst.files.length; j++)
|
||||
{
|
||||
if ( !inArrayElm(mld_attachlijst.files[j].key, bestandlijst.files, "key") )
|
||||
{
|
||||
bestandlijst.files.push(mld_attachlijst.files[j]);
|
||||
}
|
||||
}
|
||||
return bestandlijst
|
||||
}
|
||||
}
|
||||
return bestandlijst;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user