Overriding the default ascending sort order for field members using the sortingMethod API call
Slice configuration
by Flexmonster Pivot Table
HTML
<script src="https://cdn.flexmonster.com/flexmonster.js"></script>
<button onclick="customSorting()">custom sorting</button>
<div id="pivot-container"></div>
CSS
@import url(https://cdn.flexmonster.com/assets/jsfiddle-styles.css);
JavaScript
let pivot = new Flexmonster({
container: "pivot-container",
componentFolder: "https://cdn.flexmonster.com/",
report: {
dataSource: {
filename: "data/retail-data.json"
},
slice: {
rows: [
{
uniqueName: "Contact Last Name",
filter: {
query: {
contain: "an"
}
}
}
],
columns: [
{ uniqueName: "[Measures]" }
],
measures: [
{ uniqueName: "Quantity" }
]
}
}
});
function customSorting() {
const letterToPutFirst = "F";
pivot.sortingMethod("Contact Last Name", function(a, b) {
if (a.at(0) == letterToPutFirst && b.at(0) == letterToPutFirst)
return a > b ? 1 : -1;
if (a.at(0) == letterToPutFirst)
return -1;
if (b.at(0) == letterToPutFirst)
return 1;
return a > b ? 1 : -1;
});
}