RWSN#40827 Contractmodule geavanceerd zoeken uitbreiden
svn path=/Website/trunk/; revision=41164
This commit is contained in:
@@ -78,7 +78,7 @@ function generateFlexKenmerkCode(params)
|
|||||||
var disc_key = loRs("ins_discipline_key").value;
|
var disc_key = loRs("ins_discipline_key").value;
|
||||||
}
|
}
|
||||||
|
|
||||||
sql = "SELECT k.cnt_kenmerk_key kenmerk_key, "
|
sql = "SELECT DISTINCT " + (advanced?"k.cnt_srtkenmerk_key":"k.cnt_kenmerk_key") + " kenmerk_key, "
|
||||||
+ lcl.xsql('t.cnt_srtkenmerk_omschrijving', 't.cnt_srtkenmerk_key') +" kenmerk_omschrijving, "
|
+ lcl.xsql('t.cnt_srtkenmerk_omschrijving', 't.cnt_srtkenmerk_key') +" kenmerk_omschrijving, "
|
||||||
+ " t.cnt_srtkenmerk_kenmerktype kenmerk_kenmerktype, "
|
+ " t.cnt_srtkenmerk_kenmerktype kenmerk_kenmerktype, "
|
||||||
+ " t.fac_kenmerkdomein_key kenmerkdomein_key, "
|
+ " t.fac_kenmerkdomein_key kenmerkdomein_key, "
|
||||||
@@ -108,15 +108,49 @@ function generateFlexKenmerkCode(params)
|
|||||||
+ " FROM cnt_srtkenmerk t"
|
+ " FROM cnt_srtkenmerk t"
|
||||||
+ ", cnt_kenmerk k"
|
+ ", cnt_kenmerk k"
|
||||||
+ ", cnt_discipline s"
|
+ ", cnt_discipline s"
|
||||||
+ " WHERE s.ins_discipline_key = " + disc_key
|
+ " WHERE k.cnt_srtcontract_key = s.ins_discipline_key"
|
||||||
+ " AND k.cnt_srtcontract_key = s.ins_discipline_key"
|
+ " AND k.cnt_kenmerk_verwijder IS NULL"
|
||||||
+ " AND k.cnt_kenmerk_verwijder IS NULL"
|
+ " AND k.cnt_srtkenmerk_key = t.cnt_srtkenmerk_key"
|
||||||
+ " AND k.cnt_srtkenmerk_key = t.cnt_srtkenmerk_key"
|
+ " AND t.cnt_srtkenmerk_verwijder IS NULL"
|
||||||
+ " AND t.cnt_srtkenmerk_verwijder IS NULL"
|
+ (disc_key > 0
|
||||||
|
? " AND s.ins_discipline_key = " + disc_key
|
||||||
|
: "")
|
||||||
+ (!this_cnt.canMANread? " AND cnt_kenmerk_volgnummer >= 100" : "")
|
+ (!this_cnt.canMANread? " AND cnt_kenmerk_volgnummer >= 100" : "")
|
||||||
+ (!this_cnt.canUSEread? " AND cnt_kenmerk_volgnummer <= 100" : "")
|
+ (!this_cnt.canUSEread? " AND cnt_kenmerk_volgnummer <= 100" : "");
|
||||||
+ " ORDER BY k.cnt_kenmerk_volgnummer"
|
|
||||||
+ ", UPPER("+lcl.xsql('t.cnt_srtkenmerk_omschrijving', 't.cnt_srtkenmerk_key')+")";
|
if (advanced) // Nog harder de dubbelen er uit filteren. Een kenmerk kan bijvoorbeeld bij verschillende
|
||||||
|
{ // objectsoorten een ander volgnummer hebben en dat interesseert ons echt niet.
|
||||||
|
sql = "SELECT kenmerk_key, "
|
||||||
|
+ " MIN(kenmerk_omschrijving) kenmerk_omschrijving, "
|
||||||
|
+ " MIN(kenmerk_kenmerktype ) kenmerk_kenmerktype, "
|
||||||
|
+ " MIN(kenmerkdomein_key ) kenmerkdomein_key, "
|
||||||
|
+ " MIN(kenmerk_lengte ) kenmerk_lengte, "
|
||||||
|
+ " MIN(kenmerk_dec ) kenmerk_dec, "
|
||||||
|
+ " MIN(kenmerk_nmin ) kenmerk_nmin, "
|
||||||
|
+ " MIN(kenmerk_nmax ) kenmerk_nmax, "
|
||||||
|
+ " MIN(kenmerk_systeem ) kenmerk_systeem, "
|
||||||
|
+ " MIN(kenmerk_waarde ) kenmerk_waarde, "
|
||||||
|
+ " MIN(kenmerk_volgnr ) kenmerk_volgnr, "
|
||||||
|
+ " MIN(kenmerk_dimensie ) kenmerk_dimensie, "
|
||||||
|
+ " MIN(kenmerk_hint ) kenmerk_hint, "
|
||||||
|
+ " MIN(kenmerk_default ) kenmerk_default, "
|
||||||
|
+ " MIN(otherpath ) otherpath, "
|
||||||
|
+ " MIN(kenmerk_verplicht ) kenmerk_verplicht, "
|
||||||
|
+ " MIN(kenmerk_groep ) kenmerk_groep, "
|
||||||
|
+ " MIN(kenmerk_toonbaar ) kenmerk_toonbaar, "
|
||||||
|
+ " MIN(kenmerk_uniek ) kenmerk_uniek,"
|
||||||
|
+ " MIN(kenmerk_regexp ) kenmerk_regexp"
|
||||||
|
+ " FROM (" + sql + ")"
|
||||||
|
+ " GROUP BY kenmerk_key"
|
||||||
|
+ " ORDER BY kenmerk_volgnr"
|
||||||
|
+ " , UPPER (kenmerk_omschrijving)"
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sql += " ORDER BY k.cnt_kenmerk_volgnummer"
|
||||||
|
+ ", UPPER(" + lcl.xsql("t.cnt_srtkenmerk_omschrijving", "t.cnt_srtkenmerk_key") + ")";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
var trn = 0;
|
var trn = 0;
|
||||||
|
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
<!-- #include file="../Shared/persoonselector.inc" -->
|
<!-- #include file="../Shared/persoonselector.inc" -->
|
||||||
<!-- #include file="../Shared/plaatsselector.inc" -->
|
<!-- #include file="../Shared/plaatsselector.inc" -->
|
||||||
<!-- #include file="../Shared/kostenplaatsselector.inc" -->
|
<!-- #include file="../Shared/kostenplaatsselector.inc" -->
|
||||||
|
<!-- #include file="../Shared/calendar.inc" -->
|
||||||
<!-- #include file="../Shared/xd.inc" -->
|
<!-- #include file="../Shared/xd.inc" -->
|
||||||
<!-- #include file="../Shared/kostensoortselector.inc" -->
|
<!-- #include file="../Shared/kostensoortselector.inc" -->
|
||||||
|
|
||||||
@@ -159,12 +160,6 @@ var authparams = user.checkAutorisation(autfunction, true) || {};
|
|||||||
{ %>
|
{ %>
|
||||||
function myModal(init)
|
function myModal(init)
|
||||||
{
|
{
|
||||||
if ($('#disc').val() == -1)
|
|
||||||
{
|
|
||||||
FcltMgr.alert(L("lcl_cnt_nosrttype_selected"));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var key = $('#disc').val();
|
var key = $('#disc').val();
|
||||||
var url = "load_kenmerk.asp?disc=" + $('#disc').val()
|
var url = "load_kenmerk.asp?disc=" + $('#disc').val()
|
||||||
+ "&advanced=1";
|
+ "&advanced=1";
|
||||||
|
|||||||
@@ -183,20 +183,22 @@ function getKenmerkSql(pmodule, pkeyColumn, prequestForm)
|
|||||||
{
|
{
|
||||||
// add_b blijft true trouwens
|
// add_b blijft true trouwens
|
||||||
|
|
||||||
// Bij INS bevat kk een ins_srtkenmerk_key, niet een ins_kenmerk_key zoals de rest.
|
// Bij INS bevat kk een ins_srtkenmerk_key, niet een ins_kenmerk_key zoals de rest.
|
||||||
// Dat is zo geregeld in INS/ins_flexkenmerk.inc
|
// Dat is zo geregeld in INS/ins_flexkenmerk.inc
|
||||||
// We moeten nu wel de tabel ins_kenmerk er bij slepen
|
// We moeten nu wel de tabel ins_kenmerk er bij slepen
|
||||||
// Zelfde truc ook voor MLD
|
// Zelfde truc ook voor MLD
|
||||||
|
|
||||||
where = "(" + ((ko == "IS NULL") ? " NOT " : "")
|
where = "(" + ((ko == "IS NULL") ? " NOT " : "")
|
||||||
+ " EXISTS (SELECT 'x'"
|
+ " EXISTS (SELECT 'x'"
|
||||||
+ " FROM " + ktable
|
+ " FROM " + ktable
|
||||||
+ (pmodule == "INS"? ", ins_kenmerk ik":"")
|
+ (pmodule == "INS"? ", ins_kenmerk ik":"")
|
||||||
+ (pmodule == "MLD"? ", mld_kenmerk mk":"")
|
+ (pmodule == "MLD"? ", mld_kenmerk mk":"")
|
||||||
|
+ (pmodule == "CNT"? ", cnt_kenmerk ck":"")
|
||||||
+ " WHERE "
|
+ " WHERE "
|
||||||
+ (pmodule == "INS"? " ik.ins_srtkenmerk_key = " + kk + " AND ik.ins_kenmerk_key = ins_kenmerkdeel.ins_kenmerk_key":"")
|
+ (pmodule == "INS"? " ik.ins_srtkenmerk_key = " + kk + " AND ik.ins_kenmerk_key = ins_kenmerkdeel.ins_kenmerk_key":"")
|
||||||
+ (pmodule == "MLD"? " mk.mld_srtkenmerk_key = " + kk + " AND mk.mld_kenmerk_key = "+ktable+".mld_kenmerk_key":"")
|
+ (pmodule == "MLD"? " mk.mld_srtkenmerk_key = " + kk + " AND mk.mld_kenmerk_key = "+ktable+".mld_kenmerk_key":"")
|
||||||
+ (pmodule != "INS" && pmodule != "MLD" ? pmodule.toLowerCase() + "_kenmerk_key = " + kk:"")
|
+ (pmodule == "CNT"? " ck.cnt_srtkenmerk_key = " + kk + " AND ck.cnt_kenmerk_key = "+ktable+".cnt_kenmerk_key":"")
|
||||||
|
+ (pmodule != "INS" && pmodule != "MLD" && pmodule != "CNT" ? pmodule.toLowerCase() + "_kenmerk_key = " + kk:"")
|
||||||
+ " AND " + (add_c ? "((" : "") + tablekey2 + " = " + tableref + "." + tablekey;
|
+ " AND " + (add_c ? "((" : "") + tablekey2 + " = " + tableref + "." + tablekey;
|
||||||
|
|
||||||
if (add_c)
|
if (add_c)
|
||||||
@@ -220,9 +222,11 @@ function getKenmerkSql(pmodule, pkeyColumn, prequestForm)
|
|||||||
+ " FROM " + ktable
|
+ " FROM " + ktable
|
||||||
+ (pmodule == "INS"? ", ins_kenmerk ik":"")
|
+ (pmodule == "INS"? ", ins_kenmerk ik":"")
|
||||||
+ (pmodule == "MLD"? ", mld_kenmerk mk":"")
|
+ (pmodule == "MLD"? ", mld_kenmerk mk":"")
|
||||||
|
+ (pmodule == "CNT"? ", cnt_kenmerk ck":"")
|
||||||
+ " WHERE "
|
+ " WHERE "
|
||||||
+ (pmodule == "INS"? " ik.ins_srtkenmerk_key = " + kk + " AND ik.ins_kenmerk_key = ins_kenmerkdeel.ins_kenmerk_key":"")
|
+ (pmodule == "INS"? " ik.ins_srtkenmerk_key = " + kk + " AND ik.ins_kenmerk_key = ins_kenmerkdeel.ins_kenmerk_key":"")
|
||||||
+ (pmodule == "MLD"? " mk.mld_srtkenmerk_key = " + kk + " AND mk.mld_kenmerk_key = "+ktable+".mld_kenmerk_key":"")
|
+ (pmodule == "MLD"? " mk.mld_srtkenmerk_key = " + kk + " AND mk.mld_kenmerk_key = "+ktable+".mld_kenmerk_key":"")
|
||||||
|
+ (pmodule == "CNT"? " ck.cnt_srtkenmerk_key = " + kk + " AND ck.mld_kenmerk_key = "+ktable+".cnt_kenmerk_key":"")
|
||||||
+ (pmodule != "INS" && pmodule != "MLD" ? pmodule.toLowerCase() + "_kenmerk_key = " + kk:"")
|
+ (pmodule != "INS" && pmodule != "MLD" ? pmodule.toLowerCase() + "_kenmerk_key = " + kk:"")
|
||||||
+ " AND " + where1 + " " + where2
|
+ " AND " + where1 + " " + where2
|
||||||
+ andALG + andPRS
|
+ andALG + andPRS
|
||||||
@@ -235,16 +239,19 @@ function getKenmerkSql(pmodule, pkeyColumn, prequestForm)
|
|||||||
// voor filter Geen Waarde zou ook nog: Wel een record maar met een NULL waarde kunnen gelden
|
// voor filter Geen Waarde zou ook nog: Wel een record maar met een NULL waarde kunnen gelden
|
||||||
// die nemen we ook nog mee. Alleen bij "Gevuld" (verwerkt in 'where') hoeven we niet verder naar de waarden te kijken
|
// die nemen we ook nog mee. Alleen bij "Gevuld" (verwerkt in 'where') hoeven we niet verder naar de waarden te kijken
|
||||||
// in alle andere gevallen komt hier de conditie 'kenmerk=waarde' erbij
|
// in alle andere gevallen komt hier de conditie 'kenmerk=waarde' erbij
|
||||||
if (ko != "IS NOT NULL") {
|
if (ko != "IS NOT NULL")
|
||||||
|
{
|
||||||
sql_k +=((add_b || add_c) ? " OR " : "")
|
sql_k +=((add_b || add_c) ? " OR " : "")
|
||||||
+ " " + tableref + "." + tablekey + " IN (SELECT " + tablekey2
|
+ " " + tableref + "." + tablekey + " IN (SELECT " + tablekey2
|
||||||
+ " FROM " + ktable
|
+ " FROM " + ktable
|
||||||
+ (pmodule == "INS"? ", ins_kenmerk ik":"")
|
+ (pmodule == "INS"? ", ins_kenmerk ik":"")
|
||||||
+ (pmodule == "MLD"? ", mld_kenmerk mk":"")
|
+ (pmodule == "MLD"? ", mld_kenmerk mk":"")
|
||||||
|
+ (pmodule == "CNT"? ", cnt_kenmerk ck":"")
|
||||||
+ " WHERE "
|
+ " WHERE "
|
||||||
+ (pmodule == "INS"? " ik.ins_srtkenmerk_key = " + kk + " AND ik.ins_kenmerk_key = ins_kenmerkdeel.ins_kenmerk_key":"")
|
+ (pmodule == "INS"? " ik.ins_srtkenmerk_key = " + kk + " AND ik.ins_kenmerk_key = ins_kenmerkdeel.ins_kenmerk_key":"")
|
||||||
+ (pmodule == "MLD"? " mk.mld_srtkenmerk_key = " + kk + " AND mk.mld_kenmerk_key = "+ktable+".mld_kenmerk_key":"")
|
+ (pmodule == "MLD"? " mk.mld_srtkenmerk_key = " + kk + " AND mk.mld_kenmerk_key = "+ktable+".mld_kenmerk_key":"")
|
||||||
+ (pmodule != "INS" && pmodule != "MLD" ? pmodule.toLowerCase() + "_kenmerk_key = " + kk:"")
|
+ (pmodule == "CNT"? " ck.cnt_srtkenmerk_key = " + kk + " AND ck.cnt_kenmerk_key = "+ktable+".cnt_kenmerk_key":"")
|
||||||
|
+ (pmodule != "INS" && pmodule != "MLD" && pmodule != "CNT" ? pmodule.toLowerCase() + "_kenmerk_key = " + kk:"")
|
||||||
+ " AND " + where1 + " " + where2
|
+ " AND " + where1 + " " + where2
|
||||||
+ andALG + andPRS
|
+ andALG + andPRS
|
||||||
+ where3 + where4
|
+ where3 + where4
|
||||||
|
|||||||
Reference in New Issue
Block a user