svn path=/Website/trunk/; revision=39178
This commit is contained in:
2018-09-20 15:57:21 +00:00
parent f42083fd64
commit f5c487f035
27 changed files with 771 additions and 564 deletions

View File

@@ -47,12 +47,6 @@ function model_mld_behandelgroep()
"label": L("mld_behandelgroep_oms"),
"typ": "varchar",
"translate": true
},
"email": {
"dbs": "mld_behandelgroep_email",
"label": L("mld_behandelgroep_email"),
"typ": "varchar",
"multiedit": true
}
};

View File

@@ -46,6 +46,15 @@ model_mld_disc_params =
"filter": "exact",
"multiedit": true
},
"srtgroep": {
"dbs": "mld_disc_params_srtgroep",
"label": L("mld_discipline_srtgroep"),
"typ": "number",
"LOV": L("mld_discipline_srtgroepLOV"),
"defaultvalue": "3",
"emptyoption": null,
"multiedit": true
},
"orderlimit1": {
"dbs": "mld_disc_params_bestellimiet",
"label": L("mld_discipline_bestellimiet1"),

View File

@@ -77,12 +77,21 @@ function model_mld_stdmelding()
},
"required": (mode == "edit")
},
"default_mld_ins_disc": {
"dbs": "mld_stdmelding_default_disc",
"typ": "key",
"label": L("mld_stdmelding_def_mld_ins"),
"foreign": "mld_discipline",
"module" : "MLDB",
"emptyoption": "",
"hidden_fld": !S("mld_ins_discipline"),
"multiedit": true
},
"notfrontend": {
"dbs": "mld_stdmelding_notfrontend",
"typ": "check0",
"label": L("lcl_mld_notfrontend"),
"multiedit": true
},
"costtype": {
"dbs": "prs_kostensoort_key",

View File

@@ -26,8 +26,7 @@ scaffolding(this_model,
"columns": [
"id",
"name",
"description",
"email"
"description"
]
},
"edit":{

View File

@@ -59,6 +59,7 @@ scaffolding(this_model,
"forward",
"frontendpriority",
"backofficegroup",
"srtgroep",
"autooffer",
"activity",
"fenotes",

View File

@@ -84,7 +84,8 @@ var this_params = {
"notify",
"costtype",
"expires",
"canrefer"
"canrefer",
"default_mld_ins_disc"
]
},
{

View File

@@ -38,6 +38,7 @@ switch (req_info)
result = null;
else
result.mld_status = oRs("mld_melding_status").Value;
oRs.Close();
break;
}
case "mld_discipline":
@@ -46,6 +47,45 @@ switch (req_info)
result = ins.ins_disciplineinfo(mld_ins_discipline_key);
break;
}
case "mld_ins_discipline":
{
var ins_discipline_key = getQParamInt("stdm_ins_discipline_key", -1);
// Wil ik info over vakgroep of behandelgroep?
var behandelgroep = (ins_discipline_key == -1 ? 1 : 0);
if (behandelgroep)
ins_discipline_key = getQParamInt("mld_ins_discipline_key");
var stdmChanged = getQParam("stdmChanged", false) ? 1 : 0;
var sql = "SELECT " + (behandelgroep
? "DECODE(COALESCE(sd.ins_srtdiscipline_prefix, ''), '', '', sd.ins_srtdiscipline_prefix || '-') || "
+ lcl.xsqla('md.ins_discipline_omschrijving', 'md.ins_discipline_key')
: "dp.mld_disc_params_srtgroep")
+ " FROM mld_disc_params dp"
+ " , mld_discipline md"
+ " , ins_srtdiscipline sd"
+ " WHERE dp.mld_ins_discipline_key = " + ins_discipline_key
+ " AND dp.mld_ins_discipline_key = md.ins_discipline_key"
+ " AND md.ins_srtdiscipline_key = sd.ins_srtdiscipline_key"
+ (behandelgroep ? " AND BITAND(dp.mld_disc_params_srtgroep, 2) = 2" : "")
var oRs = Oracle.Execute(sql);
if (oRs.eof)
result = null;
else
{
result = {};
if (stdmChanged)
result.stdmChanged = 1;
if (behandelgroep)
{
result.def_ins_disc_key = ins_discipline_key;
result.def_ins_disc_descr = oRs("ins_discipline_omschrijving").Value;
}
else
result.srtgroep = oRs("mld_disc_params_srtgroep").Value;
}
oRs.Close();
break;
}
case "mld_stdmelding":
{
var mld_stdmelding_key = getQParamInt("mld_stdmelding_key");
@@ -169,7 +209,6 @@ switch (req_info)
case "show_after_fwd":
{
var mld_key = getQParamInt("mld_key", -1);
var mfe = mld.func_enabled_melding(mld_key);
result.show = mfe.canReadAny;
@@ -178,6 +217,14 @@ switch (req_info)
break;
}
case "show_after_upd":
{
var mld_key = getQParamInt("mld_key", -1);
var mfe = mld.func_enabled_melding(mld_key);
result.show = mfe.canReadAny;
break;
}
case "mld_stdmelding_list":
{
var niveau = getQParam("niveau");

View File

@@ -101,19 +101,13 @@ mld = {setmeldingstatus:
Oracle.Execute(sql);
},
trackbehandelgroep:
function (mld_key, mld_behandelgroep_key)
{
var sql = "SELECT mld_behandelgroep_naam"
+ " FROM mld_behandelgroep"
+ " WHERE mld_behandelgroep_key = " + mld_behandelgroep_key;
var loRs = Oracle.Execute(sql);
if ( !loRs.eof )
var behandelgroep_str = L("lcl_mld_is_mldbhg_to") + loRs("mld_behandelgroep_naam").Value;
else
var behandelgroep_str = L("lcl_mld_is_mldbhg_none");
loRs.close();
shared.trackaction("MLDBHG", mld_key, behandelgroep_str);
notifybehandelgroep:
function (mld_key, mld_ins_discipline_key, code)
{ // Notificeer BO over secundaire vakgroeps-wijziging
if (!code) // In de toekomst zie ik hier nog wel een MLDACP of MLDFWD komen.
code = "MLDBHG";
if (mld_ins_discipline_key > 0)
Oracle.Execute("BEGIN mld.notifybackoffice ("+mld_key+", '"+code+"', 2); END;");
},
trackbehandelaar:
@@ -398,7 +392,7 @@ mld = {setmeldingstatus:
function (tcode)
{
return "(SELECT t.fac_tracking_datum "
+ " FROM fac_tracking t, fac_srtnotificatie st"
+ " FROM fac_tracking t, fac_srtnotificatie st"
+ " WHERE t.fac_srtnotificatie_key = st.fac_srtnotificatie_key"
+ " AND t.fac_tracking_refkey = m.mld_melding_key"
+ " AND st.fac_srtnotificatie_code = " + safe.quoted_sql(tcode) + ")";
@@ -1321,11 +1315,11 @@ mld = {setmeldingstatus:
var bld_key = params.bld_key;
var flr_key = params.flr_key;
var room_key = params.room_key;
var mld_behandelgroep_key = params.mld_behandelgroep_key;
var behandel_key = params.behandel_key; // wordt nog bij mobile gebruikt
var behandel_key_arr = params.behandel_key_arr;
var behandel2_key = params.behandel2_key; // wordt nog bij mobile gebruikt
var behandel2_key_arr = params.behandel2_key_arr;
var mld_ins_discipline_key_arr = params.mld_ins_discipline_key_arr;
var behandel_key = params.behandel_key; // wordt nog bij mobile gebruikt
var behandel_key_arr = params.behandel_key_arr;
var behandel2_key = params.behandel2_key; // wordt nog bij mobile gebruikt
var behandel2_key_arr= params.behandel2_key_arr;
var srtdisc_key = params.srtdisc_key;
var disc_key_arr = params.disc_key_arr;
var meldinggrp_key = params.meldinggrp_key;
@@ -1652,8 +1646,13 @@ mld = {setmeldingstatus:
sqln += " AND m.mld_melding_start_key IS NOT NULL"
+ " AND m.mld_workflowstep_key IS NULL" ; // workflowvervolgmeldingen wel gewoon
if (mld_behandelgroep_key)
sqln += " AND m.mld_behandelgroep_key = " + mld_behandelgroep_key;
if (mld_ins_discipline_key_arr && mld_ins_discipline_key_arr.length)
{
if (mld_ins_discipline_key_arr.length == 1 && mld_ins_discipline_key_arr[0] == -2)
sqln += " AND m.mld_ins_discipline_key IS NULL";
else
sqln += " AND m.mld_ins_discipline_key IN (" + mld_ins_discipline_key_arr.join(", ") + ")";
}
if (behandel_key_arr && behandel_key_arr.length)
{
@@ -1992,7 +1991,7 @@ mld = {setmeldingstatus:
sql = "SELECT mld_melding_omschrijving"
+ " , mld_melding_onderwerp"
+ " , mld_melding_datum"
+ " , s.mld_ins_discipline_key"
+ " , s.mld_ins_discipline_key stdm_ins_discipline_key"
+ " , s.prs_dienst_key"
+ " , m.mld_stdmelding_key"
+ " , m.mld_alg_onroerendgoed_keys"
@@ -2017,6 +2016,7 @@ mld = {setmeldingstatus:
+ " , m.mld_meldbron_nr"
+ " , m.mld_melding_externnr"
+ " , sd.ins_srtdiscipline_prefix"
+ " , sd2.ins_srtdiscipline_prefix mld_srtins_prefix"
+ " , md.ins_srtdiscipline_key"
+ " , m.mld_adres_key"
+ " , m.mld_melding_spoed"
@@ -2026,6 +2026,7 @@ mld = {setmeldingstatus:
+ " , sd.ins_srtdiscipline_ins"
+ " , sd.ins_srtdiscipline_bes"
+ " , " + lcl.xsqla('sd.ins_srtdiscipline_omschrijving', 'sd.ins_srtdiscipline_key')
+ " , " + lcl.xsql('sd2.ins_srtdiscipline_omschrijving', 'sd2.ins_srtdiscipline_key') + " mld_ins_srtdiscipline_omschrijving"
+ " , COALESCE(m.mld_alg_locatie_key, -1) alg_locatie_key"
+ " , COALESCE(g.alg_gebouw_key, g.alg_terreinsector_key, -1) alg_gebouw_key"
+ " , COALESCE(g.alg_verdieping_key, -1) alg_verdieping_key"
@@ -2039,11 +2040,12 @@ mld = {setmeldingstatus:
+ " WHERE alg_terreinsector_key = g.alg_terreinsector_key) bttype"
+ " , m.mld_workflowstep_key workflow"
+ " , m.mld_melding_start_key"
+ " , m.mld_behandelgroep_key"
+ " , m.mld_ins_discipline_key"
+ " , m.mld_melding_behandelaar_key behandelaar"
+ " , m.mld_melding_behandelaar2_key behandelaar2"
+ " , " + lcl.xsqla('md.ins_discipline_omschrijving', 'md.ins_discipline_key')
+ " , " + lcl.xsqla('s.mld_stdmelding_omschrijving','s.mld_stdmelding_key')
+ " , " + lcl.xsqla('s.mld_stdmelding_omschrijving', 's.mld_stdmelding_key')
+ " , " + lcl.xsql('md2.ins_discipline_omschrijving', 'md2.ins_discipline_key') + " mld_ins_discipline_omschrijving"
+ " , COALESCE(s.mld_stdmelding_directklaar, mdp.mld_disc_params_directklaar, 0) mld_directklaar"
+ " , mdp.mld_disc_params_frontendprio"
+ " , mdp.mld_disc_params_startdatum"
@@ -2063,6 +2065,7 @@ mld = {setmeldingstatus:
+ " , mdp.mld_disc_params_keten"
+ " , mdp.mld_disc_params_bonotify"
+ " , mdp.mld_disc_params_nobnotify"
+ " , mdp.mld_disc_params_srtgroep"
+ " , m.mld_melding_kto_type"
+ " , m.mld_melding_kto_key"
+ " , m.mld_melding_kto" // kto over mijzelf?
@@ -2093,9 +2096,11 @@ mld = {setmeldingstatus:
+ " , mld_stdmelding s"
+ " , alg_v_allonrgoed_gegevens g"
+ " , prs_perslid p"
+ " , mld_discipline md"
+ " , mld_discipline md" // informatie van vakgroep
+ " , mld_discipline md2" // informatie van behandelgroep (optioneel)
+ " , mld_disc_params mdp"
+ " , ins_srtdiscipline sd"
+ " , ins_srtdiscipline sd" // informatie van vakgroeptype
+ " , ins_srtdiscipline sd2" // informatie van behandelgroeptype (optioneel)
+ " , res_rsv_ruimte rr"
+ " , (SELECT mld.getactualuitvoer(" + mld_key + ") actualuitvoertijd FROM DUAL) au"
+ " WHERE mld_melding_key = " + mld_key
@@ -2104,12 +2109,14 @@ mld = {setmeldingstatus:
+ " AND m.prs_perslid_key = p.prs_perslid_key"
+ " AND sd.ins_srtdiscipline_key = md.ins_srtdiscipline_key"
+ " AND md.ins_discipline_key = s.mld_ins_discipline_key"
+ " AND m.mld_ins_discipline_key = md2.ins_discipline_key(+)"
+ " AND md2.ins_srtdiscipline_key = sd2.ins_srtdiscipline_key(+)"
+ " AND mdp.mld_ins_discipline_key = s.mld_ins_discipline_key"
+ " AND m.res_rsv_ruimte_key = rr.res_rsv_ruimte_key(+)";
var oRs = Oracle.Execute(sql);
if (oRs.Eof)
{
shared.record_not_found(L("lcl_complain") + " " +mld_key);
shared.record_not_found(L("lcl_complain") + " " + mld_key);
}
var alg_level = 0;
@@ -2126,7 +2133,7 @@ mld = {setmeldingstatus:
mld_omschr: oRs("mld_melding_omschrijving").Value,
mld_onderwerp: oRs("mld_melding_onderwerp").Value,
melddatum: new Date( oRs("mld_melding_datum").Value),
disc: oRs("mld_ins_discipline_key").Value,
disc: oRs("stdm_ins_discipline_key").Value,
dienst_key: oRs("prs_dienst_key").Value,
stdm: oRs("mld_stdmelding_key").Value,
place: oRs("mld_alg_onroerendgoed_keys").Value,
@@ -2155,6 +2162,7 @@ mld = {setmeldingstatus:
meldbron_nr: oRs("mld_meldbron_nr").Value,
externnr: oRs("mld_melding_externnr").Value,
prefix: oRs("ins_srtdiscipline_prefix").Value, // null for no prefix
mld_srtins_prefix: oRs("mld_srtins_prefix").Value, // null for no prefix
srtdisc: oRs("ins_srtdiscipline_key").Value,
deladdress: oRs("mld_adres_key").Value,
mprio: oRs("mld_melding_spoed").Value,
@@ -2163,6 +2171,7 @@ mld = {setmeldingstatus:
show_ins: oRs("ins_srtdiscipline_ins").Value == 1,
show_bes: oRs("ins_srtdiscipline_bes").Value == 1,
srtdisc_oms: oRs("ins_srtdiscipline_omschrijving").Value,
mld_srtdisc_oms: oRs("mld_ins_srtdiscipline_omschrijving").Value,
loc_key: oRs("alg_locatie_key").Value,
bld_key: oRs("alg_gebouw_key").Value,
flr_key: oRs("alg_verdieping_key").Value,
@@ -2170,11 +2179,12 @@ mld = {setmeldingstatus:
bttype: oRs("bttype").Value? oRs("bttype").Value : "",
noWorkflow: (oRs("workflow").Value == null),
Startkey: oRs("mld_melding_start_key").Value,
mld_behandelgroep_key: oRs("mld_behandelgroep_key").Value,
mld_ins_discipline_key: oRs("mld_ins_discipline_key").Value,
behandel_key: oRs("behandelaar").Value,
behandel2_key: oRs("behandelaar2").Value,
ins_discipline_omschrijving: oRs("ins_discipline_omschrijving").Value,
mld_stdmelding_omschrijving: oRs("mld_stdmelding_omschrijving").Value,
mld_ins_discipline_omschrijving: oRs("mld_ins_discipline_omschrijving").Value,
is_fo_melding: oRs("mld_directklaar").Value > 0, // Welke knoppen mag ik zien?
directklaar: oRs("mld_directklaar").Value,
show_start_date: oRs("mld_disc_params_startdatum").Value == 1,
@@ -2193,6 +2203,7 @@ mld = {setmeldingstatus:
keten: oRs("mld_disc_params_keten").Value,
bonotify: oRs("mld_disc_params_bonotify").Value,
nobnotify: oRs("mld_disc_params_nobnotify").Value,
srtgroep: oRs("mld_disc_params_srtgroep").Value,
kto_type: oRs("mld_melding_kto_type").Value,
kto_key: oRs("mld_melding_kto_key").Value || -1,
kto: oRs("mld_melding_kto").Value == 1,
@@ -2216,6 +2227,12 @@ mld = {setmeldingstatus:
result.workflowRoot = (!result.noWorkflow && result.Startkey == mld_key);
// Create discipline Array for Authorisation, combining Vakgroep & Behandelgroep
result.aut_disc_arr = [];
result.aut_disc_arr.push(result.disc);
if (S("mld_ins_discipline") && result.mld_ins_discipline_key > 0)
result.aut_disc_arr.push(result.mld_ins_discipline_key);
if (result.locked_user_key)
{
var expire = new Date;
@@ -2320,6 +2337,7 @@ mld = {setmeldingstatus:
+ " , o.mld_melding_key"
+ " , o.mld_opdr_contactpersoon"
+ " , o.mld_opdr_omschrijving"
+ " , o.mld_opdr_parent_key"
+ " , fac.count_Work_Days(mld_opdr_datumbegin, mld_opdr_einddatum) aantal_dagen"
+ " , o.mld_opdr_uren"
+ " , o.mld_opdr_uren_refiat"
@@ -2486,6 +2504,7 @@ mld = {setmeldingstatus:
mld_key: oRs("mld_melding_key").Value,
contactpers: oRs("mld_opdr_contactpersoon").Value,
opdr_omschr: oRs("mld_opdr_omschrijving").Value,
parent_key: oRs("mld_opdr_parent_key").Value,
period: oRs("aantal_dagen").Value || 0,
hours: hours,
hours_refiat: hours_refiat,
@@ -2807,6 +2826,7 @@ mld = {setmeldingstatus:
+ " , DECODE(COALESCE(sd.ins_srtdiscipline_prefix, ''), '', '', sd.ins_srtdiscipline_prefix) prefix"
+ ", "+ lcl.xsqla('sd.ins_srtdiscipline_omschrijving', 'sd.ins_srtdiscipline_key')
+ " , " + lcl.xsqla('md.ins_discipline_omschrijving', 'md.ins_discipline_key')
+ " , ms.mld_stdmelding_default_disc" // Default behandelgroep
+ " , ms.mld_stdmelding_t_uitvoertijd.tijdsduur uitvoertijd" // Uitvoertijd Normaal
+ " , ms.mld_stdmelding_t_uitvtijd_pr1.tijdsduur uitvoertijd1" // Uitvoertijd Kritisch
+ " , ms.mld_stdmelding_t_uitvtijd_pr2.tijdsduur uitvoertijd2" // Uitvoertijd Hoog
@@ -2942,6 +2962,7 @@ mld = {setmeldingstatus:
notify: oRs("mld_stdmelding_notify").Value,
kostensoort: oRs("prs_kostensoort_key").Value,
startdatum: oRs("mld_disc_params_startdatum").Value == 1,
default_ins_disc_key: oRs("mld_stdmelding_default_disc").Value,
accepttijd: oRs("accepttijd_t").Value,
eenheid_accepttijd: oRs("accepttijd_e").Value || 'D',
planbaar: oRs("mld_stdmelding_planbaar").Value,
@@ -3302,7 +3323,12 @@ mld = {setmeldingstatus:
oRs.Close();
}
else // ptype == "D"
var lins_discipline_string = "" + pkey;
{
if (pkey == "object" && pkey instanceof Array)
var lins_discipline_string = pkey.join(", ");
else
var lins_discipline_string = "" + pkey;
}
var mresult = user.func_enabled("MLD",
lins_discipline_string,
-1, //moRs("mld_alg_onroerendgoed_keys").Value, // TODO: Wat als geen INS_SRTDISCIPLINE_ALG?
@@ -3382,7 +3408,8 @@ mld = {setmeldingstatus:
func_enabled_melding: // Wat mag ik zoal op deze specifieke melding?
function _func_enabled_melding(pmld_melding_key, params) {
params = params || {};
var msql = "SELECT sm.mld_ins_discipline_key"
var msql = "SELECT sm.mld_ins_discipline_key stdm_ins_discipline_key"
+ " , m.mld_ins_discipline_key mld_ins_discipline_key"
+ " , m.mld_alg_onroerendgoed_keys"
+ " , m.mld_alg_locatie_key"
+ " , m.mld_melding_status"
@@ -3459,14 +3486,44 @@ mld = {setmeldingstatus:
// Ben ik ook verantwoordelijk voor meldingen als vervanger van de melder
var isVerantwoordelijke = (user.isCollega(melder_key));
var stdm_ins_discipline_key = moRs("stdm_ins_discipline_key").Value;
var mld_ins_discipline_key = moRs("mld_ins_discipline_key").Value;
var disc_arr = [];
disc_arr.push(stdm_ins_discipline_key);
if (S("mld_ins_discipline") && mld_ins_discipline_key > 0)
disc_arr.push(mld_ins_discipline_key);
var mresult = user.func_enabled2("MLD",
{ ins_discipline_key: moRs("mld_ins_discipline_key").Value,
{ ins_discipline_key: disc_arr,
alg_key: moRs("mld_alg_onroerendgoed_keys").Value, // TODO: Wat als geen INS_SRTDISCIRPLINE_ALG?
loc_key: moRs("mld_alg_onroerendgoed_keys").Value == null? moRs("mld_alg_locatie_key").Value : null,
prs_key: moRs("prs_perslid_key").Value,
knownread: params.knownread
}
);
mresult.canFEread = mresult.canRead("WEB_MLDUSE") && user.isCollega(moRs("prs_perslid_key").Value);
mresult.canFEwrite = mresult.canWrite("WEB_MLDUSE") && user.isCollega(moRs("prs_perslid_key").Value);
if (S("mld_ins_discipline") && mld_ins_discipline_key > 0)
{
var mresult_vakg = user.func_enabled2("MLD",
{ ins_discipline_key: stdm_ins_discipline_key,
alg_key: moRs("mld_alg_onroerendgoed_keys").Value, // TODO: Wat als geen INS_SRTDISCIRPLINE_ALG?
loc_key: moRs("mld_alg_onroerendgoed_keys").Value == null? moRs("mld_alg_locatie_key").Value : null,
prs_key: moRs("prs_perslid_key").Value,
knownread: params.knownread,
isOptional: true
}
);
mresult_vakg.canFEread = mresult_vakg.canRead("WEB_MLDUSE") && user.isCollega(moRs("prs_perslid_key").Value);
mresult_vakg.canFEwrite = mresult_vakg.canWrite("WEB_MLDUSE") && user.isCollega(moRs("prs_perslid_key").Value);
}
else
var mresult_vakg = mresult;
var mresult_no_disc = user.func_enabled2("MLD",
{ alg_key: moRs("mld_alg_onroerendgoed_keys").Value, // TODO: Wat als geen INS_SRTDISCIRPLINE_ALG?
loc_key: moRs("mld_alg_onroerendgoed_keys").Value == null? moRs("mld_alg_locatie_key").Value : null,
@@ -3474,10 +3531,6 @@ mld = {setmeldingstatus:
knownread: params.knownread
}
);
mresult.canFEread = mresult.canRead("WEB_MLDUSE") && user.isCollega(moRs("prs_perslid_key").Value);
mresult.canFEwrite = mresult.canWrite("WEB_MLDUSE") && user.isCollega(moRs("prs_perslid_key").Value);
moRs.Close();
// -- CONTROLE LEESRECHTEN --
mresult.canReadAny = mresult.canRead("WEB_MLDFOF") ||
@@ -3607,8 +3660,8 @@ mld = {setmeldingstatus:
!is_planned_action;
mresult.canDoorzet = mresult.canWrite("WEB_MLDFOF") && !is_planned_action;
mresult.canClose = mresult.canWrite("WEB_MLDFOF") && !is_wf_root && !is_planned_action;
mresult.canVakgChange = mresult.canWrite("WEB_MLDFOF");
mresult.canStdmChange = mresult.canWrite("WEB_MLDFOF") && !is_wf_root;
mresult.canVakgChange = mresult_vakg.canWrite("WEB_MLDFOF");
mresult.canStdmChange = mresult_vakg.canWrite("WEB_MLDFOF") && !is_wf_root;
mresult.canKostChange = mresult.canWrite("WEB_MLDFOF");
mresult.canFlexChange = mresult.canWrite("WEB_MLDFOF");
mresult.canPlaatsChange = mresult.canWrite("WEB_MLDFOF");
@@ -3623,7 +3676,7 @@ mld = {setmeldingstatus:
mresult.canChange = (S("mld_rejected_is_open") == 1 && mresult.canWrite("WEB_MLDFOF"));
mresult.canChangeUrole = 'fo';
mresult.canContinue = (mresult.canWrite("WEB_MLDFOF") || mresult.canWrite("WEB_MLDBOF")) && mresult_no_disc.canWrite("WEB_MLDFOF") && !is_planned_action && !S("mld_disable_continuation"); //mldfof_write;
mresult.canVakgChange = mresult.canWrite("WEB_MLDFOF");
mresult.canVakgChange = mresult_vakg.canWrite("WEB_MLDFOF");
mresult.canStdmChange = !is_wf_root;
mresult.canKostChange = ((S("mld_rejected_is_open") == 1 && mresult.canWrite("WEB_MLDFOF")) || mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3") || mresult.canFEwrite);
mresult.canFlexChange = true;
@@ -3646,10 +3699,10 @@ mld = {setmeldingstatus:
mresult.canReject = ((mresult.canWrite("WEB_MLDBOF") && !activeMLDBO3) || mresult.canWrite("WEB_MLDBO3")) &&
(!is_wf_step || (is_wf_step && mld.wfIsRejectable(wfstep))) &&
!is_planned_action;
mresult.canForward = (mresult.canWrite("WEB_MLDBOF") && !is_planned_action);
mresult.canForward = (mresult_vakg.canWrite("WEB_MLDBOF") && !is_planned_action);
mresult.canClose = (mresult.canWrite("WEB_MLDBOF") || (mresult.canWrite("WEB_MLDFOF") && (params && params.verynew))) && !is_wf_root && !is_planned_action;
mresult.canContinue = (mresult.canWrite("WEB_MLDFOF") || mresult.canWrite("WEB_MLDBOF")) && mresult_no_disc.canWrite("WEB_MLDFOF") && !is_planned_action && !S("mld_disable_continuation"); //mldfof_write;
mresult.canVakgChange = (mresult.canWrite("WEB_MLDFOF") || mresult.canFEwrite || mresult.canWrite("WEB_MLDBOF"));
mresult.canVakgChange = (mresult_vakg.canWrite("WEB_MLDFOF") || mresult_vakg.canFEwrite || mresult_vakg.canWrite("WEB_MLDBOF"));
mresult.canStdmChange = !is_wf_root;
mresult.canKostChange = (mresult.canWrite("WEB_MLDFOF") || mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3") || mresult.canFEwrite);
mresult.canFlexChange = true;
@@ -3674,11 +3727,11 @@ mld = {setmeldingstatus:
mresult.canReject = ((mresult.canWrite("WEB_MLDBOF") && !activeMLDBO3) || mresult.canWrite("WEB_MLDBO3")) &&
(!is_wf_step || (is_wf_step && mld.wfIsRejectable(wfstep))) &&
!is_planned_action;
mresult.canForward = (mresult.canWrite("WEB_MLDBOF") && !is_planned_action); // willekeurige vakgroep
mresult.canForward = (mresult_vakg.canWrite("WEB_MLDBOF") && !is_planned_action); // willekeurige vakgroep
mresult.canClose = (mresult.canWrite("WEB_MLDBOF") && !is_wf_root && !is_planned_action);
mresult.canContinue = (mresult.canWrite("WEB_MLDFOF") || mresult.canWrite("WEB_MLDBOF")) && mresult_no_disc.canWrite("WEB_MLDFOF") && !is_planned_action && !S("mld_disable_continuation"); //mldfof_write;
mresult.canVakgChange = (mresult.canWrite("WEB_MLDBOF")); // vakgroep waar je zelf schrijfrechten op hebt
mresult.canStdmChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3")) && !is_wf_root;
mresult.canVakgChange = (mresult_vakg.canWrite("WEB_MLDBOF")); // vakgroep waar je zelf schrijfrechten op hebt
mresult.canStdmChange = (mresult_vakg.canWrite("WEB_MLDBOF") || mresult_vakg.canWrite("WEB_MLDBO3")) && !is_wf_root;
mresult.canKostChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3"));
mresult.canFlexChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3") || mresult.canWrite("WEB_MLDFOF"));
mresult.canPlaatsChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3"));
@@ -3695,7 +3748,7 @@ mld = {setmeldingstatus:
(S("mld_sla_indult_for_mldafr_only") == 1 && mresult.canWrite("WEB_MLDAFR"));
break;
case 4: // Geaccepteerd ('In behandeling') (expliciet mld_accept_save.asp of als backoffice bewerkt en opslaat)
mresult.canStdmChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3")) && !is_wf_root
mresult.canStdmChange = (mresult_vakg.canWrite("WEB_MLDBOF") || mresult_vakg.canWrite("WEB_MLDBO3")) && !is_wf_root
mresult.canKostChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3") || mresult.canFEwrite);
mresult.canFlexChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3"));
mresult.canPlaatsChange = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO3"));
@@ -3712,7 +3765,7 @@ mld = {setmeldingstatus:
mresult.canChangeUrole = mresult.canWrite("WEB_MLDBOF")? 'bo' : 'fo';
mresult.canForward = (!is_wf_root &&
(S("mld_forward_if_active") == 1 || (keten && !hasopdrachten)) && // Een melding met opdrachten mag niet meer doorgestuurd worden (MAYF#36363).
mresult.canWrite("WEB_MLDBOF") &&
mresult_vakg.canWrite("WEB_MLDBOF") &&
!is_planned_action);
mresult.canForwardKeten = (!is_wf_root && S("mld_forward_if_active") == 0 && mresult.canForward); // is het echt vanwege keten?
mresult.canClose = (mresult.canWrite("WEB_MLDBOF") || mresult.canWrite("WEB_MLDBO2")) &&
@@ -5154,9 +5207,7 @@ mld = {setmeldingstatus:
var ks_key = params.ks_key;
var opdr_key = params.opdr_key; // opdracht nummer is voor de gebruiker hetzelfde als mld_key
var intopdr_key = params.intopdr_key; // de technische echte mld_opdr_key
var mld_behandelgroep_key = mld_behandelgroep_key;
var behandel_key = params.behandel_key;
var behandel_key2 = params.behandel_key2;
var uitvopdr_key = params.uitvopdr_key;
var beh_key_arr = params.beh_key_arr; // Array met keys (e.g. [3, 4, 5])
var searchtekst = params.searchtekst;

View File

@@ -11,7 +11,7 @@
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/disciplineselector.inc" -->
<!-- #include file="../Shared/stdmeldingselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<!-- #include file="../Shared/json2.js" -->
@@ -106,8 +106,10 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
<%
var mld_stdm = "";
var prefix = "";
var mld_srtins_prefix = "";
var oldRemark = "";
var ins_discipline_omschrijving = "";
var mld_ins_discipline_omschrijving = "";
var req = false;
if (ingesloten.length == 1)
{
@@ -115,21 +117,29 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
+ " , sm.mld_stdmelding_key"
+ " , mm.mld_melding_opmerking"
+ " , " + lcl.xsqla('md.ins_discipline_omschrijving', 'md.ins_discipline_key')
+ " , " + lcl.xsql('md2.ins_discipline_omschrijving', 'md2.ins_discipline_key') + " mld_ins_discipline_omschrijving"
+ " , sd.ins_srtdiscipline_prefix"
+ " , sd2.ins_srtdiscipline_prefix mld_srtins_prefix"
+ " FROM mld_melding mm"
+ " , mld_stdmelding sm"
+ " , mld_discipline md"
+ " , mld_discipline md2"
+ " , ins_srtdiscipline sd"
+ " , ins_srtdiscipline sd2"
+ " WHERE mld_melding_key = " + ingesloten[0]
+ " AND mm.mld_stdmelding_key = sm.mld_stdmelding_key"
+ " AND sm.mld_ins_discipline_key = md.ins_discipline_key"
+ " AND md.ins_srtdiscipline_key = sd.ins_srtdiscipline_key";
+ " AND mm.mld_ins_discipline_key = md2.ins_discipline_key(+)"
+ " AND md.ins_srtdiscipline_key = sd.ins_srtdiscipline_key"
+ " AND md2.ins_srtdiscipline_key = sd2.ins_srtdiscipline_key(+)";
oRs = Oracle.Execute(sql);
mld_stdm = oRs("mld_stdmelding_key").value;
prefix = oRs("ins_srtdiscipline_prefix").value || "";
mld_srtins_prefix: oRs("mld_srtins_prefix").Value || "";
oldRemark = oRs("mld_melding_opmerking").value;
ins_discipline_omschrijving = oRs("ins_discipline_omschrijving").value;
mld_ins_discipline_omschrijving = oRs("mld_ins_discipline_omschrijving").value;
oRs.close();
}
BLOCK_START("mldAccept", L("lcl_menu_mld_bo_accept") + (ingesloten.length == 1? " " + prefix + ingesloten[0]: ""));
@@ -149,19 +159,6 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
// Behandelaar
if (this_mld.canBOwrite || this_mld.canFOwrite)
{
if (S("mld_behandelgroep") && (mld_info.mld_behandelgroep_key > 0 || this_mld.canAfhandChange))
{
sql = "SELECT mld_behandelgroep_key, mld_behandelgroep_naam"
+ " FROM mld_behandelgroep"
+ " ORDER BY 2, 1";
FCLTselector("mld_behandelgroep", sql,
{ label: L("mld_behandelgroep"),
initKey: mld_info.mld_behandelgroep_key,
emptyOption: "",
readonly: !this_mld.canAfhandChange
});
}
%>
<input type="hidden" id="prs_key" name="prs_key" value="<%=mld_info.melder_key%>">
<input type="hidden" id="disc_key" name="disc_key" value="<%=mld_info.disc%>">
@@ -171,7 +168,7 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
{urlParam: "disc_key", field: "disc_key", init: mld_info.disc }];
if (mld_info.show_alg)
urlAdd.push({urlParam: "loc_key", field: "loc_key", init: mld_info.loc_key});
urlAdd.push({urlParam: "loc_key", field: "loc_key", init: mld_info.loc_key});
FCLTpersoonselector("sBehandel",
"sgBehandelaar",
@@ -183,17 +180,6 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
readonly: !this_mld.canAfhandChange,
filtercode: (mld_info.mld_status == 0 ? "BEHF" : "BEHB")
});
if (S("mld_behandelaar2"))
FCLTpersoonselector("sBehandel2",
"sgBehandelaar",
{ idadd: 2,
label: L("lcl_mld_behandelaar2"),
autlevel: this_mld.authparams(autfunction) && this_mld.authparams(autfunction).PRSwritelevel,
urlAdd: urlAdd,
required: false,
readonly: !this_mld.canAfhandChange,
filtercode: (mld_info.mld_status == 0 ? "BH2F" : "BH2B")
});
}
// Reden accepteren

View File

@@ -40,9 +40,7 @@ var maybeDouble = getFParamInt("maybeDouble", 0) == 1;
var urole = getFParam("urole", "bo");
var opmerk = getFParam("opmerk", "");
var mld_behandelgroep_key = getFParamInt("mld_behandelgroep", -1);
var behandelaar_key = getFParamInt("sBehandel", user_key);
var behandelaar2_key = getFParamInt("sBehandel2", -1);
var behandelaar_key = getFParamInt("sBehandel", user_key);
// Geen autfunction bepaald. Je komt bij FIN niet binnen met een bepaalde rol (urole).
// Alleen PRSreadlevel en PRSwritelevel van belang want fac_functie_min_level = 7 (lezen en schrijven organisatie)
@@ -68,9 +66,7 @@ for (var i = 0; i < mld_key_arr.length; i++)
// Als je niet accepteert met MLDBO3 rechten en je hebt niet de BO3 notificatie aanstaan dan de behandelaar opslaan.
// BO notificatie accept 0=niet, 1=bof, 2=bo3, 3=bo3 (aanmaak nieuwe melding) en dan bof (accepteren melding)
ingesloten.push({mld_key: mld_key_arr[i],
saveBehandelaar: !this_mld.canWrite("WEB_MLDBO3") && mld_info.bonotify < 2 && (mld_info.behandel_key || -1) != behandelaar_key, // Behandelaar alleen in situatie 1 voor bonotify 0 (niet) en 1 (bof) tracken.
saveBehandelaar2: S("mld_behandelaar2") && !this_mld.canWrite("WEB_MLDBO3") && mld_info.bonotify < 2 && (mld_info.behandel2_key || -1) != behandelaar2_key,
saveBehandelgroep: S("mld_behandelgroep") && (mld_info.mld_behandelgroep_key || -1) != mld_behandelgroep_key
saveBehandelaar: !this_mld.canWrite("WEB_MLDBO3") && mld_info.bonotify < 2 && (mld_info.behandel_key || -1) != behandelaar_key // Behandelaar alleen in situatie 1 voor bonotify 0 (niet) en 1 (bof) tracken.
});
toberejected++;
}
@@ -87,12 +83,8 @@ for (var i = 0; i < ingesloten.length; i++)
oRs.Close();
var setLines = [];
if (ingesloten[i].saveBehandelgroep)
setLines.push("mld_behandelgroep_key = " + (mld_behandelgroep_key != -1 ? mld_behandelgroep_key : "null"));
if (ingesloten[i].saveBehandelaar)
setLines.push("mld_melding_behandelaar_key = " + (behandelaar_key != -1 ? behandelaar_key : "null"));
if (ingesloten[i].saveBehandelaar2)
setLines.push("mld_melding_behandelaar2_key = " + (behandelaar2_key != -1 ? behandelaar2_key : "null"));
if (opmerk)
{
if (S("mld_note_mode") == 2)
@@ -131,14 +123,8 @@ for (var i = 0; i < ingesloten.length; i++)
// Alleen als behandelaar is opgeslagen dit tracken.
// Als behandelaar_key==user_key dan wel tracking maar geen notificatie
if (ingesloten[i].saveBehandelgroep)
mld.trackbehandelgroep(ingesloten[i].mld_key, mld_behandelgroep_key);
if (ingesloten[i].saveBehandelaar)
mld.trackbehandelaar(ingesloten[i].mld_key, behandelaar_key, behandelaar_key == user_key);
if (ingesloten[i].saveBehandelaar2)
mld.trackbehandelaar2(ingesloten[i].mld_key, behandelaar2_key, behandelaar2_key == user_key);
}
var result = {success: true, message: "", key: mld_key_arr.join(",")};

View File

@@ -107,6 +107,7 @@ else // Nieuwe melding
var mld_defaultstdmelding = getQParamInt("mld_defaultstdmelding", -1);
var disc = getQParamInt("disc", -1);
var mld_ins_discipline_key = getQParamInt("mld_ins_discipline_key", -1);
var loc_key = getQParamInt("loc_key", -1);
var bld_key = getQParamInt("bld_key", -1);
var flr_key = -1;
@@ -425,7 +426,7 @@ if (copy)
mld_melding.deladdress = mld_melding_copy.deladdress;
mld_melding.mld_omschr = mld_melding_copy.mld_omschr;
mld_melding.remark = mld_melding_copy.remark;
mld_melding.mld_behandelgroep_key = mld_melding_copy.mld_behandelgroep_key;
mld_melding.mld_ins_discipline_key = mld_melding_copy.mld_ins_discipline_key;
mld_melding.behandel_key = mld_melding_copy.behandel_key;
mld_melding.behandel_key2 = mld_melding_copy.behandel_key2;
mld_melding.mld_onderwerp = mld_melding_copy.mld_onderwerp;
@@ -747,14 +748,13 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
if (eindlevel >= 5)
urlAdd.push({urlParam: "roomkey", field: "ruimtekey", init: mld_melding.room_key});
}
FCLTdisciplineselector("disc",
"sgDisc",
{ label: L("lcl_vakgroup"),
disc_key: mld_melding.disc,
module: "MLD",
perslidKey: (lBestaandeMelding ? mld_melding.melder_key : user_key),
autfunctionKey: authparams.autfunctionkey,
autfunctionKey: S("mld_ins_discipline") ? -1 : authparams.autfunctionkey, // Dan mag ik alles zien (readonly, zie: func_enabled)
autRW: "W",
srtdisc_key: mld_melding.srtdisc,
ins_key: ins_key,
@@ -780,7 +780,7 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
"sgStdm",
{ label: L("lcl_complain"),
stdmelding_key: mld_melding.stdm,
autfunctionKey: authparams.autfunctionkey,
autfunctionKey: S("mld_ins_discipline") ? -1 : authparams.autfunctionkey, // Dan mag ik alles zien (readonly, zie: func_enabled)
srtdisc_key: mld_melding.srtdisc,
ins_key: ins_key,
readonly: (mld_defaultstdmelding > 0 || (mld_key > 0 && !this_mld.canStdmChange) || (lBestaandeMelding && stdm_info.slabewaken && mld_melding.respijt > 0)),
@@ -986,18 +986,25 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
BLOCK_START("mldInfo", (lBestaandeMelding ? L("lcl_complain") + " " + (mld_melding.prefix != null? mld_melding.prefix : "") + mld_key : L("lcl_mld_new")));
if (lBestaandeMelding)
{
if (S("mld_behandelgroep"))
if (S("mld_ins_discipline"))
{
sql = "SELECT mld_behandelgroep_key, mld_behandelgroep_naam"
+ " FROM mld_behandelgroep"
+ " ORDER BY 2, 1";
FCLTselector("mld_behandelgroep", sql,
{ label: L("mld_behandelgroep"),
initKey: mld_melding.mld_behandelgroep_key,
emptyOption: "",
readonly: !(this_mld.canBOwrite || this_mld.canFOwrite)
});
FCLTdisciplineselector("mld_ins_discipline",
"sgDisc",
{ idadd: 2,
label: L("mld_ins_discipline"),
disc_key: mld_melding.mld_ins_discipline_key,
module: "MLDB",
perslidKey: (lBestaandeMelding ? mld_melding.melder_key : user_key),
autfunctionKey: -1, // alles is toegestaan! authparams.autfunctionkey,
autRW: "W",
readonly: (mld_key > 0 && !this_mld.canAfhandChange),
required: false,
hidden: !(mld_melding.srtgroep & 1),
filtercode: (frontend? "FE" : ((fronto && (mld_key < 0)) ? "VD" : "")),
moreinfo: !(mld_key > 0 && !this_mld.canAfhandChange) &&
(user.checkAutorisation("WEB_FAQUSE", true) || user.checkAutorisation("WEB_FAQFOF", true)) && // !readonly && rechten
!frontend
});
}
@@ -1023,6 +1030,7 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
autlevel: this_mld.authparams(autfunction) && this_mld.authparams(autfunction).PRSwritelevel,
urlAdd: urlAdd,
readonly: !this_mld.canAfhandChange,
hidden: !(mld_melding.srtgroep & 1),
filtercode: (mld_melding.mld_status == 0 ? "BH2F" : "BH2B")
});
@@ -1139,21 +1147,11 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
referenceKey: stdm_info.kanverwijzen? mld_melding.kto_key : -1,
referenceType: mld_melding.kto_type, // De waarde komt standaard in het extraParamField field ref_type.
excludemldkey: mld_key > 0? mld_key: null,
hidden: !stdm_info.kanverwijzen,
urlAdd: [{urlParam: "prs_key", field: (personForExist? "personFor" : "person"), init: (personForExist? mld_melding.perslid_key_voor : mld_melding.melder_key)},
{urlParam: "stdm_key", field: "stdm", init: mld_melding.stdm},
{urlParam: "filtercode", field: "filtercode", init: ((stdm_info.kanverwijzen==128)?"M" :"O")}]
});
if (!stdm_info.kanverwijzen)
{
%>
<script type="text/javascript">
$(function()
{
sgRef.makeHidden();
});
</script>
<%
}
}
// Naar een groeperende nieuwere melding

View File

@@ -99,11 +99,25 @@ function mld_submit_callback(json)
}
if (json.success)
{
if (json.autoprint)
{
FcltMgr.windowopen('./mld_opdr_xml.asp?mld_key=' + json.mld_key,'pr_rep','resizable=1,scrollbars=1,menubar=1,toolbar=1');
}
FcltMgr.closeDetail(window, json);
var data = { req_info: "show_after_upd",
mld_key: json.mld_key };
$.getJSON("./get_mld_info_ajax.asp",
data,
function(auth) {
if (auth.show)
{
if (json.autoprint)
{
FcltMgr.windowopen('./mld_opdr_xml.asp?mld_key=' + json.mld_key,'pr_rep','resizable=1,scrollbars=1,menubar=1,toolbar=1');
}
FcltMgr.closeDetail(window, json);
}
else
{
FcltMgr.topmanager().window.$.toast({ text: json.noShowToaster, icon: "success", position : "top-center", loaderBg: "#fff"});
parent.FcltMgr.closeDetail(window, json);
}
});
}
else
{
@@ -787,6 +801,16 @@ function process_stdm_info(data, stdmChanged) // stdmChanged is optioneel.
if (stdmChanged) // Alleen bij nieuwe meldingen met een gekozen melding (stdmelding) en bij wijzigen van de melding (stdmelding)
{
if (typeof sgDisc2 != "undefined")
{
// Verify that stdm_ins_disc_key.srtgroep & 1
$.getJSON("./get_mld_info_ajax.asp",
{ req_info: "mld_ins_discipline",
stdm_ins_discipline_key: stdm_info.ins_discipline_key,
stdmChanged: stdmChanged },
toggleBehandelgroep);
}
if (stdm_info.prioriteiten[mprio].uitvoertijd == "")
{
$("#show_startdate").val(""); // $("#startdate") niet leeg maken! recalcEinddatum() heeft hiervoor een geldige datum nodig.
@@ -920,6 +944,17 @@ function onChangeVakgroep(vakgroep_key)
sgBehandelaar.setValue($("#sBehandel").val(), $("#sBehandel_show").val(), true, true);
if (window.sgBehandelaar2)
sgBehandelaar2.setValue($("#sBehandel2").val(), $("#sBehandel2_show").val(), true, true);
if (vakgroep_key > 0 && (typeof sgDisc2 != "undefined" || typeof sgBehandelaar2 != "undefined"))
{
$.getJSON("./get_mld_info_ajax.asp",
{ req_info: "mld_ins_discipline",
stdm_ins_discipline_key: vakgroep_key },
toggleBehandelgroep);
}
else if (vakgroep_key == -1 && typeof sgDisc2 != "undefined")
toggleBehandelgroep({ "srtgroep": 0 });
}
function onChangeStdMelding(stdmelding_key, txt, params)
@@ -975,6 +1010,45 @@ function onChangeStdMelding(stdmelding_key, txt, params)
if (!params.init) loadKenmerk(); // Bij initialisatie (initOnChange) niet de kenmerken herladen anders worden de waarden gewist.
}
function toggleBehandelgroep(data)
{
// Toggle Behandelgroep
if (typeof sgDisc2 != "undefined")
{
if (data.srtgroep & 1)
{
sgDisc2.undoHidden();
if (data.stdmChanged && stdm_info.default_ins_disc_key > 0)
{
$.getJSON("./get_mld_info_ajax.asp",
{ req_info: "mld_ins_discipline",
mld_ins_discipline_key: stdm_info.default_ins_disc_key },
setBehandelgroep);
}
}
else
{
sgDisc2.setValue(-1, "");
sgDisc2.makeHidden();
}
}
// Toggle Bewerker
if (typeof sgBehandelaar2 != "undefined")
{
if (data.srtgroep & 1)
sgBehandelaar2.undoHidden();
else
sgBehandelaar2.makeHidden();
}
}
function setBehandelgroep(data)
{
if (data != null)
sgDisc2.setValue(data.def_ins_disc_key, data.def_ins_disc_descr);
}
function onChangeStartdatum()
{ // Startdatum kalender is zichtbaar, want anders geen aanroep van deze functie
recalcEinddatum(); // die zoekt het verder wel uit?

View File

@@ -92,9 +92,9 @@ var isNew = (mld_key <= 0); // dan gaan we S("mld_melding_autoprint") beschouwen
var locatiekey = getFParamInt("locatiekey", -1);
var mld_behandelgroep_key = getFParamInt("mld_behandelgroep", -1);
var sBehandel_key = getFParamInt("sBehandel", -2);
var sBehandel2_key = getFParamInt("sBehandel2", -2);
var mld_ins_discipline_key = getFParamInt("mld_ins_discipline", -1);
var sBehandel_key = getFParamInt("sBehandel", -2);
var sBehandel2_key = getFParamInt("sBehandel2", -2);
var prio = getFParamInt("prio", mld_key>0?-1:3); // Default 3 voor nieuwe. Bij readonly bestaande meldingen de prio niet aanpassen.
@@ -232,12 +232,14 @@ if (savemode)
var sql_m = "SELECT m.mld_melding_kto_key"
+ " , m.mld_melding_spoed"
+ " , m.mld_melding_status"
+ " , m.mld_ins_discipline_key"
+ " FROM mld_melding m"
+ " WHERE m.mld_melding_key = " + mld_key;
var oRs_m = Oracle.Execute(sql_m);
old_ref_key = oRs_m("mld_melding_kto_key").Value;
old_mld_status = oRs_m("mld_melding_status").Value;
var old_prio = oRs_m("mld_melding_spoed").Value;
oRs_m.Close();
}
@@ -291,7 +293,7 @@ if (savemode)
{ dbs: "mld_alg_locatie_key", typ: "key", val: locatiekey,
savewhen: "locatiekey", track: true /* afzonderlijke tracking, wel oldjsval */ },
{ dbs: "mld_adres_key", typ: "key", frm: "del_address", track: L("lcl_delivery_address"), foreign: "mld_v_afleveradres" },
{ dbs: "mld_behandelgroep_key", typ: "key", frm: "mld_behandelgroep", track: true /* afzonderlijke tracking, wel oldjsval */ },
{ dbs: "mld_ins_discipline_key", typ: "key", frm: "mld_ins_discipline", track: L("mld_ins_discipline"), foreign: "mld_discipline" },
{ dbs: "mld_melding_behandelaar_key", typ: "key", frm: "sBehandel", track: true /* afzonderlijke tracking, wel oldjsval */ },
{ dbs: "mld_melding_behandelaar2_key", typ: "key", frm: "sBehandel2", track: true /* afzonderlijke tracking, wel oldjsval */ },
{ dbs: "mld_melding_externnr", typ: "varchar", frm: "externnr", track: L("lcl_mld_externr") },
@@ -406,7 +408,6 @@ if (savemode)
if (!isNew)
{ // Update an existing mld_melding record
// Hardness controle schrijfrechten
var this_mld = mld.func_enabled_melding(mld_key); // Wat heb ik zoal aan rechten op deze specifieke melding
user.auth_required_or_abort(this_mld.canChange);
@@ -463,9 +464,9 @@ if (savemode)
abort_with_warning(err.friendlyMsg);
/* SET STATUS AND SUBMIT ADDITIONAL TRACKING */
if ((mldUpd.oldjsvals["mld_behandelgroep_key"] || -1) != (mld_behandelgroep_key || -1))
if ((mldUpd.oldjsvals["mld_ins_discipline_key"] || -1) != mld_ins_discipline_key)
{ // Anders is-ie niet meegegeven of niet veranderd
mld.trackbehandelgroep(mld_key, mld_behandelgroep_key);
mld.notifybehandelgroep(mld_key, mld_ins_discipline_key);
}
if (sBehandel_key != -2 && (mldUpd.oldjsvals["mld_melding_behandelaar_key"] || -1) != (sBehandel_key || -1))
{ // Anders is-ie niet meegegeven of niet veranderd
@@ -636,7 +637,7 @@ if (savemode)
});
}
var doneParams = { mld_key : mld_key, autoprint: false, warning: "", autoorder: autoorder, success: true };
var doneParams = { mld_key : mld_key, autoprint: false, warning: "", autoorder: autoorder, success: true, noShowToaster: L("lcl_mld_is_mldupd") };
var sjabl_opdr_key = -1;
if (!isNew)
@@ -780,7 +781,6 @@ if (savemode)
{ // S("mld_melding_autoprint"): 2-altijd, 1-aleen als er geen orders zijn.
doneParams.autoprint = true;
}
// Klantspecifieke check functie (hookfunction) voor de invoer
var pResult = new HookResult();
if (!custfunc.mld_postsave(mld_key, pResult))

View File

@@ -124,8 +124,6 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"],
sgStdm.CheckJustOne();
if (window.sgBehandelaar)
sgBehandelaar.setValue($("#sBehandel").val(), $("#sBehandel_show").val(), false /*doonChange*/, true /*checkExist*/);
if (window.sgBehandelaar2)
sgBehandelaar2.setValue($("#sBehandel2").val(), $("#sBehandel2_show").val(), false /*doonChange*/, true /*checkExist*/);
}
function process_stdm_info(data, textStatus)
@@ -210,7 +208,7 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"],
urlAdd.push({urlParam: "disc_key", field: "disc"});
// Discipline
// Standaardmelding
FCLTstdmeldingselector("stdm",
"sgStdm",
{ label: L("lcl_complain"),
@@ -227,19 +225,6 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"],
// Behandelaar
if (S("mld_forward_can_assign"))
{
if (S("mld_behandelgroep") && (mld_melding.mld_behandelgroep_key > 0 || this_mld.canAfhandChange))
{
sql = "SELECT mld_behandelgroep_key, mld_behandelgroep_naam"
+ " FROM mld_behandelgroep"
+ " ORDER BY 2, 1";
FCLTselector("mld_behandelgroep", sql,
{ label: L("mld_behandelgroep"),
initKey: mld_melding.mld_behandelgroep_key,
emptyOption: "",
readonly: !this_mld.canAfhandChange
});
}
%>
<input type="hidden" id="person" name="person" value="<%=mld_melding.melder_key%>">
<%
@@ -262,17 +247,6 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"],
urlAdd: urlAdd,
filtercode: (mld_melding.mld_status == 0 ? "BEHF" : "BEHB")
});
if (S("mld_behandelaar2"))
FCLTpersoonselector("sBehandel2",
"sgBehandelaar",
{ perslidKey: S("mld_forward_auto_fill") ? mld_melding.behandel2_key : null,
idadd: 2,
label: L("lcl_mld_behandelaar2"),
autlevel: this_mld.authparams(autfunction) && this_mld.authparams(autfunction).PRSwritelevel,
urlAdd: urlAdd,
filtercode: (mld_melding.mld_status == 0 ? "BH2F" : "BH2B")
});
}
if ((urole == "bo" || urole == "fo") && (S("mld_melding_flags") > 0))

View File

@@ -26,13 +26,11 @@ var JSON_Result = true;
<%
protectRequest.validateToken();
var mld_key = getQParamInt('mld_key');
var stdm_key = getFParamInt("stdm");
var opmerk = getFParam("opmerk", "");
var this_mld = mld.func_enabled_melding(mld_key);
var mld_behandelgroep_key = getFParamInt("mld_behandelgroep", -1);
var sBehandel = getFParamInt("sBehandel", -1);
var sBehandel2 = getFParamInt("sBehandel2", -1);
var mld_key = getQParamInt('mld_key');
var stdm_key = getFParamInt("stdm");
var opmerk = getFParam("opmerk", "");
var this_mld = mld.func_enabled_melding(mld_key);
var sBehandel = getFParamInt("sBehandel", -1);
user.auth_required_or_abort(this_mld.canForward || this_mld.canFixMelding);
var mld_melding = mld.mld_melding_info(mld_key);
@@ -57,18 +55,14 @@ var sql = "SELECT mm.mld_stdmelding_key"
+ " , msm.mld_ins_discipline_key"
+ " , mm.mld_melding_einddatum"
+ " , mm.mld_melding_einddatum_std"
+ " , mm.mld_behandelgroep_key"
+ " , mm.mld_melding_behandelaar_key"
+ " , mm.mld_melding_behandelaar2_key"
+ " FROM mld_melding mm, mld_stdmelding msm"
+ " WHERE mm.mld_stdmelding_key = msm.mld_stdmelding_key"
+ " AND mld_melding_key = " + mld_key;
var oRs = Oracle.Execute(sql);
var old_stdm = oRs("mld_stdmelding_key").Value;
var old_disc = oRs("mld_ins_discipline_key").Value;
var old_grp = oRs("mld_behandelgroep_key").Value || -1;
var old_beh = oRs("mld_melding_behandelaar_key").Value || -1;
var old_bh2 = oRs("mld_melding_behandelaar2_key").Value || -1;
var mld_opm = oRs("mld_melding_opmerking").Value || "";
var spoed = oRs("mld_melding_spoed").Value;
var einddatum = new Date(oRs("mld_melding_einddatum").Value);
@@ -82,7 +76,7 @@ var save_notitie = false;
var result = {success: true, message: "", key: mld_key, autoorder: autoorder};
if (stdm_key == old_stdm && old_grp == mld_behandelgroep_key && old_beh == sBehandel && old_bh2 == sBehandel2)
if (stdm_key == old_stdm && old_beh == sBehandel)
{
result.message = L("lcl_not_forwarded");
result.success = false;
@@ -95,15 +89,11 @@ else
if (S("mld_forward_can_assign"))
{
fields.push({ dbs: "mld_behandelgroep_key", typ: "key", frm: "mld_behandelgroep", foreign: "mld_behandelgroep" });
fields.push({ dbs: "mld_melding_behandelaar_key", typ: "key", frm: "sBehandel", foreign: "prs_perslid" });
fields.push({ dbs: "mld_melding_behandelaar2_key", typ: "key", frm: "sBehandel2", foreign: "prs_perslid" });
fields.push({ dbs: "mld_melding_behandelaar_key", typ: "key", frm: "sBehandel", foreign: "prs_perslid" });
}
else if (mld_melding.mld_status != 5)
{
fields.push({ dbs: "mld_behandelgroep_key", typ: "key", val: -1, foreign: "mld_behandelgroep" });
fields.push({ dbs: "mld_melding_behandelaar_key", typ: "key", val: -1, foreign: "prs_perslid" });
fields.push({ dbs: "mld_melding_behandelaar2_key", typ: "key", val: -1, foreign: "prs_perslid" });
}
if (S("mld_melding_flags") > 0)
@@ -282,19 +272,11 @@ else
mld.nextworkflowstep(mld_key, -1); // Is de nieuwe een workflowstart?
}
// Submit additional tracking MLDBHG/MLDBEH/MLDBE2 als behandelgroep/behandelaar is aangepast.
if (old_grp != mld_behandelgroep_key)
{ // Anders is-ie niet meegegeven of niet veranderd
mld.trackbehandelgroep(mld_key, mld_behandelgroep_key);
}
// Submit additional tracking MLDBEH als behandelaar is aangepast.
if (old_beh != sBehandel)
{ // Anders is-ie niet veranderd.
mld.trackbehandelaar(mld_key, sBehandel);
}
if (old_bh2 != sBehandel2)
{ // Anders is-ie niet veranderd.
mld.trackbehandelaar2(mld_key, sBehandel2);
}
}
Response.Write(JSON.stringify(result));

View File

@@ -49,9 +49,9 @@ function mld_list (pautfunction, params)
// params.bld_key : key
// params.flr_key : key
// params.room_key : key
// params.mld_behandelgroep_key : key
// params.behandel_key_arr : Array met keys (e.g. [3, 4, 5])
// params.behandel2_key_arr : Array met keys (e.g. [3, 4, 5])
// params.mld_ins_discipline_key_arr : Array met keys (e.g. [3, 4, 5])
// params.behandel_key_arr : Array met keys (e.g. [3, 4, 5])
// params.behandel2_key_arr : Array met keys (e.g. [3, 4, 5])
// params.srtdisc_key : key
// params.disc_key_arr : Array met keys (e.g. [3, 4, 5])
// params.meldinggrp : String met een meldinggroep
@@ -158,7 +158,7 @@ function mld_list (pautfunction, params)
}
var mld_key = params.mld_key;
var mld_behandelgroep_key = params.mld_behandelgroep_key;
var mld_ins_discipline_key_arr = params.mld_ins_discipline_key_arr;
var behandel_key_arr = params.behandel_key_arr;
var behandel2_key_arr = params.behandel2_key_arr;
var disc_key_arr = params.disc_key_arr;
@@ -497,9 +497,12 @@ function mld_list (pautfunction, params)
} // minfo only
// apply 3D authorization to the locations and to the organisations (both ALG and PRS)
// mld_ins_discipline_key_arr
if (!frontend)
sqln = discx3d (sqln,
"md.ins_discipline_key",
["md.ins_discipline_key", "m.mld_ins_discipline_key"], // rechten op vakgroep OF op behandelgroep
"di.alg_regio_key",
"l.alg_district_key",
"l.alg_locatie_key",
@@ -638,6 +641,7 @@ function mld_list (pautfunction, params)
// Om een melding te forwarden/doorsturen moeten namelijk alle verplichte gegevens zijn ingevuld. Dat kan het geval zijn bij extern aangemaakte meldingen.
var emptyRequiredFields = false;
// Alleen als ik de melding door kan sturen de verplichte velden checken. Niet bij het corrigeren van de vakgroep/melding (canFixMelding) vanuit de status "Afgemeld(5)".
if (this_mld.canForward)
{
var alg_level = 0;
@@ -691,6 +695,7 @@ function mld_list (pautfunction, params)
eDoorzet: eDoorzet,
eVerwerk: eVerwerk
};
return data;
}

View File

@@ -394,7 +394,7 @@ if (mld_key == -1 || copy)
var hasParent = mld_info.parent_key != null; // dan geen opdrachten of bestellingen
if (!hasParent && mfe.canReadAny) // Mocht ik geen leesrechten hebben, dan ook de opdrachten en bestellingen niet tonen.
{
var this_opdr = mld.func_enabled_mld(mld_info.disc, "D"); // wat mag ik zoal op een nieuwe melding
var this_opdr = mld.func_enabled_mld(mld_info.aut_disc_arr, "D"); // wat mag ik zoal op een nieuwe melding
if ((this_opdr.canORDBOFread || ordzichtbaarfe) && showord) //TODO en: ik moet readrechten hebben op opdrachten (=?).
{ // Als ik ORDBOF leesrechten heb dan de opdrachtenlijst tonen met de bo rechten. Anders zie ik misschien niet alle opdrachten terwijl ik wel de rechter er voor heb.
page = "opdr_list.asp?tiny=1&urole=" + (this_opdr.canORDBOFread? "bo" : urole) + "&mld_key=" + mld_key + transitParam;

View File

@@ -22,7 +22,8 @@
omschr Omschrijving
opdrtype_key Opdrachttype van de opdracht
perslid_key Melder (key) van de melding
behandelgroep_keyBehandelgroep (key) van de melding
mld_ins_discipline_key
Behandelgroep (key) van de melding
behandel_key Behandelaar (key) van de melding
behandel2_key Behandelaar2 (key) van de melding
handler_key Uitvoerende (key) van de opdracht
@@ -62,6 +63,7 @@
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/status.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/disciplineselector.inc" -->
<!-- #include file="../Shared/afdelingselector.inc" -->
<!-- #include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
@@ -110,7 +112,7 @@ var searchtekst = getQParam("searchtekst", ""); // Zoektekst
var omschr = getQParam("omschr", ""); // Omschrijving
var opdrtype_key = getQParamInt("opdrtype_key", -1); // Opdrachttype
var perslid_key = getQParamInt("perslid_key", -1); // Melder
var mld_behandelgroep_key = getQParamInt("mld_behandelgroep_key", -1); // MLD Behandelgroep
var mld_ins_discipline_key= getQParamInt("mld_ins_discipline", -1); // MLD Behandelgroep
var behandel_key = getQParamInt("behandel_key", -1); // Behandelaar
var behandel2_key = getQParamInt("behandel2_key", -1); // Behandelaar2
var handler_key = getQParamInt("handler_key", -1); // Uitvoerende
@@ -398,176 +400,184 @@ oRs.close();
</tr>
<% if (minfo)
{ %>
<!-- Meldingstatusen -->
<% sql = "SELECT 0, " + safe.quoted_sql(mld.getmldstatustext(0)) + " FROM DUAL"
+ " UNION SELECT 1, " + safe.quoted_sql(mld.getmldstatustext(1)) + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(mld.getmldstatustext(2)) + " FROM DUAL"
+ " UNION SELECT 3, " + safe.quoted_sql(mld.getmldstatustext(3)) + " FROM DUAL"
+ " UNION SELECT 4, " + safe.quoted_sql(mld.getmldstatustext(4)) + " FROM DUAL"
+ " UNION SELECT 5, " + safe.quoted_sql(mld.getmldstatustext(5)) + " FROM DUAL"
+ " UNION SELECT 6, " + safe.quoted_sql(mld.getmldstatustext(6)) + " FROM DUAL"
+ " UNION SELECT 7, " + safe.quoted_sql(mld.getmldstatustext(7)) + " FROM DUAL"
+ " UNION SELECT 99, " + safe.quoted_sql(mld.getmldstatustext(99)) + " FROM DUAL"
+ " ORDER BY 1";
FCLTselector("mldstatusmulti",
sql,
{ initKey: mldstatus_arr.join(","),
label: L("lcl_mld_mldstatus"),
trclass:"primsearch",
multi: true,
emptyOption: L("lcl_all")
}); %>
{ %>
<!-- Meldingstatusen -->
<% sql = "SELECT 0, " + safe.quoted_sql(mld.getmldstatustext(0)) + " FROM DUAL"
+ " UNION SELECT 1, " + safe.quoted_sql(mld.getmldstatustext(1)) + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(mld.getmldstatustext(2)) + " FROM DUAL"
+ " UNION SELECT 3, " + safe.quoted_sql(mld.getmldstatustext(3)) + " FROM DUAL"
+ " UNION SELECT 4, " + safe.quoted_sql(mld.getmldstatustext(4)) + " FROM DUAL"
+ " UNION SELECT 5, " + safe.quoted_sql(mld.getmldstatustext(5)) + " FROM DUAL"
+ " UNION SELECT 6, " + safe.quoted_sql(mld.getmldstatustext(6)) + " FROM DUAL"
+ " UNION SELECT 7, " + safe.quoted_sql(mld.getmldstatustext(7)) + " FROM DUAL"
+ " UNION SELECT 99, " + safe.quoted_sql(mld.getmldstatustext(99)) + " FROM DUAL"
+ " ORDER BY 1";
FCLTselector("mldstatusmulti",
sql,
{ initKey: mldstatus_arr.join(","),
label: L("lcl_mld_mldstatus"),
trclass:"primsearch",
multi: true,
emptyOption: L("lcl_all")
}); %>
<!-- Opdrachtnummer -->
<tr class="secsearch">
<td class="label"><label for="opdrnum"><%=L("lcl_mld_opdr_number")%>:</label></td>
<!-- Opdrachtnummer -->
<tr class="secsearch">
<td class="label"><label for="opdrnum"><%=L("lcl_mld_opdr_number")%>:</label></td>
<td>
<input type="text" class="fldopdrnum<%=justClose?' required': ''%>" name="opdrnum" <%=(opdr_key != -1) ? "value='" + opdr_key + "'" : ""%>>
</td>
</tr>
<!-- Opdrachtstatusen -->
<% sql = "SELECT 1, " + safe.quoted_sql(status.getopdrstatustext(1)) + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(status.getopdrstatustext(2)) + " FROM DUAL"
+ " UNION SELECT 3, " + safe.quoted_sql(status.getopdrstatustext(3)) + " FROM DUAL"
+ " UNION SELECT 4, " + safe.quoted_sql(status.getopdrstatustext(4)) + " FROM DUAL"
+ " UNION SELECT 5, " + safe.quoted_sql(status.getopdrstatustext(5)) + " FROM DUAL"
+ " UNION SELECT 6, " + safe.quoted_sql(status.getopdrstatustext(6)) + " FROM DUAL"
+ " UNION SELECT 7, " + safe.quoted_sql(status.getopdrstatustext(7)) + " FROM DUAL"
+ " UNION SELECT 8, " + safe.quoted_sql(status.getopdrstatustext(8)) + " FROM DUAL"
+ " UNION SELECT 9, " + safe.quoted_sql(status.getopdrstatustext(9)) + " FROM DUAL"
+ " UNION SELECT 10, " + safe.quoted_sql(status.getopdrstatustext(10)) + " FROM DUAL"
+ " ORDER BY 1";
FCLTselector("opdrstatusmulti",
sql,
{ initKey: opdrstatus_arr.join(","),
label: L("lcl_mld_opdr_status"),
trclass:"secsearch",
multi: true,
emptyOption: L("lcl_all")
});
} // minfo
if (!justClose)
{ %>
<!-- Zoektekst -->
<tr class="primsearch">
<td class="label"><label for="searchtekst"><%=L("lcl_search_diff_fields")%>:</label></td>
<td>
<input type="text" class="fldsrch wildcard" name="searchtekst" value="<%=safe.htmlattr(searchtekst)%>">
</td>
</tr>
<% if (backo && anyorders)
{ // alleen back kan kiezen uit opdrachten
%> <!-- Resultaat meldingen/opdrachten -->
<tr class="primsearch noxd">
<td class="label"><label><%=L("lcl_mld_result")%>:</label></td>
<td>
<input type="text" class="fldopdrnum<%=justClose?' required': ''%>" name="opdrnum" <%=(opdr_key != -1) ? "value='" + opdr_key + "'" : ""%>>
</td>
<label for="mld_opdr_c">
<input type="radio" name="mld_or_opdr" id="mld_opdr_c" value="0" checked><%=L("lcl_complains")%>
</label>
<label for="mld_opdr_o">
<input type="radio" name="mld_or_opdr" id="mld_opdr_o" value="1"><%=L("lcl_orders")%>
</label>
</td>
</tr>
<% }
if (!frontend)
{
if (srtdisc == -1) // TODO netjes afmaken: als het readonly is want meegegeven, dan hoef ik het niet te tonen ook
{
// <!-- Soort melding -->
// Als een srtdisc meegegeven dan geen lege optie
// en dan is hidden field srtdisc van hiervoor effectief
<!-- Opdrachtstatusen -->
<% sql = "SELECT 1, " + safe.quoted_sql(status.getopdrstatustext(1)) + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(status.getopdrstatustext(2)) + " FROM DUAL"
+ " UNION SELECT 3, " + safe.quoted_sql(status.getopdrstatustext(3)) + " FROM DUAL"
+ " UNION SELECT 4, " + safe.quoted_sql(status.getopdrstatustext(4)) + " FROM DUAL"
+ " UNION SELECT 5, " + safe.quoted_sql(status.getopdrstatustext(5)) + " FROM DUAL"
+ " UNION SELECT 6, " + safe.quoted_sql(status.getopdrstatustext(6)) + " FROM DUAL"
+ " UNION SELECT 7, " + safe.quoted_sql(status.getopdrstatustext(7)) + " FROM DUAL"
+ " UNION SELECT 8, " + safe.quoted_sql(status.getopdrstatustext(8)) + " FROM DUAL"
+ " UNION SELECT 9, " + safe.quoted_sql(status.getopdrstatustext(9)) + " FROM DUAL"
+ " UNION SELECT 10, " + safe.quoted_sql(status.getopdrstatustext(10)) + " FROM DUAL"
+ " ORDER BY 1";
FCLTselector("opdrstatusmulti",
sql,
{ initKey: opdrstatus_arr.join(","),
label: L("lcl_mld_opdr_status"),
trclass:"secsearch",
multi: true,
emptyOption: L("lcl_all")
});
} // minfo
// srtdisciplines met bestaande stdm
sql = " SELECT sd.ins_srtdiscipline_key"
+ ", " + lcl.xsqla('sd.ins_srtdiscipline_omschrijving', 'ins_srtdiscipline_key')
+ " FROM ins_srtdiscipline sd"
+ " WHERE EXISTS"
+ " (SELECT 'x'"
+ " FROM mld_v_aanwezigdiscipline m1, mld_stdmelding ms"
+ " WHERE m1.ins_srtdiscipline_key = sd.ins_srtdiscipline_key"
+ " AND m1.ins_discipline_key = ms.mld_ins_discipline_key"
+ " AND ms.mld_stdmelding_verwijder IS NULL)";
if (!justClose)
{ %>
<!-- Zoektekst -->
<tr class="primsearch">
<td class="label"><label for="searchtekst"><%=L("lcl_search_diff_fields")%>:</label></td>
<td>
<input type="text" class="fldsrch wildcard" name="searchtekst" value="<%=safe.htmlattr(searchtekst)%>">
</td>
</tr>
<% if (backo && anyorders)
{ // alleen back kan kiezen uit opdrachten
%> <!-- Resultaat meldingen/opdrachten -->
<tr class="primsearch noxd">
<td class="label"><label><%=L("lcl_mld_result")%>:</label></td>
<td>
<label for="mld_opdr_c">
<input type="radio" name="mld_or_opdr" id="mld_opdr_c" value="0" checked><%=L("lcl_complains")%>
</label>
<label for="mld_opdr_o">
<input type="radio" name="mld_or_opdr" id="mld_opdr_o" value="1"><%=L("lcl_orders")%>
</label>
</td>
</tr>
<% }
if (!frontend)
{
if (srtdisc == -1) { // TODO netjes afmaken: als het readonly is want meegegeven, dan hoef ik het niet te tonen ook
//<!-- Soort melding -->
// Als een srtdisc meegegeven dan geen lege optie
// en dan is hidden field srtdisc van hiervoor effectief
sql = "SELECT sd.ins_srtdiscipline_key"
+ ", "+ lcl.xsqla('sd.ins_srtdiscipline_omschrijving', 'ins_srtdiscipline_key')
+ " FROM ins_srtdiscipline sd"
+ " WHERE EXISTS (SELECT 'x'"
+ " FROM mld_stdmelding ms"
+ ", mld_v_aanwezigdiscipline m1"
+ " WHERE m1.ins_discipline_key = ms.mld_ins_discipline_key"
+ " AND ms.mld_stdmelding_verwijder IS NULL)"
+ " AND EXISTS (SELECT 'y'"
+ " FROM fac_v_my_disciplines md"
+ " , mld_v_aanwezigdiscipline m1"
+ " WHERE fac_functie_code = " + safe.quoted_sql(autfunction) + " "
+ " AND prs_perslid_key = " + user_key
+ " AND m1.ins_srtdiscipline_key = sd.ins_srtdiscipline_key"
+ " AND md.ins_discipline_key = m1.ins_discipline_key"
+ ") "
+ " ORDER BY 2";
var aut_scope_sql = " AND EXISTS"
+ " (SELECT 'y'"
+ " FROM mld_v_aanwezigdiscipline m1, fac_v_my_disciplines md"
+ " WHERE m1.ins_srtdiscipline_key = sd.ins_srtdiscipline_key"
+ " AND md.ins_discipline_key = m1.ins_discipline_key"
+ " AND fac_functie_code = " + safe.quoted_sql(autfunction)
+ " AND prs_perslid_key = " + user_key + ")";
var sqlcnt = "SELECT COUNT ( * ) nrsrtdisc"
+ " FROM (" + sql + ")";
if (!S("mld_ins_discipline"))
sql += aut_scope_sql;
var sqlcnt = "SELECT COUNT (1) nrsrtdisc"
+ " FROM (" + sql + ")";
var oRs2 = Oracle.Execute(sqlcnt);
if (oRs2("nrsrtdisc").Value == 1)
{
var oRs = Oracle.Execute(sql);
srtdisc = oRs("ins_srtdiscipline_key").Value;
var oRs = Oracle.Execute(sql);
srtdisc = oRs("ins_srtdiscipline_key").Value;
oRs.Close();
oRs.Close();
}
oRs2.Close();
if (srtdisc == -1)
{
FCLTselector("srtdisc",
sql,
{ initKey: srtdisc,
label: L("lcl_vakgroup_type"),
trclass:"primsearch noxd",
onChange: 'updateDisc("' + urole + '", "' + autfunction + '");',
emptyOption: (srtdisc == -1? L("lcl_all") : null), // Als een srtdisc is meegegeven dan geen lege optie,
readonly: srtdisc > -1 || disc_key_arr.length != 0
})
}
}
if (srtdisc == -1)
{
if (S("mld_ins_discipline")) // Scoping alsnog toevoegen
sql += aut_scope_sql;
sql += " ORDER BY 2";
if (!frontend && srtdisc > -1)
{
%><input type='hidden' id='srtdisc' name='srtdisc' value='<%=srtdisc%>'><%
}
FCLTselector("srtdisc",
sql,
{ initKey: -1,
label: L("lcl_vakgroup_type"),
trclass: "primsearch noxd",
onChange: 'updateDisc("' + urole + '", "' + autfunction + '");',
emptyOption: L("lcl_all"),
readonly: disc_key_arr.length != 0
});
}
}
if (!frontend && srtdisc > -1)
{
%><input type="hidden" id="srtdisc" name="srtdisc" value="<%=srtdisc%>"><%
}
// <!-- Productgroep -->
// <!-- Productgroep -->
// LET OP!!
// De options van deze selector wordt on-change dynamisch vervangen door ../shared/loadDisc.asp!
// Wat hier staat is dus alleen de initiele situatie.
// TODO: als er maar 1 waarde is dan die kiezen; het is zinloos dan Alle/De ene keuze als selectie te bieden, fixed De ene keuze is dan beter (ruimte!)
// Wat hier staat is dus alleen de initiele situatie.
// SQL-queries uit loadDisc:
var discsql_aut = "SELECT ins_discipline_key"
+ " FROM fac_v_webgebruiker g"
+ ", fac_functie f"
+ " WHERE g.prs_perslid_key = " + user_key
+ " AND f.fac_functie_key = g.fac_functie_key"
+ " AND f.fac_functie_code = " + safe.quoted_sql(autfunction)
+ " AND g.fac_gebruiker_alg_level_read < 9"; // MGE: Als alg_level_read = 9 dan komt waarde niet meer voor in fac_v_webgebruiker. Regel zou dus weg kunnen
+ " FROM fac_v_webgebruiker g"
+ ", fac_functie f"
+ " WHERE g.prs_perslid_key = " + user_key
+ " AND f.fac_functie_key = g.fac_functie_key"
+ " AND f.fac_functie_code = " + safe.quoted_sql(autfunction)
+ " AND g.fac_gebruiker_alg_level_read < 9"; // MGE: Als alg_level_read = 9 dan komt waarde niet meer voor in fac_v_webgebruiker. Regel zou dus weg kunnen
var discsql = " SELECT m1.ins_discipline_key"
+ ", CASE "
+ " WHEN sd.ins_srtdiscipline_prefix IS NULL"
+ " THEN ''"
+ " ELSE sd.ins_srtdiscipline_prefix || '-'"
+ " END"
+ " || "+ lcl.xsqla('m1.ins_discipline_omschrijving', 'm1.ins_discipline_key')
+ " FROM mld_v_aanwezigdiscipline m1"
+ ", ins_srtdiscipline sd"
+ " WHERE EXISTS (SELECT 'x'"
+ " FROM mld_stdmelding ms"
+ " WHERE m1.ins_discipline_key = ms.mld_ins_discipline_key"
+ " AND ms.mld_stdmelding_verwijder IS NULL)"
+ " AND m1.ins_srtdiscipline_key = sd.ins_srtdiscipline_key(+)"
+ " AND m1.ins_discipline_key IN (" + discsql_aut + ")"
+ (srtdisc != -1
? " AND m1.ins_discipline_key IN (SELECT ins_discipline_key"
+ " FROM mld_discipline"
+ " WHERE ins_srtdiscipline_key = " + srtdisc + ")"
: "")
+ (disc_key_arr.length != 0
? " AND m1.ins_discipline_key IN (" + disc_key_arr.join(",") + ")"
: "")
+ " ORDER BY 2"
+ ", CASE "
+ " WHEN sd.ins_srtdiscipline_prefix IS NULL"
+ " THEN ''"
+ " ELSE sd.ins_srtdiscipline_prefix || '-'"
+ " END"
+ " || "+ lcl.xsqla('m1.ins_discipline_omschrijving', 'm1.ins_discipline_key')
+ " FROM mld_v_aanwezigdiscipline m1"
+ ", ins_srtdiscipline sd"
+ " WHERE EXISTS (SELECT 'x'"
+ " FROM mld_stdmelding ms"
+ " WHERE m1.ins_discipline_key = ms.mld_ins_discipline_key"
+ " AND ms.mld_stdmelding_verwijder IS NULL)"
+ " AND m1.ins_srtdiscipline_key = sd.ins_srtdiscipline_key(+)"
+ " AND m1.ins_discipline_key IN (" + discsql_aut + ")"
+ (srtdisc != -1
? " AND m1.ins_discipline_key IN (SELECT ins_discipline_key"
+ " FROM mld_discipline"
+ " WHERE ins_srtdiscipline_key = " + srtdisc + ")"
: "")
+ (disc_key_arr.length != 0
? " AND m1.ins_discipline_key IN (" + disc_key_arr.join(",") + ")"
: "")
+ " ORDER BY 2"
FCLTselector("discmulti",
discsql,
@@ -629,48 +639,49 @@ if (!frontend && srtdisc > -1)
+ " WHERE mto.mld_typeopdr_isofferte = 1"
oRs = Oracle.Execute(sql);
if (!oRs.eof)
RWCHECKBOXTR("offertes", "fldoffertes", L("lcl_mld_offertes"), false, { html: " value='1' ", trclass: 'noxd'});
RWCHECKBOXTR("offertes", "fldoffertes", L("lcl_mld_offertes"), false, { html: " value='1' ", trclass: "noxd"});
oRs.Close();
}
// Meldinggroep
// Laat alle meldinggroepen zien die voorkomen onder de disciplines die ik mag zien.
if (anymldgroup) {
var grpsql_aut = "SELECT ins_discipline_key"
+ " FROM fac_v_webgebruiker g"
+ ", fac_functie f"
+ " WHERE g.prs_perslid_key = " + user_key
+ " AND f.fac_functie_key = g.fac_functie_key"
+ " AND f.fac_functie_code = " + safe.quoted_sql(autfunction)
+ " AND g.fac_gebruiker_alg_level_read < 9"; // MGE: Als alg_level_read = 9 dan komt waarde niet meer voor in fac_v_webgebruiker. Regel zou dus weg kunnen
if (anymldgroup)
{
var grpsql_aut = "SELECT ins_discipline_key"
+ " FROM fac_v_webgebruiker g"
+ ", fac_functie f"
+ " WHERE g.prs_perslid_key = " + user_key
+ " AND f.fac_functie_key = g.fac_functie_key"
+ " AND f.fac_functie_code = " + safe.quoted_sql(autfunction)
+ " AND g.fac_gebruiker_alg_level_read < 9"; // MGE: Als alg_level_read = 9 dan komt waarde niet meer voor in fac_v_webgebruiker. Regel zou dus weg kunnen
var grpsql = "SELECT G.mld_stdmeldinggroep_key akey"
+ ", " + lcl.xsqla('G.mld_stdmeldinggroep_naam','G.mld_stdmeldinggroep_key')
+ " FROM mld_stdmelding M"
+ " , mld_stdmeldinggroep G"
+ " WHERE M.mld_stdmeldinggroep_key = G.mld_stdmeldinggroep_key"
+ " AND M.mld_stdmelding_verwijder IS NULL"
+ " AND M.mld_stdmeldinggroep_key IS NOT NULL"
+ (srtdisc != -1
? " AND mld_ins_discipline_key IN (SELECT ins_discipline_key"
+ " FROM mld_discipline"
+ " WHERE ins_srtdiscipline_key = " + srtdisc + ")"
: "")
+ (disc_key_arr != 0
? " AND mld_ins_discipline_key IN (" + disc_key_arr.join(",") + ")"
: "")
+ " AND mld_ins_discipline_key IN (" + grpsql_aut + ")"
+ " GROUP BY G.mld_stdmeldinggroep_key, mld_stdmeldinggroep_naam"
+ " ORDER BY 2";
var grpsql = "SELECT G.mld_stdmeldinggroep_key akey"
+ ", " + lcl.xsqla('G.mld_stdmeldinggroep_naam','G.mld_stdmeldinggroep_key')
+ " FROM mld_stdmelding M"
+ " , mld_stdmeldinggroep G"
+ " WHERE M.mld_stdmeldinggroep_key = G.mld_stdmeldinggroep_key"
+ " AND M.mld_stdmelding_verwijder IS NULL"
+ " AND M.mld_stdmeldinggroep_key IS NOT NULL"
+ (srtdisc != -1
? " AND mld_ins_discipline_key IN (SELECT ins_discipline_key"
+ " FROM mld_discipline"
+ " WHERE ins_srtdiscipline_key = " + srtdisc + ")"
: "")
+ (disc_key_arr != 0
? " AND mld_ins_discipline_key IN (" + disc_key_arr.join(",") + ")"
: "")
+ " AND mld_ins_discipline_key IN (" + grpsql_aut + ")"
+ " GROUP BY G.mld_stdmeldinggroep_key, mld_stdmeldinggroep_naam"
+ " ORDER BY 2";
FCLTselector("meldinggrp_key",
grpsql,
{ initKey: meldinggrp_key,
label: L("lcl_mld_meldinggroep"),
trclass: "secsearch noxd",
emptyOption: ""
});
}
FCLTselector("meldinggrp_key",
grpsql,
{ initKey: meldinggrp_key,
label: L("lcl_mld_meldinggroep"),
trclass: "secsearch noxd",
emptyOption: ""
});
}
// Behandelgroep-filter (indien die er zijn)
var behsql = "SELECT mld_behandelgroep_key,"
+ lcl.xsqla('mld_behandelgroep_naam', 'mld_behandelgroep_key')+", "
@@ -691,10 +702,10 @@ if (!frontend && srtdisc > -1)
// Vervolgmelding-filter
if (backo || minfo || fronto)
{
sortsql = "SELECT -1, " + safe.qL("lcl_mld_vervolgfilter_both") + ", 0 FROM DUAL" // geen filter
+ " UNION SELECT 1, " + safe.qL("lcl_mld_vervolgfilter_none") + ", 1 FROM DUAL" // zonder vervolgmeldingen
+ " UNION SELECT 2, " + safe.qL("lcl_mld_vervolgfilter_only") + ", 2 FROM DUAL" // alleen vervolgmeldingen
+ " ORDER BY 3";
sortsql = "SELECT -1, " + safe.qL("lcl_mld_vervolgfilter_both") + ", 0 FROM DUAL" // geen filter
+ " UNION SELECT 1, " + safe.qL("lcl_mld_vervolgfilter_none") + ", 1 FROM DUAL" // zonder vervolgmeldingen
+ " UNION SELECT 2, " + safe.qL("lcl_mld_vervolgfilter_only") + ", 2 FROM DUAL" // alleen vervolgmeldingen
+ " ORDER BY 3";
oRs = Oracle.Execute(sortsql);
if (!oRs.eof) {
FCLTselector("vervolgmld",
@@ -708,9 +719,9 @@ if (!frontend && srtdisc > -1)
if (backo)
{
sortsql = "SELECT 0, " + safe.qL("lcl_mld_firstready") + ", 0 FROM DUAL"
+ " UNION SELECT 1, " + safe.qL("lcl_mld_newfirst") + ", 1 FROM DUAL"
+ " ORDER BY 3";
sortsql = "SELECT 0, " + safe.qL("lcl_mld_firstready") + ", 0 FROM DUAL"
+ " UNION SELECT 1, " + safe.qL("lcl_mld_newfirst") + ", 1 FROM DUAL"
+ " ORDER BY 3";
oRs = Oracle.Execute(sortsql);
if (!oRs.eof) {
FCLTselector("bosort",
@@ -723,7 +734,6 @@ if (!frontend && srtdisc > -1)
oRs.Close();
}
if (minfo)
{ %>
<!-- BackOfficetype -->
@@ -744,77 +754,77 @@ if (!frontend && srtdisc > -1)
</tr>
<%
sql = " SELECT 'MLDNEW' noticode, " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldnew")) + " notitext FROM DUAL"
+ " UNION ALL SELECT 'MLDDOO', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mlddoo")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDFWD', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldfwd")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDBWD', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldbwd")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDUPD', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldupd")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDACP', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldacp")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDBHG', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldbhg")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDBEH', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldbeh")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDBH2', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldbh2")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDREJ', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldrej")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDAFM', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldafm")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDVER', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldver")) + " FROM DUAL"
sql = " SELECT 'MLDNEW' noticode, " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldnew")) + " notitext FROM DUAL"
+ " UNION ALL SELECT 'MLDDOO', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mlddoo")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDFWD', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldfwd")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDBWD', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldbwd")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDUPD', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldupd")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDACP', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldacp")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDBHG', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldbhg")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDBEH', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldbeh")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDBH2', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldbh2")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDREJ', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldrej")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDAFM', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldafm")) + " FROM DUAL"
+ " UNION ALL SELECT 'MLDVER', " + safe.quoted_sql(L("lcl_mld_trackprefixmld")+L("lcl_mld_is_mldver")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDACP', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordacp")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDHLT', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordhlt")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDRSM', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordrsm")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDAFM', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordafm")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDAFR', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordafr")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDCAN', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordcan")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDFIA', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordfia")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDFNO', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordfno")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDFOK', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordfok")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDMLE', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordmle")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDMLI', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordmli")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDNEW', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordnew")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDONO', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordono")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDOOK', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordook")) + " FROM DUAL"
// ooit? xcase "ORDREJ', '" +L("lcl_ord_is_ordrejOPDR"): + "' FROM DUAL"
+ " UNION ALL SELECT 'ORDSNT', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordsnt")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDUPD', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordupd")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDVER', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordver")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDACP', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordacp")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDHLT', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordhlt")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDRSM', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordrsm")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDAFM', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordafm")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDAFR', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordafr")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDCAN', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordcan")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDFIA', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordfia")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDFNO', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordfno")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDFOK', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordfok")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDMLE', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordmle")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDMLI', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordmli")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDNEW', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordnew")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDONO', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordono")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDOOK', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordook")) + " FROM DUAL"
// ooit? xcase "ORDREJ', '" +L("lcl_ord_is_ordrejOPDR"): + "' FROM DUAL"
+ " UNION ALL SELECT 'ORDSNT', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordsnt")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDUPD', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordupd")) + " FROM DUAL"
+ " UNION ALL SELECT 'ORDVER', " + safe.quoted_sql(L("lcl_mld_trackprefixord")+L("lcl_ord_is_ordver")) + " FROM DUAL"
+ " ORDER BY 2";
+ " ORDER BY 2";
FCLTselector("srt_tracking",
sql,
{
label: L("lcl_mld_trackcol"),
trclass: "primsearch",
emptyOption: ""
});
FCLTpersoonselector("prs_tracking",
"sgTrackPerson",
{ perslidKey: perslid_key,
label: L("lcl_mld_trackby"),
filtercode: "TRCK", // ooit in tracking
trclass: "primsearch noxd",
whenEmpty: L("lcl_search_generic") // want filter
});
// periode van actie
FCLTcalendar("actiondate_from",
{ label : L("lcl_mld_action_from"),
initEmpty: true,
trclass: "secsearch"
});
FCLTcalendar("actiondate_to",
{ label: L("lcl_mld_action_to"),
initEmpty: true,
trclass: "secsearch"
});
FCLTselector("srt_tracking",
sql,
{
label: L("lcl_mld_trackcol"),
trclass: "primsearch",
emptyOption: ""
});
FCLTpersoonselector("prs_tracking",
"sgTrackPerson",
{ perslidKey: perslid_key,
label: L("lcl_mld_trackby"),
filtercode: "TRCK", // ooit in tracking
trclass: "primsearch noxd",
whenEmpty: L("lcl_search_generic") // want filter
});
// periode van actie
FCLTcalendar("actiondate_from",
{ label : L("lcl_mld_action_from"),
initEmpty: true,
trclass: "secsearch"
});
FCLTcalendar("actiondate_to",
{ label: L("lcl_mld_action_to"),
initEmpty: true,
trclass: "secsearch"
});
sql = "SELECT 'fe'," + safe.quoted_sql(L("lcl_fe")) + " FROM DUAL"
+ " UNION SELECT 'fo'," + safe.quoted_sql(L("lcl_fo")) + " FROM DUAL";
FCLTselector("ingevoerd",
sql,
{
label: L("lcl_mld_starter"),
trclass: "primsearch",
emptyOption: L("lcl_all")
});
sql = "SELECT 'fe'," + safe.quoted_sql(L("lcl_fe")) + " FROM DUAL"
+ " UNION SELECT 'fo'," + safe.quoted_sql(L("lcl_fo")) + " FROM DUAL";
FCLTselector("ingevoerd",
sql,
{
label: L("lcl_mld_starter"),
trclass: "primsearch",
emptyOption: L("lcl_all")
});
%>
@@ -849,8 +859,8 @@ if (!frontend && srtdisc > -1)
trclass: "primsearch noxd"
});
}
} // if (!justClose) 1
}
}
} // if (!justClose) 1
else if (frontend && srtdisc > -1)
{ // Wordt soms meegegeven in frontend mode. Dus extra, anders wordt deze niet gesubmit.
%><input type='hidden' id='srtdisc' name='srtdisc' value='<%=srtdisc%>'><%
@@ -1027,29 +1037,35 @@ if (!frontend && srtdisc > -1)
</td>
</tr>
<%
if (S("mld_behandelgroep"))
if (S("mld_ins_discipline"))
{
sql = "SELECT mld_behandelgroep_key, mld_behandelgroep_naam"
+ " FROM mld_behandelgroep"
+ " ORDER BY 2, 1";
FCLTselector("mld_behandelgroep", sql,
{ label: L("mld_behandelgroep"),
emptyOption: ""
});
FCLTdisciplineselector("mld_ins_discipline",
"sgDisc",
{ idadd: 2,
label: L("mld_ins_discipline"),
disc_key: mld_ins_discipline_key,
noJustOne: true,
module: "MLD",
perslidKey: user_key,
multitoggle: true,
autfunctionKey: authparams.autfunctionkey,
autRW: "W",
addfixedoption: { txt: L("lcl_suggestemptytxt"), desc: L("lcl_suggestemptydesc"), key: -2 },
whenEmpty: L("lcl_search_generic") // want filter
});
}
FCLTpersoonselector("sBehandel_key",
"sgBehandelaar",
{ perslidKey: behandel_key,
label: L("lcl_mld_behandelaar"),
filtercode: "BEHS",
trclass: "primsearch noxd", /* als wel xd: _self zou leuk zijn */
multitoggle: true,
autlevel: authparams.PRSreadlevel,
autlevelALG: authparams.ALGreadlevel,
addfixedoption: { txt: L("lcl_suggestemptytxt"), desc: L("lcl_suggestemptydesc"), key: -2 },
whenEmpty: L("lcl_search_generic") // want filter
});
"sgBehandelaar",
{ perslidKey: behandel_key,
label: L("lcl_mld_behandelaar"),
filtercode: "BEHS",
trclass: "primsearch noxd", /* als wel xd: _self zou leuk zijn */
multitoggle: true,
autlevel: authparams.PRSreadlevel,
autlevelALG: authparams.ALGreadlevel,
addfixedoption: { txt: L("lcl_suggestemptytxt"), desc: L("lcl_suggestemptydesc"), key: -2 },
whenEmpty: L("lcl_search_generic") // want filter
});
if (S("mld_behandelaar2"))
FCLTpersoonselector("sBehandel2_key",

View File

@@ -119,9 +119,10 @@ else
var gebouwkey = getQParamInt("gebouwkey", -1); // Gebouw
var verdiepingkey = getQParamInt("verdiepingkey", -1); // Verdieping
var ruimtekey = getQParamInt("ruimtekey", -1); // Ruimte
var mld_behandelgroep_key = getQParamInt("mld_behandelgroep", -1); // MLD Behandelgroep
var sBehandel_key_arr = getQParamIntArray("sBehandel_key", []); // Behandelaar
var sBehandel2_key_arr = getQParamIntArray("sBehandel2_key", []); // Behandelaar2
var mld_ins_discipline_key_arr
= getQParamIntArray("mld_ins_discipline", []); // MLD Behandelgroep
var sBehandel_key_arr = getQParamIntArray("sBehandel_key", []); // Behandelaar
var sBehandel2_key_arr = getQParamIntArray("sBehandel2_key", []); // Behandelaar2
var disc_key_arr = getQParamIntArray("discmulti", [-1]); // Productgroep
var meldinggrp_key = getQParamInt("meldinggrp_key", -1); // Meldinggroep
var behandelgrp_key = getQParamInt("behandelgrp_key", -1); // MLD Disc Params Behandelgroep
@@ -168,9 +169,13 @@ else
params.bld_key = (gebouwkey != -1 ? gebouwkey : null);
params.flr_key = (verdiepingkey != -1 ? verdiepingkey : null);
params.room_key = (ruimtekey != -1 ? ruimtekey : null);
params.mld_behandelgroep_key = (mld_behandelgroep_key != -1 ? mld_behandelgroep_key : null);
params.behandel_key_arr = sBehandel_key_arr;
params.behandel2_key_arr = sBehandel2_key_arr;
params.mld_ins_discipline_key_arr
= (mld_ins_discipline_key_arr.length > 0 && mld_ins_discipline_key_arr != [-1] ? mld_ins_discipline_key_arr : null);
// (mld_ins_discipline_key_arr.length == 1 && mld_ins_discipline_key_arr.join(",").indexOf("-1") == -1) ? mld_ins_discipline_key_arr : null);
params.behandel_key_arr = sBehandel_key_arr;
params.behandel2_key_arr = sBehandel2_key_arr;
params.srtdisc_key = (srtdisc_key != -1 ? srtdisc_key : null);
params.disc_key_arr = (disc_key_arr.length > 0 && disc_key_arr.join(",").indexOf("-1") == -1? disc_key_arr : null);
params.meldinggrp_key = (meldinggrp_key != -1 ? meldinggrp_key : null);

View File

@@ -26,7 +26,6 @@ var LOCKED_USER_OK = { "xmlnode": "melding", "key": mld_key };
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/kostenplaatsselector.inc" -->
@@ -430,18 +429,9 @@ function parentButton()
BLOCK_START("mldInfo", L("lcl_complain") + " "+ (mld_melding.prefix != null? mld_melding.prefix : "") + mld_key + (0&mld_melding.mld_onderwerp ? ": <span class='mldsubject'>" + safe.html(mld_melding.mld_onderwerp) + "</span>" : ""), { ishtmlsafe: true });
if (mld_melding.mld_behandelgroep_key > 0)
if (mld_melding.mld_ins_discipline_key > 0)
{
sql = "SELECT mld_behandelgroep_naam"
+ " FROM mld_behandelgroep"
+ " WHERE mld_behandelgroep_key = " + mld_melding.mld_behandelgroep_key;
oRs = Oracle.Execute( sql );
var params = { infoPointer: { Url: "appl/mgt/mld_behandelgroep.asp?mode=show&id=" + mld_melding.mld_behandelgroep_key,
Title: L("mld_behandelgroep") + " " + oRs("mld_behandelgroep_naam").Value
}
};
ROFIELDTR("fld", L("mld_behandelgroep"), oRs("mld_behandelgroep_naam").Value, params);
oRs.Close();
ROFIELDTR("flddisc", L("mld_ins_discipline"), (mld_melding.mld_srtins_prefix ? mld_melding.mld_srtins_prefix + "-" : "") + mld_melding.mld_ins_discipline_omschrijving);
}
// Proces bewaker/overziener
if (mld_melding.behandel_key > 0) {

View File

@@ -393,12 +393,12 @@ function scf_RWFIELDTR(model, fld, val, key, params)
FCLTdisciplineselector(fld,
"sg" + fld,
{ label: field.label,
disc_key: val?val.id:null,
disc_key: (val ? val.id : null),
perslidKey: user_key,
module: "MLDA",
module: (field.module ? field.module : "MLDA"),
autfunctionKey: -1,
required: params.required,
whenEmpty: params.search ? L("lcl_search_generic") : null
whenEmpty: (params.search ? L("lcl_search_generic") : null)
});
}
else if (predefined == "INS_DISCIPLINE")

View File

@@ -33,16 +33,24 @@ function getFiltClauseDiscipline(pfiltcode, params)
+ " AND td.ins_discipline_module = 'INS'"
+ " AND sg.ins_srtgroep_key IN (" + S("sle_ins_srt_groep_key") + ", " + S("cil_ins_srt_groep_key") + ")";
}
else if (params.module == "MLD" || params.module == "MLDA")
else if (params.module == "MLD" || params.module == "MLDA" || params.module == "MLDB")
{
if (params.module == "MLD") lfiltClause.from = ", mld_stdmelding sm";
if (params.module == "MLD" || params.module == "MLDB")
{
lfiltClause.from = ", mld_stdmelding sm"
+ (params.module == "MLDB" ? ", mld_disc_params dp" : "");
}
lfiltClause.where = " AND td.ins_discipline_module = 'MLD'"
// Standaard alleen vakgroepen tonen met stdmeldingen.
+ (params.stdmelding_keys && params.stdmelding_keys.length
? " AND sm.mld_stdmelding_key IN (" + params.stdmelding_keys.join(",") + ")":"")
+ (params.module == "MLD"
+ (params.module == "MLD" || params.module == "MLDB"
? " AND td.ins_discipline_key = sm.mld_ins_discipline_key"
+ " AND sm.mld_stdmelding_verwijder IS NULL"
: "")
+ (params.module == "MLDB"
? " AND dp.mld_ins_discipline_key = td.ins_discipline_key"
+ " AND BITAND(dp.mld_disc_params_srtgroep, 2) = 2"
: "");
}

View File

@@ -11,11 +11,13 @@
disc_key: initi<74>le key waarde van de discipline die ingevuld moet worden.
module: Verplicht: module waarvan de disciplines zijn
perslidKey: Verplicht voor MLD: persoon waarvoor melding is
multitoggle: Sta multi-toggle toe
idadd: Identieficatie verschil bij gebruik van meerdere disciplineselectoren
autfunctionKey: verplicht fac_function_key
label: label dat voor het veld wordt weergegeven.
filtercode: extra filtercode voor de query die gebruikt wordt voor de suggest.
onChange: onchange op het textveld.
trclass: wordt ook op de <tr> gezet.
trclass: wordt ook op de <tr> gezet.
autlevel: autorisatie niveau voor de query die gebruikt wordt voor de suggest.
ins_key: alleen als melding op dit object mogelijk is.
extraParamField: veldnaam voor een extra hidden parameter veld.
@@ -24,6 +26,7 @@
readonly: geeft aan of het veld readonly weergegeven moet worden (true|false(default)).
dohide: verberg de discipline selector
autRW: Geeft aan of er read or write autorisatie geldt.
noJustOne: Onderdrukken van controle of er maar één waarde is die geselecteerd moet worden.
*/ %>
<!-- #include file="./Suggest/disciplineFilter.inc" -->
@@ -34,6 +37,11 @@ function FCLTdisciplineselector(fieldName, objectName, params)
{
params = params || {};
var sgType = "discipline";
var idadd = "";
if (params.idadd)
idadd = params.idadd;
var lwhenEmpty = "";
if (!params.readonly)
{
@@ -41,7 +49,10 @@ function FCLTdisciplineselector(fieldName, objectName, params)
switch(params.module)
{
// Plaatsgegevens
case "MLD": { lwhenEmpty = L("lcl_select_vakgroep");
case "MLD": { lwhenEmpty = idadd == 2 ? L("lcl_select_mld_disc") : L("lcl_select_vakgroep");
break;
}
case "MLDB": { lwhenEmpty = L("lcl_select_mld_disc");
break;
}
case "BES": { lwhenEmpty = L("lcl_select_catalogus");
@@ -55,38 +66,42 @@ function FCLTdisciplineselector(fieldName, objectName, params)
lwhenEmpty = (params.whenEmpty != null ? params.whenEmpty : (params.readonly ? L("lcl_select_readonly") : lwhenEmpty));
var ldiscName = (device.test(device.supportsPlaceholder) ? "" : lwhenEmpty);
var lextraInit = "";
var filtClause = getFiltClauseDiscipline(params.filtercode, params);
var extraInf = getExtraInfDiscipline(params.extracode);
sql = "SELECT COUNT(distinct td.ins_discipline_key) aantal"
+ " FROM ins_tab_discipline td"
+ " , ins_srtdiscipline sd"
+ filtClause.from
+ " WHERE ins_discipline_verwijder IS NULL"
+ " AND td.ins_srtdiscipline_key = sd.ins_srtdiscipline_key(+)" // Alleen bij MLD is de ins_srtdiscipline_key (altijd) ingevuld
+ filtClause.where;
var oRs = Oracle.Execute(sql);
// Als er maar <20><>n vakgroep is, dan deze selecteren.
if (oRs("aantal").value == 1)
if (!params.noJustOne)
{
sql = "SELECT td.ins_discipline_key"
+ ", NVL2(sd.ins_srtdiscipline_prefix, sd.ins_srtdiscipline_prefix || '-', '') "
+ " || " + lcl.xsql('td.ins_discipline_omschrijving', 'td.ins_discipline_key') + " disciplineomschr"
+ extraInf.selectstr
+ " FROM ins_tab_discipline td"
+ ", ins_srtdiscipline sd"
var filtClause = getFiltClauseDiscipline(params.filtercode, params);
var extraInf = getExtraInfDiscipline(params.extracode);
sql = "SELECT COUNT(distinct td.ins_discipline_key) aantal"
+ " FROM ins_tab_discipline td"
+ " , ins_srtdiscipline sd"
+ filtClause.from
+ extraInf.fromstr
+ " WHERE td.ins_discipline_verwijder IS NULL"
+ " WHERE ins_discipline_verwijder IS NULL"
+ " AND td.ins_srtdiscipline_key = sd.ins_srtdiscipline_key(+)" // Alleen bij MLD is de ins_srtdiscipline_key (altijd) ingevuld
+ filtClause.where
+ extraInf.wherestr;
+ filtClause.where;
var oRs = Oracle.Execute(sql);
ldiscName = oRs("disciplineomschr").value;
lextraInit = oRs("extra").value;
params.disc_key = oRs("ins_discipline_key").value;
if (params.ins_key > 0) // dan ben ik zeker nieuw
params.readonly = true;
// Als er maar 1 vakgroep is, dan deze selecteren.
if (oRs("aantal").value == 1)
{
sql = "SELECT td.ins_discipline_key"
+ ", NVL2(sd.ins_srtdiscipline_prefix, sd.ins_srtdiscipline_prefix || '-', '') "
+ " || " + lcl.xsql('td.ins_discipline_omschrijving', 'td.ins_discipline_key') + " disciplineomschr"
+ extraInf.selectstr
+ " FROM ins_tab_discipline td"
+ ", ins_srtdiscipline sd"
+ filtClause.from
+ extraInf.fromstr
+ " WHERE td.ins_discipline_verwijder IS NULL"
+ " AND td.ins_srtdiscipline_key = sd.ins_srtdiscipline_key(+)" // Alleen bij MLD is de ins_srtdiscipline_key (altijd) ingevuld
+ filtClause.where
+ extraInf.wherestr;
var oRs = Oracle.Execute(sql);
ldiscName = oRs("disciplineomschr").value;
lextraInit = oRs("extra").value;
params.disc_key = oRs("ins_discipline_key").value;
if (params.ins_key > 0) // dan ben ik zeker nieuw
params.readonly = true;
}
}
// Bouw de url voor de vakgroep query op
@@ -110,7 +125,7 @@ function FCLTdisciplineselector(fieldName, objectName, params)
} %>
<nobr>
<input type=<%=params.dohide? "hidden" : "text"%> id="<%=fieldName%>_show" class="flddisc<%=(!params.readonly && params.required)? " required" : ""%>" value="<%=safe.htmlattr(ldiscName)%>"
placeholder="<%=lwhenEmpty%>"
placeholder="<%=lwhenEmpty%>" sgType="<%=sgType%><%=idadd%>"
<%=params.readonly? " readonly":""%>
<%=params.onChange && !params.readonly? " sgonChange='" + params.onChange + "'":""%>
>
@@ -144,19 +159,27 @@ function FCLTdisciplineselector(fieldName, objectName, params)
<script type="text/javascript">
$(function()
{
<%=objectName%> = new Suggest({ objectName: "<%=objectName%>",
queryField: $("#<%=fieldName%>_show")[0],
queryUrl: "<%=discQueryUrl%>",
initKey: <%=params.disc_key? params.disc_key : -1%>,
icon: "fa-tag",
keyField: $("#<%=fieldName%>")[0]
<%=params.urlAdd? ", urlAdd: " + urlAddTxt : ""%>
<%=params.extraParamField? ", extraParamField: $(\"" + "#" + params.extraParamField + "\")[0]" : ""%>
<%=params.extraParamField? ", initExtraParam: \"" + safe.jsstring("" + lextraInit) + "\"": ""%>
<%=params.isBad? ", isBad: true": ""%>
<%=params.readonly? ", fieldReadonly: true": ""%>
,highlightDescript: true
<%=objectName%><%=idadd%> = new Suggest({ objectName: "<%=objectName%><%=idadd%>",
sgType: "<%=sgType%><%=idadd%>",
queryField: $("#<%=fieldName%>_show")[0],
queryUrl: "<%=discQueryUrl%>",
initKey: <%=params.disc_key? params.disc_key : -1%>,
icon: "fa-tag",
keyField: $("#<%=fieldName%>")[0]
<%=params.noJustOne ? ", noJustOne: true" : ""%>
<%=params.multitoggle ? ", multitoggle: true" : ""%>
<%=params.urlAdd? ", urlAdd: " + urlAddTxt : ""%>
<%=params.extraParamField? ", extraParamField: $(\"" + "#" + params.extraParamField + "\")[0]" : ""%>
<%=params.extraParamField? ", initExtraParam: \"" + safe.jsstring("" + lextraInit) + "\"": ""%>
<%=params.isBad? ", isBad: true": ""%>
<%=params.readonly? ", fieldReadonly: true": ""%>
<%=params.addfixedoption? ", addfixedoption: JSON.parse('" + safe.jsstring(JSON.stringify(params.addfixedoption)) + "')": ""%>
,highlightDescript: true
});
<% if (params.hidden)
{ %>
<%=objectName%><%=idadd%>.makeHidden();
<% } %>
});
<% if (params.moreinfo && S("faq_enabled") == 1)

View File

@@ -71,20 +71,41 @@ function algxprs(psql, oRsPArr,
var fullSQL = "" // Build a UNION for each INS_DISCIPLINE
var i = 0;
while (i < oRsPArr.length)
var y = 0;
while (y < oRsPArr.length)
{
var discsOfThisLevel = [];
var thisLevel = oRsPArr[i].level;
while (i < oRsPArr.length && oRsPArr[i].level == thisLevel)
var thisLevel = oRsPArr[y].level;
while (y < oRsPArr.length && oRsPArr[y].level == thisLevel)
{
discsOfThisLevel.push(oRsPArr[i].disc);
i ++;
discsOfThisLevel.push(oRsPArr[y].disc);
y++;
}
var multiCol = false;
var disc_3d_sql = "";
if (typeof pdiscipline_column_3d != "string")
{
if (pdiscipline_column_3d.length == 1)
pdiscipline_column_3d = pdiscipline_column_3d[0];
else if (pdiscipline_column_3d.length > 1)
multiCol = true;
}
if (multiCol)
{
var disc_column_arr = [];
for (var z = 0; z < pdiscipline_column_3d.length; z++)
{
disc_column_arr.push(pdiscipline_column_3d[z] + " IN (" + discsOfThisLevel.join(", ") + ")");
}
disc_3d_sql = "(" + disc_column_arr.join(" OR ") + ")";
}
else
disc_3d_sql = pdiscipline_column_3d + " IN (" + discsOfThisLevel.join(", ") + ")";
fullSQL += (fullSQL == ""
? ""
: (psql_group_by? psql_group_by : "") + " \nUNION ALL\n ")
+ psql + " AND " + pdiscipline_column_3d + " IN (" + discsOfThisLevel.join(", ") + ")";
+ psql + " AND " + disc_3d_sql;
__Log(pautfunction+' for disciplines ' + discsOfThisLevel.join(", ") + ' authorized at PRS level ' + thisLevel);
if (thisLevel == -1)
@@ -299,7 +320,27 @@ function discx3d(psql,
discsOfThisLevel.push(oRs("ins_discipline_key").Value);
oRs.MoveNext()
}
pfullSQL = psql + " AND "+ pdiscipline_column_3d + " IN (" + discsOfThisLevel.join(", ") + ")";
var multiCol = false;
if (typeof pdiscipline_column_3d != "string")
{
if (pdiscipline_column_3d.length == 1)
pdiscipline_column_3d = pdiscipline_column_3d[0];
else if (pdiscipline_column_3d.length > 1)
multiCol = true;
}
if (multiCol)
{
pfullSQL = psql + " AND (";
var disc_column_arr = [];
for (var x = 0; x < pdiscipline_column_3d.length; x++)
{
disc_column_arr.push(pdiscipline_column_3d[x] + " IN (" + discsOfThisLevel.join(", ") + ")");
}
pfullSQL += disc_column_arr.join(" OR ") + ")";
}
else
pfullSQL = psql + " AND "+ pdiscipline_column_3d + " IN (" + discsOfThisLevel.join(", ") + ")";
__Log(pautfunction + ' for disciplines ' + discsOfThisLevel.join(", ") + ' authorized at ALG level ' + thisLevel + (srtalg?' for srtalg ' + srtalg:""));
variationCount ++;
if (variationCount > 1)

View File

@@ -210,13 +210,18 @@ function FCLTpersoonselector(fieldName, objectName, params)
<%=params.addfixedoption? ", addfixedoption: JSON.parse('" + safe.jsstring(JSON.stringify(params.addfixedoption)) + "')": ""%>
// ,highlightDescript: true
});
if (FcltMgr.getCaller())
{
$("#<%=fieldName%>_caller").show();
}
<% if (isBad) { %>
<%=objectName%><%=idadd%>.isBad();
<% } %>
if (FcltMgr.getCaller())
{
$("#<%=fieldName%>_caller").show();
}
<% if (isBad)
{ %>
<%=objectName%><%=idadd%>.isBad();
<% }
if (params.hidden)
{ %>
<%=objectName%><%=idadd%>.makeHidden();
<% } %>
});
<% if (params.multi) { %>
function onChangeMultiPerson(key, naam)

View File

@@ -110,6 +110,10 @@ function FCLTreferentieselector(fieldName, objectName, params)
<%=params.isBad? ", isBad: true": ""%>
<%=params.readonly? ", fieldReadonly: true": ""%>
});
<% if (params.hidden)
{ %>
<%=objectName%>.makeHidden();
<% } %>
});
</script>
<%

View File

@@ -90,7 +90,6 @@ function foreignKeyTable(field)
"ALG_VERDIEPING" : { tbl: "alg_verdieping", key: "alg_verdieping_key", desc: "alg_verdieping_code", name: "alg_verdieping_code" },
"ALG_RUIMTE" : { tbl: "alg_ruimte", key: "alg_ruimte_key", desc: "alg_ruimte_nr" },
"ALG_TERREINSECTOR" : { tbl: "alg_terreinsector", key: "alg_terreinsector_key", desc: "alg_terreinsector_code" },
"MLD_BEHANDELGROEP" : { tbl: "mld_behandelgroep", key: "mld_behandelgroep_key", desc: "mld_behandelgroep_naam" },
"MLD_DIENSTNIVEAU" : { tbl: "mld_dienstniveau", key: "mld_dienstniveau_key", desc: lcl.xsql("mld_dienstniveau_omschr", "mld_dienstniveau_key") },
"RES_ACTIVITEIT" : { tbl: "res_activiteit", key: "res_activiteit_key", desc: lcl.xsql("res_activiteit_omschrijving", "res_activiteit_key") },
"RES_OPSTELLING" : { tbl: "res_opstelling", key: "res_opstelling_key", desc: lcl.xsql("res_opstelling_omschrijving", "res_opstelling_key") },