KMMO#73634 In het MJOB overzicht kolomkiezer toevoegen

svn path=/Website/trunk/; revision=56846
This commit is contained in:
Peter Feij
2022-08-12 11:02:16 +00:00
parent 7e5fbe0b66
commit 2684d213aa
2 changed files with 28 additions and 17 deletions

View File

@@ -1160,20 +1160,17 @@ var transitParam = buildTransitParam(["deel", "groep", "categorie_key", "distric
}
var buttons = [];
//buttons.push({ icon: "fa-plus", title: L("lcl_mjb_incl_scen"), action: 'insAddTCScen()' });
//buttons.push({ icon: "fa-plus", title: L("lcl_mjb_inst_scen"), action: 'insInstituteScen()' });
buttons.push({ icon: "fa-columns", title: L("lcl_scf_columns"), action: "openColumns()"});
buttons.push({ icon: "fa-fclt-refresh", title: L("lcl_refresh"), action: "FcltMgr.reload()" });
buttons.push({ icon: "fa-list-ul", title: L("lcl_ins_controle_legenda"), action: 'openLegenda()' });
var rst = new ResultsetTable({ keyColumn: fnkeyFunction,
sql: sql,
ID: "mjobtable",
tabs_code: "mjob_list-" + groupby, // per groepering kun je wat anders (willen)
rowData: fnrowData,
rowClass: fnrowClass,
rowFilter: fnrowFilter,
//suppressKeyRepeat: "alg_locatie_omschrijving",
//advancedprint: true, // S("ph_export_advanced"),
//advancedprint_title: "Export", // L("lcl_pb_export_advanced"),
// Buttons zijn alleen aanwezig bij fulldetails. Buttons worden daar alleen multi gebruikt.
// Dan hoeven we hier niet te bepalen of de buttons zichtbaar moeten zijn en kan rowActionEnabler dus weg.
// Bij multi worden de buttons altijd getoond en wordt bij het doorvoeren wel bepaald of het kan.
@@ -1189,19 +1186,19 @@ var transitParam = buildTransitParam(["deel", "groep", "categorie_key", "distric
});
if (fulldetails && scenario == 1 && outputmode == 0)
rst.addColumn(new Column({caption: "<span title='{0}'>".format(safe.htmlattr(L("lcl_mjb_scenarios"))) + I("fa-clone") + "</span>", content: fnHasScenario }));
rst.addColumn(new Column({caption: "<span title='{0}'>".format(safe.htmlattr(L("lcl_mjb_scenarios"))) + I("fa-clone") + "</span>", content: fnHasScenario, colName: "fnHasScenario" }));
else if ((print || excel) && scenario > 1)
rst.addColumn(new Column({caption: safe.htmlattr(L("lcl_mjb_scenarios")), content: "scenario_oms" }));
rst.addColumn(new Column({caption: safe.htmlattr(L("lcl_mjb_scenarios")), content: "scenario_oms"}));
if (groupby == 1 || groupby == 2 || groupby == 3 || moredetail == 2)
rst.addColumn(new Column({caption: L("lcl_district"), content: "alg_district_omschrijving"/*, purpose: (dist_key_arr.length ? PRINTING_ONLY : PRINT_AND_VIEW)*/}));
rst.addColumn(new Column({caption: L("lcl_district"), content: "alg_district_omschrijving" }));
if (groupby == 2 || groupby == 3 || moredetail == 2)
{
if (groupby == 2)
rst.addColumn(new Column({caption: L("lcl_estate_locatie_man_code"), content: "alg_locatie_code" }));
rst.addColumn(new Column({caption: L("lcl_location"), content: fnLocatie }));
rst.addColumn(new Column({caption: L("lcl_location"), content: fnLocatie, colName: "fnLocatie" }));
}
if (fulldetails || groupby == 3 || moredetail == 2)
rst.addColumn(new Column({caption: L("lcl_bld_terra"), content: fnGebouwTerrein }));
rst.addColumn(new Column({caption: L("lcl_bld_terra"), content: fnGebouwTerrein, colName: "fnGebouwTerrein" }));
if (!fulldetails || (fulldetails && mjb_show_srt_with_tasks) || moredetail == 1)
{
if (groupby >= 4 || moredetail == 1) rst.addColumn(new Column({caption: L("lcl_discipline"), content: "ins_discipline_omschrijving"}));
@@ -1214,11 +1211,11 @@ var transitParam = buildTransitParam(["deel", "groep", "categorie_key", "distric
rst.addColumn(new Column({caption: L("lcl_alg_gebouw_mjb_score1"), content: "alg_gebouw_mjb_score1", datatype: "number", align: "center"}));
if (groupby >= 7)
{
rst.addColumn(new Column({caption: L("lcl_ins_object"), content: fnDeel}));
rst.addColumn(new Column({caption: L("lcl_ins_object"), content: fnDeel, colName: "fnDeel"}));
if (S("mjb_show_ruimte") == 1)
{
rst.addColumn(new Column({caption: L("lcl_room"), content: fnRuimte }));
rst.addColumn(new Column({caption: L("lcl_estate_ruimte_man_descr"), content: "alg_ruimte_omschrijving", purpose: PRINTING_ONLY})); // zit op schernm in tooltip
rst.addColumn(new Column({caption: L("lcl_room"), content: fnRuimte, colName: "fnRuimte" }));
rst.addColumn(new Column({caption: L("lcl_estate_ruimte_man_descr"), content: "ins_deel_opmerking", purpose: PRINTING_ONLY})); // zit op schernm in tooltip
}
rst.addColumn(new Column({caption: L("lcl_ins_opmerking"), content: "ins_deel_opmerking"}));
rst.addColumn(new Column({caption: L("lcl_amount"), content: "ins_deel_aantal", datatype: "float"}));
@@ -1229,12 +1226,12 @@ var transitParam = buildTransitParam(["deel", "groep", "categorie_key", "distric
rst.addColumn(new Column({caption: L("lcl_ins_deel_mjb_score1"), content: "ins_deel_mjb_score1", datatype: "number", align: "center", columnClass: fncolScore1Class}));
rst.addColumn(new Column({caption: L("lcl_ins_deel_mjb_score2"), content: "ins_deel_mjb_score2", datatype: "number", align: "center", columnClass: fncolScore2Class}));
if (groupby == 8)
rst.addColumn(new Column({caption: L("lcl_ins_srtcontroledl_xcp_prio"), content: fnXcpPrio, columnClass: fnfncolPrioClass, align: "center"}));
rst.addColumn(new Column({caption: L("lcl_ins_srtcontroledl_xcp_prio"), content: fnXcpPrio, colName: "fnXcpPrio", columnClass: fnfncolPrioClass, align: "center"}));
}
}
if (fulldetails)
{
rst.addColumn(new Column({caption: L("lcl_ins_controle_srt"), content: fnSrtcontrole, tooltip: "ins_srtcontrole_opmerking"}));
rst.addColumn(new Column({caption: L("lcl_ins_controle_srt"), content: fnSrtcontrole, colName: "fnSrtcontrole", tooltip: "ins_srtcontrole_opmerking"}));
rst.addColumn(new Column({caption: L("lcl_prs_kosten"), content: "kostenplaats"}));
}
if (groupby == 8 && excel)
@@ -1250,6 +1247,7 @@ var transitParam = buildTransitParam(["deel", "groep", "categorie_key", "distric
var content = fnfnBedrag(String(jaren[j]));
rst.addColumn(new Column({caption: String(jaren[j]), datatype: "number",
content: content,
colName: "IGNORE", // sluit deze uit van kolommanipulaties
xmltag: "year" + String(jaren[j]),
columnClass: fnfncolClass(String(jaren[j])), // tdClass dan niet meer nodig.
total: true,
@@ -1259,6 +1257,7 @@ var transitParam = buildTransitParam(["deel", "groep", "categorie_key", "distric
rst.addColumn(new Column({caption: L("lcl_Total"), datatype: "number",
tdClass: "mjbtotal",
content: fnTotalText,
colName: "IGNORE", // sluit deze uit van kolommanipulaties
fnAmount: fnTotal,
total: true
}));

View File

@@ -11,6 +11,10 @@
*/ %>
<%
// Deze zet de kolommen in de juiste volgorde en/of onderdrukt ze, conform de door de gebruiker zelf gemaakte keuze
// Sommige kolommen sluiten we hard uit met colName "IGNORE", die zijn niet in de tabel geregistreerd en worden ongeacht
// altijd achteraan volgens de standaard volgorde getoond (bv bij MJOB).
function reorderPerslidCols(code, cols)
{
var index;
@@ -34,7 +38,7 @@ function reorderPerslidCols(code, cols)
{
for (index = 0; index < cols.length; index++)
{
if (oRs("prs_perslid_cols_column_name").Value == (cols[index].colName || cols[index].orgContent))
if ((cols[index].colName || cols[index].orgContent) == oRs("prs_perslid_cols_column_name").Value)
{
cols[index].combine = oRs("prs_perslid_cols_combine").Value == 1;
cols[index].hidden = oRs("prs_perslid_cols_visible").Value == "I";
@@ -45,6 +49,14 @@ function reorderPerslidCols(code, cols)
oRs.MoveNext();
}
oRs.close();
// add the ignored columns at the end
for (index = 0; index < cols.length; index++)
{
if ((cols[index].colName || cols[index].orgContent) == "IGNORE")
{
arr.push(cols[index]);
}
}
return arr;
}
}
@@ -101,7 +113,7 @@ function rs_columns(code, cols)
{
for (index = 0; index < cols.length; index++)
{
if (cols[index].purpose == undefined || (cols[index].purpose == VIEW_ONLY || cols[index].purpose == PRINT_AND_VIEW))
if ((cols[index].purpose == undefined || cols[index].purpose == VIEW_ONLY || cols[index].purpose == PRINT_AND_VIEW) && cols[index].colName != "IGNORE")
{
combine = cols[index].combine;
Response.Write("<tr id='" + safe.htmlattr(cols[index].colName || cols[index].orgContent) + "'" + (combine?" class='rscols_combined'":"") + ">"