Demos for XLSX templates

Purchase Order

This demo demonstrates how to create a template for a Purchase Order document.

You can find description of this case in Create XLSX from template article.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

purchase order template

Download result document

purchase order result

Template data

{
  "Order": {
    "Date": "2018-05-21",
    "Number": "432"
  },
  "Vendor": {
    "CompanyName": "Acme Corp",
    "Address": "123 James Street, Miami, USA",
    "Email": "sample@acme.com",
    "Phone": "555-777-9999"
  },
  "ShipTo": {
    "CompanyName": "Contoso Inc.",
    "Address": "1234 North Expressway, Arizona, USA",
    "Email": "sample@contoso.com",
    "Phone": "111-222-8900"
  },
  "items": [
    {
      "product": {
        "name": "Monitor",
        "price": 99
      },
      "quantity": 10
    },
    {
      "product": {
        "name": "Stepler",
        "price": 12.44
      },
      "quantity": 1000
    },
    {
      "product": {
        "name": "Fridge",
        "price": 4219.99
      },
      "quantity": 1
    },
    {
      "product": {
        "name": "Microwave",
        "price": 99.99
      },
      "quantity": 5
    },
    {
      "product": {
        "name": "Pen",
        "price": 7.23
      },
      "quantity": 100
    }
  ]
}

Regular table

This demo shows how to create a table based on an array of objects. You can find the description of this case in the tables documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Table template

Download result document

Table template result

Template data

{
    "company": {
        "name": "Plumsail",
        "email": "contact@plumsail.com"
    },
    "employees": [
        {
            "name": "Derek Clark",
            "jobTitle": "Marketing director",
            "department": "Marketing Department",
            "office": "Room 18",
            "phone": "(206) 854-9798"
        },
        {
            "name": "Xue Li",
            "jobTitle": "Financial director",
            "department": "Financial Department",
            "office": "Room 19",
            "phone": "(206) 598-1259"
        },
        {
            "name": "Jessica Adams",
            "jobTitle": "Marketing manager",
            "department": "Marketing Department",
            "office": "Room 23",
            "phone": "(206) 789-1598"
        },
        {
            "name": "Katsuko Kawakami",
            "jobTitle": "Analyst",
            "department": "Financial Department",
            "office": "Room 26",
            "phone": "(206) 784-1258"
        }
    ]
}

Dynamic table

Dynamic table from an array

This demo shows how to create dynamic tables from arrays by just adding a single tag into the template document. You can find the description of this case in the tables documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Table from array template

Download result document

Table from array result

Template data

{
    "myArray": [
        [
            "between",
            "inter-",
            "epi-"
        ],
        [
            "above, excess",
            "super-, ultra-",
            "hyper-"
        ],
        [
            "inside",
            "intra-",
            "endo-"
        ],
        [
            "outside",
            "extra-, extro-",
            "ecto-, exo-"
        ]
    ]
}

Dynamic table from a number of arrays

This demo shows how to create dynamic tables from several objects with nested arrays. You can find the description of this case in the tables documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Dynamic table from a number of arrays template

Download result document

Dynamic table from a number of arrays result

Template data

{
    "company": "Plumsail",
    "contacts": {
        "website": "http://plumsail.com",
        "support": "contacts@plumsail.com",
        "sales": "sales@plumsail.com"
    },
    "employees": [
        {
            "name": "Derek Clark",
            "metadata": [
                [
                    "Marketing director",
                    "Room 18",
                    "(206) 854-9798"
                ]
            ]
        },
        {
            "name": "Xue Li",
            "metadata": [
                [
                    "Financial director",
                    "Room 19",
                    "(206) 598-1259"
                ]
            ]
        },
        {
            "name": "Jessica Adams",
            "metadata": [
                [
                    "Marketing manager",
                    "Room 23",
                    "(206) 789-1598"
                ]
            ]
        },
        {
            "name": "Katsuko Kawakami",
            "metadata": [
                [
                    "Analyst",
                    "Room 26",
                    "(206) 784-1258"
                ]
            ]
        }
    ]
}

Repeat multiple table rows

This demo shows how to occupy multiple table rows by properties of a single object from your source array. You can find the description of this case in the tables documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Repeat multiple table rows template

Download result document

Repeat multiple table rows result

Template data

[
    {
        "name": "David Navarro",
        "phone": "(206) 854-9798",
        "title": "Head of Marketing"
    },
    {
        "name": "Jessica Adams",
        "phone": "(206) 789-1598",
        "title": "Financial director"
    },
    {
        "name": "Anil Mittal",
        "phone": "(206) 784-1258",
        "title": "Sales manager"
    }
]

Loops and nesting

This demo demonstrates how to create complex nested documents based on nested objects and collections. You can find the description of this case in the loops and nesting documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Loops and nesting template

Download result document

Loops and nesting result

Template data

{
    "reports":[
        {
            "quarter": "Q1",
            "sales": [
                {
                    "month": "Jan",
                    "products": [
                        {
                            "name": "Television set",
                            "total": 63225.81
                        },
                        {
                            "name": "Fridge",
                            "total": 15500
                        },
                        {
                            "name": "Microwave",
                            "total": 29032.26
                        }
                    ]
                },
                {
                    "month": "Feb",
                    "products": [
                        {
                            "name": "Television set",
                            "total": 47419.35
                        },
                        {
                            "name": "Fridge",
                            "total": 20500
                        },
                        {
                            "name": "Microwave",
                            "total": 23467.74
                        }
                    ]
                },
                {
                    "month": "Mar",
                    "products": [
                        {
                            "name": "Television set",
                            "total": 48548.39
                        },
                        {
                            "name": "Fridge",
                            "total": 12500
                        },
                        {
                            "name": "Microwave",
                            "total": 19354.83
                        }
                    ]
                }
            ]
        },
        {
            "quarter": "Q2",
            "sales": [
                {
                    "month": "Apr",
                    "products": [
                        {
                            "name": "Television set",
                            "total": 54193.55
                        },
                        {
                            "name": "Fridge",
                            "total": 14500
                        },
                        {
                            "name": "Microwave",
                            "total": 35080.65
                        }
                    ]
                },
                {
                    "month": "May",
                    "products": [
                        {
                            "name": "Television set",
                            "total": 44032.25
                        },
                        {
                            "name": "Fridge",
                            "total": 17500
                        },
                        {
                            "name": "Microwave",
                            "total": 24435.48
                        }
                    ]
                },
                {
                    "month": "Jun",
                    "products": [
                        {
                            "name": "Television set",
                            "total": 42903.23
                        },
                        {
                            "name": "Fridge",
                            "total": 11500
                        },
                        {
                            "name": "Microwave",
                            "total": 36290.32
                        }
                    ]
                }
            ]
        }
    ]
}

Formulas

This demo shows how to use formulas to your document. You can find a description of these case in the formulas section of the documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Formulas template

Download result document

Formulas result

Template data

{
    "currentWeek": [
        {
            "description": "May, 14 - May, 18",
            "currentRate": "1.1767",
            "fruits": [
                {
                    "type": "Apples",
                    "number": {
                        "Monday": 15,
                        "Tuesday": 8,
                        "Wednesday": 1,
                        "Thursday": 17,
                        "Friday": 7
                    },
                    "price": 0.5
                },
                {
                    "type": "Oranges",
                    "number": {
                        "Monday": 14,
                        "Tuesday": 20,
                        "Wednesday": 22,
                        "Thursday": 8,
                        "Friday": 19
                    },
                    "price": 0.5
                },
                {
                    "type": "Bananas",
                    "number": {
                        "Monday": 17,
                        "Tuesday": 24,
                        "Wednesday": 31,
                        "Thursday": 9,
                        "Friday": 22
                    },
                    "price": 0.4
                },
                {
                    "type": "Pears",
                    "number": {
                        "Monday": 11,
                        "Tuesday": 25,
                        "Wednesday": 6,
                        "Thursday": 18,
                        "Friday": 13
                    },
                    "price": 0.6
                },
                {
                    "type": "Peaches",
                    "number": {
                        "Monday": 27,
                        "Tuesday": 19,
                        "Wednesday": 23,
                        "Thursday": 17,
                        "Friday": 5
                    },
                    "price": 0.3
                }
            ]
        }
    ]
}

Pie and clustered column charts

This demo shows how to create charts in your document. You can find a description of these cases in the pie charts and clustered column charts sections of the documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Table template

Download result document

Table template result

Template data

[
    {
        "title": "Countries by coffee production",
        "description": "Production in thousand kilogram bags",
        "prod": [
            {
                "country": "Brazil",
                "value2015": 37600,
                "value2016": 43200,
                "value2017": 51500
            },
            {
                "country": "Vietnam",
                "value2015": 22000,
                "value2016": 27500,
                "value2017": 28500
            },
            {
                "country": "Colombia",
                "value2015": 11300,
                "value2016": 13500,
                "value2017": 14000
            },
            {
                "country": "Indonesia",
                "value2015": 14000,
                "value2016": 11000,
                "value2017": 10800
            },
            {
                "country": "Honduras",
                "value2015": 7500,
                "value2016": 5800,
                "value2017": 8349
            },
            {
                "country": "Other countries",
                "value2015": 37358
                "value2016": 44229,
                "value2017": 51000,
            }
        ]
    }
]

Charts on multiple worksheets

This demo shows how to create charts on multiple worksheets in one file. You can find a description of this case in the charts on multiple worksheets section of the documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Charts on multiple worksheets template

Download result document

Charts on multiple worksheets result

Template data

[
    {
        "title": "Coffee production by country",
        "description": "Production in thousand kilogram bags",
        "prod": [
            {
                "Brazil": {
                    "value1": 25600,
                    "value2": 32200,
                    "value3": 34500
                },
                "Vietnam": {
                    "value1": 28500,
                    "value2": 18500,
                    "value3": 17500
                },
                "Colombia": {
                    "value1": 11300,
                    "value2": 13500,
                    "value3": 14000
                },
                "Indonesia": {
                    "value1": 14000,
                    "value2": 11000,
                    "value3": 19800
                },
                "IvoryCoast": {
                    "value1": 4100,
                    "value2": 1600,
                    "value3": 8000
                },
                "OtherCountries": {
                    "value1": 37358,
                    "value2": 44229,
                    "value3": 51000
                }
            }
        ]
    },
    {
        "title": "Cocoa production by country",
        "description": "Production in 1000 tonnes",
        "prod": [
            {
                "Brazil": {
                    "value1": 256,
                    "value2": 140,
                    "value3": 180
                },
                "Vietnam": {
                    "value1": 34,
                    "value2": 12,
                    "value3": 6
                },
                "Colombia": {
                    "value1": 0,
                    "value2": 0,
                    "value3": 0
                },
                "Indonesia": {
                    "value1": 777,
                    "value2": 600,
                    "value3": 500
                },
                "IvoryCoast": {
                    "value1": 1345,
                    "value2": 1200,
                    "value3": 1448
                },
                "OtherCountries": {
                    "value1": 1834,
                    "value2": 1789,
                    "value3": 1085
                }
            }
        ]
    },
    {
        "title": "Another commodity production",
        "description": "Production in some units",
        "prod": [
            {
                "Brazil": {
                    "value1": 106,
                    "value2": 158,
                    "value3": 80
                },
                "Vietnam": {
                    "value1": 34,
                    "value2": 56,
                    "value3": 10
                },
                "Colombia": {
                    "value1": 33,
                    "value2": 48,
                    "value3": 65
                },
                "Indonesia": {
                    "value1": 98,
                    "value2": 105,
                    "value3": 80
                },
                "IvoryCoast": {
                    "value1": 23,
                    "value2": 30,
                    "value3": 41
                },
                "OtherCountries": {
                    "value1": 151,
                    "value2": 184,
                    "value3": 216
                }
            }
        ]
    }
]

Multiple worksheets

This demo shows how to create multiple worksheets in one file. You can find the description of this case in the multiple worksheets section of the documentation.

Scroll down to see source data for the template in JSON format.

Note

Multiple worksheets template work if the Sheet name tag is used only for the Sheet name and not used anywhere else in the sheet. In the example below, we use a tag “sheetName” to name the sheets.

Template

Result

Download template document

Multiple worksheets template

Download result document

Multiple worksheets result

Template data

[
    {
        "sheetName": "Jessica Adams",
        "name": "Jessica Adams",
        "jobInfo": {
            "title": "Marketing manager",
            "department": "Marketing Department",
            "manager": "Derek Clark",
            "telephone": "(206) 789-1598",
            "dateOfHire": "2012-04-21T00:00:00"
        },
        "personalInfo": {
            "address": "132, My Street, Kingston, New York 12401",
            "cell": "(123) 555-5551",
            "dateOfBirth": "1983-08-22",
            "SIN": "046 454 286"
        },
        "inCaseOfEmergency": {
            "name": "Sarah Adams",
            "relationship": "Mom",
            "telephone": "(123) 987-6541",
            "cell": "(123) 444-4441"
        }
    },
    {
        "sheetName": "Katsuko Kawakami",
        "name": "Katsuko Kawakami",
        "jobInfo": {
            "title": "Analyst",
            "department": "Financial Department",
            "manager": "Xue Li",
            "telephone": "(206) 784-1258",
            "dateOfHire": "2016-03-06T00:00:00"
        },
        "personalInfo": {
            "address": "257, My Street, East Village, New York 12401",
            "cell": "(123) 555-5552",
            "dateOfBirth": "1979-09-19",
            "SIN": "073 454 287"
        },
        "inCaseOfEmergency": {
            "name": "Jane Smith",
            "relationship": "Friend",
            "telephone": "(123) 987-6542",
            "cell": "(123) 333-3332"
        }
    },
    {
        "sheetName": "Brenda Coel",
        "name": "Brenda Coel",
        "jobInfo": {
            "title": "Marketing director",
            "department": "Marketing Department",
            "manager": "Derek Clark",
            "telephone": "(206) 854-9798",
            "dateOfHire": "2011-11-05T00:00:00"
        },
        "personalInfo": {
            "address": "87, My Street, Lower East Side, New York 12401",
            "cell": "(123) 555-5553",
            "dateOfBirth": "1975-12-01",
            "SIN": "051 454 288"
        },
        "inCaseOfEmergency": {
            "name": "John Smith",
            "relationship": "Husband",
            "telephone": "(123) 987-6543",
            "cell": "(123) 222-2223"
        }
    }
]

Conditionally hide blocks

Clearing cells

This demo shows how to to conditionally clear content in Excel cells or named ranges. You can find the description of this case in the conditionally hide blocks section of the documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Clear cells template

Download result document

Clear cells result

Template data

{
  "companyName": "Plumsail",
  "site": "http://plumsail.com",
  "contacts": null,
  "hideConfNotice": true
}

Filtering repeatable blocks

This demo shows how to to conditionally filter repeatable content in Excel. You can find the description of this case in the conditionally hide blocks section of the documentation.

Scroll down to see source data for the template in JSON format.

Template

Result

Download template document

Hide regular rows template

Download result document

Hide regular rows result

Download template document

Hide table rows template

Download result document

Hide table rows result

Download template document

Hide a range of cells template

Download result document

Hide a range of cells result

Download template document

Hide sheets template

Download result document

Hide sheets result

Template data

{
"employees": [{
    "name": "Lee Gu",
    "title": "Director",
    "department": "Manufacturing",
    "manager": "Patti Fernandez",
    "dateOfHire": "2007-03-29",
    "address": "6351 Fringilla Avenue",
    "cell": "(559) 104-5475",
    "dateOfBirth": "1971-08-09",
    "SIN": "778-62-8144"
  },
  {
    "name": "Henrietta Mueller",
    "title": "Developer",
    "department": "R&D",
    "manager": "Lee Gu",
    "dateOfHire": "2017-09-19",
    "address": "574-8633 Arcu Street",
    "cell": "(861) 546-5032",
    "dateOfBirth": "1987-01-31",
    "SIN": "757-85-7495"
  },
  {
    "name": "Johanna Lorenz",
    "title": "Senior Engineer",
    "department": "Engineering",
    "manager": "Lee Gu",
    "dateOfHire": "2012-05-11",
    "address": "6818 Eget St.",
    "cell": "(425) 288-2332",
    "dateOfBirth": "1982-04-12",
    "SIN": "149-13-7317"
  }
]

}