JavaScript
const pivot = new Flexmonster({
container: "pivot-container",
componentFolder: "https://cdn.flexmonster.com/",
toolbar: true,
report: {
dataSource: {
data: getData(),
mapping: {
//Set date type
purchase_date: {
type: "date string",
},
},
},
slice: {
columns: [
{
//Filter from February 1st is equivalent to diplaying last two months
filter: {
query: { after: "2025-02-01" },
},
uniqueName: "purchase_date",
},
{
uniqueName: "[Measures]",
},
],
measures: [
{
aggregation: "sum",
uniqueName: "purchase_amount",
},
],
rows: [
{
uniqueName: "customer_name",
},
],
},
},
})
function getData() {
return [
{
purchase_id: "P001",
purchase_amount: 100,
customer_id: "C001",
customer_name: "John Doe",
purchase_date: "2025-01-10",
},
{
purchase_id: "P002",
purchase_amount: 100,
customer_id: "C001",
customer_name: "John Doe",
purchase_date: "2025-02-15",
},
{
purchase_id: "P003",
purchase_amount: 100,
customer_id: "C001",
customer_name: "John Doe",
purchase_date: "2025-03-05",
},
{
purchase_id: "P004",
purchase_amount: 100,
customer_id: "C002",
customer_name: "Jane Smith",
purchase_date: "2025-02-25",
},
{
purchase_id: "P005",
purchase_amount: 100,
customer_id: "C002",
customer_name: "Jane Smith",
purchase_date: "2025-03-12",
},
{
purchase_id: "P006",
purchase_amount: 100,
customer_id: "C002",
customer_name: "Jane Smith",
purchase_date: "2025-03-02",
},
{
purchase_id: "P007",
purchase_amount: 100,
customer_id: "C003",
customer_name: "Alice Brown",
...