AADS#32133: Vervolgvraag AADS#32035 over dienstniveaus.
svn path=/Website/trunk/; revision=31382
This commit is contained in:
@@ -683,7 +683,9 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
|
||||
var urlAdd;
|
||||
if ((S("mld_edit_layout") == 1)) // Plaats gegevens worden voor de discipline/stdmelding gegevens getoond. Stdmelding afhankelijk van dienstlocatie maken. Daarom locatie en gebouw meegeven.
|
||||
urlAdd = [{urlParam: "lockey", field: "locatiekey", init: mld_melding.loc_key},
|
||||
{urlParam: "bldkey", field: "gebouwkey", init: mld_melding.bld_key}];
|
||||
{urlParam: "bldkey", field: "gebouwkey", init: mld_melding.bld_key},
|
||||
{urlParam: "flrkey", field: "verdiepingkey", init: mld_melding.flr_key},
|
||||
{urlParam: "roomkey", field: "ruimtekey", init: mld_melding.room_key}];
|
||||
FCLTdisciplineselector("disc",
|
||||
"sgDisc",
|
||||
{ label: L("lcl_vakgroup"),
|
||||
@@ -714,6 +716,8 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
|
||||
{
|
||||
urlAdd.push({urlParam: "lockey", field: "locatiekey", init: mld_melding.loc_key});
|
||||
urlAdd.push({urlParam: "bldkey", field: "gebouwkey", init: mld_melding.bld_key});
|
||||
urlAdd.push({urlParam: "flrkey", field: "verdiepingkey", init: mld_melding.flr_key});
|
||||
urlAdd.push({urlParam: "foomkey", field: "ruimtekey", init: mld_melding.room_key});
|
||||
}
|
||||
|
||||
var res =
|
||||
|
||||
@@ -36,6 +36,8 @@ var module = getQParam("module");
|
||||
var ins_key = getQParamInt("ins_key", -1);
|
||||
var loc_key = getQParamInt("lockey", -1);
|
||||
var bld_key = getQParamInt("bldkey", -1);
|
||||
var flr_key = getQParamInt("flrkey", -1);
|
||||
var room_key = getQParamInt("roomkey", -1);
|
||||
var extracode = getQParam("extracode", "");
|
||||
var perslidKey = getQParamInt("perslidKey"); // Voor wie is de melding
|
||||
var filtcode = getQParam("filtcode", "");
|
||||
@@ -75,6 +77,8 @@ var params = { autfunctionKey: autfunctionKey,
|
||||
ins_key: ins_key,
|
||||
loc_key: loc_key,
|
||||
bld_key: bld_key,
|
||||
flr_key: flr_key,
|
||||
room_key: room_key,
|
||||
perslidKey: perslidKey };
|
||||
|
||||
var sql = "";
|
||||
|
||||
@@ -32,6 +32,8 @@ var disc_key = getQParamInt("disc_key", -1);
|
||||
var ins_key = getQParamInt("ins_key", -1);
|
||||
var loc_key = getQParamInt("lockey", -1);
|
||||
var bld_key = getQParamInt("bldkey", -1);
|
||||
var flr_key = getQParamInt("flrkey", -1);
|
||||
var room_key = getQParamInt("roomkey", -1);
|
||||
var extracode = getQParam("extracode", "");
|
||||
var perslidKey = getQParamInt("perslidKey", user_key); // Voor wie is de melding
|
||||
var show_expired = (getQParamInt("show_expired", 0) == 1); // Vervallen stdmeldingen ook tonen
|
||||
@@ -44,6 +46,8 @@ var filt_params = { disc_key: disc_key,
|
||||
ins_key: ins_key,
|
||||
loc_key: loc_key,
|
||||
bld_key: bld_key,
|
||||
flr_key: flr_key,
|
||||
room_key: room_key,
|
||||
perslidKey: perslidKey,
|
||||
autfunctionKey: autfunctionKey,
|
||||
show_expired: show_expired
|
||||
|
||||
@@ -131,20 +131,35 @@ function getFiltClauseDiscipline(pfiltcode, params)
|
||||
|
||||
}
|
||||
|
||||
if (S("mld_edit_layout") == 1 && params.loc_key > 0 && params.bld_key > 0)
|
||||
if (S("mld_edit_layout") == 1 && params.loc_key > 0) // Als de bld_key, flr_key of room_key is meegegeven is ook de loc_key meegegeven.
|
||||
{ // Plaats gegevens worden voor de discipline/stdmelding gegevens getoond. Discipline en stdmelding afhankelijk van dienstlocatie maken.
|
||||
lfiltClause.where += " AND (sm.mld_stdmelding_vereisdienst = 0"
|
||||
+ " OR"
|
||||
+ " (sm.mld_stdmelding_vereisdienst = 1 AND"
|
||||
+ " EXISTS (SELECT bdl.prs_bedrijf_key"
|
||||
+ " FROM prs_bedrijfdienstlocatie bdl"
|
||||
+ " , prs_v_aanwezigbedrijf b"
|
||||
+ " WHERE bdl.prs_bedrijf_key = b.prs_bedrijf_key"
|
||||
+ " AND bdl.prs_dienst_key = sm.prs_dienst_key"
|
||||
+ " AND ( (bdl.alg_gebouw_key = " + params.bld_key
|
||||
+ " OR bdl.alg_gebouw_key IS NULL)"
|
||||
+ " AND (bdl.alg_locatie_key = " + params.loc_key
|
||||
+ " OR bdl.alg_locatie_key IS NULL)))))";
|
||||
lfiltClause.where += " AND EXISTS (SELECT COALESCE (NULL"
|
||||
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
|
||||
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
|
||||
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
|
||||
+ " , al.mld_dienstniveau_key"
|
||||
+ " ) mld_dienstniveau_key"
|
||||
+ " FROM"
|
||||
+ (params.room_key > 0? " alg_ruimte ar," : "")
|
||||
+ (params.flr_key > 0? " alg_verdieping av," : "")
|
||||
+ (params.bld_key > 0? " alg_gebouw ag," : "")
|
||||
+ " alg_locatie al,"
|
||||
+ " mld_dienstpakket dp"
|
||||
+ " WHERE"
|
||||
+ (params.room_key > 0? " ar.alg_ruimte_key = " + params.room_key
|
||||
+ " AND ar.alg_verdieping_key = av.alg_verdieping_key AND" : "")
|
||||
+ (params.flr_key > 0? " av.alg_verdieping_key = " + params.flr_key
|
||||
+ " AND av.alg_gebouw_key = ag.alg_gebouw_key AND" : "")
|
||||
+ (params.bld_key > 0? " ag.alg_gebouw_key = " + params.bld_key
|
||||
+ " AND ag.alg_locatie_key = al.alg_locatie_key AND" : "")
|
||||
+ " al.alg_locatie_key = " + params.loc_key
|
||||
+ " AND COALESCE (NULL"
|
||||
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
|
||||
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
|
||||
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
|
||||
+ " , al.mld_dienstniveau_key"
|
||||
+ " ) = dp.mld_dienstniveau_key"
|
||||
+ " )"
|
||||
}
|
||||
return lfiltClause;
|
||||
}
|
||||
|
||||
@@ -91,17 +91,35 @@ function getFiltClauseStdmelding(pfiltcode, params, init)
|
||||
|
||||
}
|
||||
|
||||
if (S("mld_edit_layout") == 1 && params.loc_key > 0 && params.bld_key > 0)
|
||||
if (S("mld_edit_layout") == 1 && params.loc_key > 0) // Als de bld_key, flr_key of room_key is meegegeven is ook de loc_key meegegeven.
|
||||
{ // Plaats gegevens worden voor de discipline/stdmelding gegevens getoond. Discipline en stdmelding afhankelijk van dienstlocatie maken.
|
||||
lfiltClause.where += " AND EXISTS (SELECT bdl.prs_bedrijf_key"
|
||||
+ " FROM prs_bedrijfdienstlocatie bdl"
|
||||
+ " , prs_v_aanwezigbedrijf b"
|
||||
+ " WHERE bdl.prs_bedrijf_key = b.prs_bedrijf_key"
|
||||
+ " AND bdl.prs_dienst_key = sm.prs_dienst_key"
|
||||
+ " AND ( (bdl.alg_gebouw_key = " + params.bld_key
|
||||
+ " OR bdl.alg_gebouw_key IS NULL)"
|
||||
+ " AND (bdl.alg_locatie_key = " + params.loc_key
|
||||
+ " OR bdl.alg_locatie_key IS NULL)))";
|
||||
lfiltClause.where += " AND EXISTS (SELECT COALESCE (NULL"
|
||||
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
|
||||
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
|
||||
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
|
||||
+ " , al.mld_dienstniveau_key"
|
||||
+ " ) mld_dienstniveau_key"
|
||||
+ " FROM"
|
||||
+ (params.room_key > 0? " alg_ruimte ar," : "")
|
||||
+ (params.flr_key > 0? " alg_verdieping av," : "")
|
||||
+ (params.bld_key > 0? " alg_gebouw ag," : "")
|
||||
+ " alg_locatie al,"
|
||||
+ " mld_dienstpakket dp"
|
||||
+ " WHERE"
|
||||
+ (params.room_key > 0? " ar.alg_ruimte_key = " + params.room_key
|
||||
+ " AND ar.alg_verdieping_key = av.alg_verdieping_key AND" : "")
|
||||
+ (params.flr_key > 0? " av.alg_verdieping_key = " + params.flr_key
|
||||
+ " AND av.alg_gebouw_key = ag.alg_gebouw_key AND" : "")
|
||||
+ (params.bld_key > 0? " ag.alg_gebouw_key = " + params.bld_key
|
||||
+ " AND ag.alg_locatie_key = al.alg_locatie_key AND" : "")
|
||||
+ " al.alg_locatie_key = " + params.loc_key
|
||||
+ " AND COALESCE (NULL"
|
||||
+ (params.room_key > 0? " , ar.mld_dienstniveau_key" : "")
|
||||
+ (params.flr_key > 0? " , av.mld_dienstniveau_key" : "")
|
||||
+ (params.bld_key > 0? " , ag.mld_dienstniveau_key" : "")
|
||||
+ " , al.mld_dienstniveau_key"
|
||||
+ " ) = dp.mld_dienstniveau_key"
|
||||
+ " )"
|
||||
}
|
||||
|
||||
return lfiltClause;
|
||||
|
||||
Reference in New Issue
Block a user