FSN#40537 herhaalde (waarden in) kolommen in rapporten kunnen nu met een extra optie onderdrukt worden ("Verberg herhalingen")

svn path=/Website/trunk/; revision=35754
This commit is contained in:
2017-10-19 11:17:48 +00:00
parent 7a68a709a6
commit 2fcf931453
5 changed files with 35 additions and 2 deletions

View File

@@ -274,7 +274,7 @@ function model_reports(fac_usrrap_key)
if (fld == keyfield)
fld = "id";
model.fields[fld] = field;
if (usrrap.columns[i].visible.id == 'V')
if (usrrap.columns[i].visible.id == "V" || usrrap.columns[i].visible.id == "S")
{
model.list.columns.push(fld);
model.list.groupby.push(field.group.id);

View File

@@ -101,6 +101,7 @@ var sorttable = {
},
doSort: function (e)
{
$(".rstable td.dupe").removeClass("dupe");
var icon = "fa-sort-alpha";
if (this.sorttable_sortfunction == sorttable.sort_numeric || this.sorttable_sortfunction == sorttable.sort_numericcomma)
var icon = "fa-sort-numeric";

View File

@@ -243,6 +243,8 @@ function scaffolding_list(model, scf_params)
// Ook kijken of we multiedit moeten aanbieden
var multiedit = false;
var title = model.records_title;
var suppress = true;
var lastColKey = -1;
for (var fld in model.fields)
{
var field = model.fields[fld];
@@ -253,6 +255,9 @@ function scaffolding_list(model, scf_params)
// Die is echter niet included
title = model.fields[field.uniquewith].label;
}
suppress = suppress && field.visible != "V";
if (suppress && field.visible == "S")
lastColKey++;
}
var rst = new ResultsetTable({ dataset: xxx_array,
@@ -264,6 +269,7 @@ function scaffolding_list(model, scf_params)
canCSV: !nobuttons && model.list.canCSV,
rowClass: model.list.rowClass || fnRowClass,
rowChecked: fnRowChecked,
lastColKey: lastColKey,
rowData: scf_params.list.fnRowData,
outputmode: outputmode,
noPrint: nobuttons,

View File

@@ -540,6 +540,20 @@ div.ias {
{
visibility:visible;
}
.rstable tbody tr:nth-child(even) td.dupe
{
color: #FFFFFF;
}
.rstable tbody tr:nth-child(odd) td.dupe
{
color: #FAFAFA;
}
.rstable tbody tr:hover td.dupe,
.rstable tbody tr.selected td.dupe
{
color: ==textcolor==;
}
th.multiselect:hover input[type='checkbox'], td:hover input[type='checkbox'].multiselect {
outline: 1px solid red;
}

View File

@@ -161,6 +161,7 @@ function ResultsetTable(params)
this.addurl = null;
this.suppressKeyRepeat = null;
this.inline = null;
this.lastColKey = null; // voor suppress (columns)
// multiple resultsets
this.rstableCount = 1;
@@ -190,6 +191,8 @@ function ResultsetTable(params)
this.columns = new Array();
this.actions = new Array();
this.lastVal = new Array(); // voor suppress (columns)
if (this.inline || isExcel)
{
this.noPrint = true; // Geen printer fuctionaliteit
@@ -1342,7 +1345,16 @@ function __rsMakeTableRow(oRs, oRsFlexData, cnt, anyMultiActions, noFlexResult)
// Class voor de kolom
var columnClass = columns[i].columnClass == null ? columns[i].tdClass : this.myRs(columns[i].columnClass, oRs);
columnClass = (columnClass == null? "" : " class='" + columnClass + "'");
if (i <= lastColKey)
{
if (lastVal[i] == null || lastVal[i] != val)
lastVal[i] = val;
else if (val != "&nbsp;" && val !== "")
columnClass = (columnClass == null ? "dupe" : columnClass + " dupe");
}
columnClass = (columnClass == null ? "" : " class='" + columnClass + "'");
// custom sort key voor de kolom
var customSort = columns[i].customSort == null ? null : this.myRs(columns[i].customSort, oRs);