Member properties in JSON
Mapping configuration
by Flexmonster Pivot Table
November 21, 2025
HTML
<script src="https://cdn.flexmonster.com/flexmonster.js"></script>
<p>Click a cell to output its product ID under the component.</p>
<div id="pivot-container"></div>
<div class="output" id="output">Output will appear here</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/",
height: 340,
toolbar: true,
report: {
dataSource: {
data: getData(),
mapping: {
"ProductID": {
type: "property",
hierarchy: "Product"
}
}
},
slice: {
rows: [
{ uniqueName: "Product" }
],
columns: [
{ uniqueName: "[Measures]" }
],
measures: [
{ uniqueName: "Price" }
]
}
},
cellclick: function(cell) {
if (cell.rows[0]) {
showOutput(`Product: ${cell.rows[0].caption}, product ID: ${cell.rows[0].properties.ProductID}`);
}
}
});
let outputInitialized = false;
function showOutput(content) {
var log = "[" + (new Date()).toLocaleTimeString('en-US') + "] " + content;
var outputElement = document.getElementById("output");
if (!outputInitialized) {
outputElement.innerText = '';
outputInitialized = true;
}
outputElement.innerText += log + "\n";
outputElement.scrollTop = outputElement.scrollHeight;
}
function getData() {
return [
{
"Product": "Banana cake",
"ProductID": "0816",
"Price": 24
},
{
"Product": "Chocolate",
"ProductID": "2626",
"Price": 31
},
{
"Product": "Chocolate",
"ProductID": "2626",
"Price": 56
}
];
}