FCLT#56026 Dubbelingen in harmonica MLDUSE

svn path=/Website/branches/v2018.2/; revision=40596
This commit is contained in:
Erik Groener
2019-01-18 13:38:58 +00:00
parent 7b2d64fc41
commit f484871c9d

View File

@@ -119,6 +119,10 @@ var sql = "SELECT sm.mld_stdmelding_key,"
+ " d.ins_discipline_key,"
+ " sd.ins_srtdiscipline_key,"
+ " sd.ins_srtdiscipline_prefix,"
+ " CASE WHEN sd.ins_srtdiscipline_prefix IS NULL OR " + srtdisckeyArr.length + "=1"
+ " THEN ''"
+ " ELSE sd.ins_srtdiscipline_prefix ||'-'"
+ " END ||"+lcl.xsql("d.ins_discipline_omschrijving", "d.ins_discipline_key") + " full_discname,"
+ " sm.mld_stdmelding_image foto,"
+ " sm.mld_stdmelding_externurl"
+ " FROM mld_stdmelding sm,"
@@ -170,55 +174,55 @@ switch (lvl) {
}
default: {
sql+= " ORDER BY d.ins_discipline_volgnr NULLS LAST"
+ " , sd.ins_srtdiscipline_prefix, "
+ lcl.xsql('d.ins_discipline_omschrijving', 'd.ins_discipline_key')
+ " , sm.mld_stdmelding_volgnr, "
+ lcl.xsql('sm.mld_stdmelding_omschrijving','sm.mld_stdmelding_key');
+ ", 11" // is een case when, die ga ik niet helemaal herhalen
+ ", sm.mld_stdmelding_volgnr"
+ ", " +lcl.xsql('sm.mld_stdmelding_omschrijving','sm.mld_stdmelding_key');
}
}
var oRs= Oracle.Execute(sql)
var last_disc = -1;
var last_grp = "#initial#";
var last_name = "#initial#";
while (!oRs.Eof)
{
switch (lvl) {
case 2: {
if (last_grp != oRs("mld_stdmeldinggroep_key").Value)
{ // Groep header
%>
<h3><a><%=L("lcl_fe_menu_stdmeldinggroep")+" "+safe.html(oRs("mld_stdmeldinggroep_naam").Value)%></a></h3>
<div style='display:none'>
<table width="100%"><tr>
<%
pos = 0;
switch (lvl) {
case 2: {
if (last_grp != oRs("mld_stdmeldinggroep_key").Value)
{ // Groep header
%>
<h3><a><%=L("lcl_fe_menu_stdmeldinggroep")+" "+safe.html(oRs("mld_stdmeldinggroep_naam").Value)%></a></h3>
<div style='display:none'>
<table width="100%"><tr>
<%
pos = 0;
}
break;
}
break;
}
case 0: {
if (last_disc != oRs("ins_srtdiscipline_key").Value)
{ // Vakgroeptype header
%>
<h3><a><%=L("lcl_fe_menu_srtdiscipline")+" "+safe.html(oRs("ins_srtdiscipline_omschrijving").Value)%></a></h3>
<div style='display:none'>
<table width="100%"><tr>
<%
pos = 0;
case 0: {
if (last_disc != oRs("ins_srtdiscipline_key").Value)
{ // Vakgroeptype header
%>
<h3><a><%=L("lcl_fe_menu_srtdiscipline")+" "+safe.html(oRs("ins_srtdiscipline_omschrijving").Value)%></a></h3>
<div style='display:none'>
<table width="100%"><tr>
<%
pos = 0;
}
break;
}
break;
}
default: {
if (last_disc != oRs("ins_discipline_key").Value)
{ // Vakgroep header
var prefix = (oRs("ins_srtdiscipline_prefix").Value==null || srtdisckeyArr.length==1)?"":oRs("ins_srtdiscipline_prefix").Value+"-";
%>
<h3><a><%=L("lcl_fe_menu_discipline")+" "+safe.html(prefix+oRs("ins_discipline_omschrijving").Value)%></a></h3>
<div style='display:none'>
<table width="100%"><tr>
<%
pos = 0;
default: {
if (last_name != oRs("full_discname").Value)
{ // Vakgroep header
%>
<h3><a><%=L("lcl_fe_menu_discipline")+" "+safe.html(oRs("full_discname").Value)%></a></h3>
<div style='display:none'>
<table width="100%"><tr>
<%
pos = 0;
}
}
}
}
var maxcol = S("iconcolumns");
if (pos > 0 && pos%maxcol == 0) {
%></tr><tr><%
@@ -231,12 +235,14 @@ switch (lvl) {
</td><%
pos ++;
last_disc = (lvl==1 ? oRs("ins_discipline_key").Value : oRs("ins_srtdiscipline_key").Value);
last_grp = (lvl==2 ? oRs("mld_stdmeldinggroep_key").Value : 0);
last_grp = (lvl==2 ? oRs("mld_stdmeldinggroep_key").Value : 0);
last_name = (lvl==1 ? oRs("full_discname").Value : "");
oRs.MoveNext();
if (oRs.Eof
|| (lvl==0 && last_disc != oRs("ins_srtdiscipline_key").Value)
|| (lvl==0 && last_disc != oRs("ins_srtdiscipline_key").Value)
|| (lvl==2 && last_grp != oRs("mld_stdmeldinggroep_key").Value)
|| (lvl!=0 && lvl!=2 && last_disc != oRs("ins_discipline_key").Value ))
|| (lvl!=0 && lvl!=2 && (last_name != "" && last_name != oRs("full_discname").Value) )
)
{ %>
</tr></table></div>
<%