Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Using Table Grid Next Generation and Visionade to implement a The Master Quote System

With Jira Cloud and two powerful Atlassian Marketplace apps — Table Grid Next Generation and Visionade — you can transform your workflow into a complete Quoting system.

Easily bring external data into structured grids on your work items, and turn that information into clear, impactful reports and visualizations with Visionade. The result: a reliable, streamlined, and insightful quoting process — all inside Jira Cloud.

 

Note - the whole setup has been done by Damien Lauberton who is using Table Grid Next generation in many different setups


Space configuration in Jira Cloud

Start by creating a dedicated Jira space (project) for the QUOTE team, with a tailored configuration and workflow:

  • Work Item Types:
    • Epic: One per lead organization
    • Task: One per quote related to an organization

  • Workflow:
    • Resolutions:
      • Rejected: Set resolution to “Declined”
      • Signed: Set resolution to “Done”
      • Back to Backlog: Clear the resolution

d4c86396-e2fc-49d9-80b2-7d30c07428a7.png

Here is a quick look to the Kanban boards:

1761549026871.png

Grid configuration in TGNG

https://marketplace.atlassian.com/apps/1217571/table-grid-next-generation

The grid setup is a bit ,pre complex but let’s drive though the configuration of a grid in TGNG Cloud app.

Step 1/ Setup a Rest Data Source

TGNG Cloud documentation:REST data sources

  • Using external data in a grid is quite easy, especially using a Rest Service API such as https://dummyjson.com/products?limit=100

  • This test API provides provides some products data, and for this tutorial purpose we will focus on beauty products category. Here is a sample json of the data we will collect:

Click to see an extract of JSON data...

{
"products":[
{
"id":1,
"title":"Essence Mascara Lash Princess",
"description":"The Essence Mascara Lash Princess is a popular mascara known for its volumizing and lengthening effects. Achieve dramatic lashes with this long-lasting and cruelty-free formula.",
"category":"beauty",
"price":9.99,
"discountPercentage":10.48,
"rating":2.56,
"stock":99,
"tags":[
"beauty",
"mascara"
],
"brand":"Essence",
"sku":"BEA-ESS-ESS-001",
"weight":4,
"dimensions":{
"width":15.14,
"height":13.08,
"depth":22.99
},
...
],
"total":2,
"skip":0,
"limit":2
}
  • Don’t forget to test your connection before proceed to Step 2/


    1761549156656.png




Step 2/ Setup a Quote grid

TGNG Cloud documentation:


To quickly setup the grid, you can import this grid configuration directly in TGNG Cloud:

Here is the final result of the grid on a work item:

1761549370475.png


Let’s go though the grid configuration, column by column:

  1. Item: this column is a Sequence column, it’s an auto-countable column type. Column Types

  2. Product: this column is a Single Select List column with Dynamic List setup, and it will use our Rest Datasource that we setup earlier to list Products in our grid. Dynamic list

    1. Options attributes: price and description
    2. Dynamic options: filtered by using Json Path query =
      $.products[?(@.category=='beauty')]
  1. Mapping:
    1. label map with title attribute
    2. price map with price attribute
    3. descript map with description attribute

  2. Product details: this column is a Formula column, based on the selected Product in previous column, it will retrieve the selected product details. Formulas in a grid


    Formula expression: return
    $(qproduct).descript;
  1. Quantity: this column is an Integer column to choose the quantity of each product for a quote. Column Types

  2. Unit Price: this column is also a Formula column, based on the selected Product in Product column, it will retrieve the selected product price.


    Formula expression:
    return $(qproduct).price;
  1. Quote Price: this column is also a Formula column, but here we will use some javascript code to calculate each grid row value. Formulas in a grid

    Formula expression:
    return $(qproductquantity) * $(qproduct).price;
  1. VAT %: this column is also an Integer column with a default value to always apply the same VAT percentage of each grid row.
  2. VAT: this column is also a Formula column, with some javascript code to calculate the VAT amount of each grid row:


    Formula expression: 
    $(qitemtotal) * ($(qvat) / 100);return result.toFixed(3);
  1. Total: and to finish this column is also a Formula column, with some javascript code to calculate the total amount including VAT for each grid row

    Formula expression:
    return ($(qprice) + ($(qprice) * $(qvat) / 100));



Check out this video to review all columns configuration:



 

Step 3/ Test the Quote grid on a work item

Now it’s time to test our grid and create a work item and edit the grid to add product in the quote:


Report configuration using Visionade

https://marketplace.atlassian.com/apps/1237140/visionade-reports-dashboards-graphs-and-charts-for-jira

Being able to create work item and associated quote in a grid is really nice, but being able to build some reports around all these data is really necessary nowadays, especially if we want to answer few questions such as:

  • What is the most sold item?
  • How much taxes are we paying for all our sales?
  • How many revenues did the team generate recently?


Step 1/ Check datasources and configure Dimensions

Visionade documentation:

Connect to Data Source / Configure Dimensions in Data Source

Visionade app comes with the Jira Cloud integration out of the box: it means that all data in Jira cloud (fields and custom fields) can be used a data source.

Visionade app is also natively integrated with TGNG app to use all grids as datasources, it will detect existing TGNG grid configuration and allow you to connect to them at first time usage. Once connected all grids are configurable in Visionade app.

The most important part of the setup is to configure Dimensions to allow reports to access data:

  • For Jira, you simply need to choose with fields and custom fields needs to used as Dimensions, in our usecase we will use Project, Epic, Issue Key (work item key), Issue Type (work item type), Status and Resolution

    71c7521c-1b26-4186-a1e6-ee9367c9a73f.png


  • For grids, we will use Product, Quantity, VAT %, VAT, Price and Total columns as Dimensions to be able to do some reports on them all.


    4381294c-3cee-4156-99e0-6420d072559a.png



Step 2/ Add a dataset

Visionade documentation: Configure Data Set

  • Choose a name for your dataset: QUOTES DATASET for example
  • Select a data source: Table Grid here and activate Mapping with Jira toggle
  • Choose the dimension as shown on the screenshot in Jira and in the Quote grid
  • Query: filter data based on the quote project only in JQL: project = QUOTE
  • Run the query and check each data column to make sure your dataset is using all necessary data



    4381c30e-9483-44b7-9554-560042e99a60.png

Step 3/ Build Reports

Visionade documentation: Configure Report

The first question was “What is the most sold item?” and our first indicator will be based on:

  • from the grid: the Product column, by using drag and drop you can simply add the Product column in the Rows section
  • from the grid: the Quantity column, by using drag and drop you can easily add the Quantity column in the Values section and then choose Sum in the list
  • from Jira: the Status = Signed because her I want to see the quantities that was validated in the quote by the related lead or customer, by using drag and drop you can easily add the Status fied in the Filters section and then choose Text is Exactly in the list, and write the Status name Signed as configured in the workflow

 

01cc97ca-1dfd-413f-94b2-d4cc31baf3fe.png

I think you are now getting into it… It’s not really hard to create all reports you have in mind. So by creating a dashboard, adding 3 Visionade gadgets on it, and using each of the 3 reports related to our 3 questions, we can display these indicators directly in Jira Cloud:

  • Taxes = How much taxes are we paying for all our sales?
  • Revenues = How many revenues did the team generate recently?
  • Quantities = What is the most sold item?

 

8d2da37c-ce9a-4a98-b4ce-3df7fd2e9bbc.png

Here is a video to help you going though all Visionade configurations:

Going forward

Now that the QUOTE team is all setup to build and manage quotes, it will be very nice to have an easy way to send a quote to the related lead or potential customer. We can imagine 2 ways of doing that

  • Using Jira Service Management, we can build a dedicated portal to allow leads and customers to directly review and sign a quote online. TGNG supports JSM and a grid can be displayed directly in the portal, integrated with the light work item view.

 

454a1bc5-7c7b-49d6-9e0b-d04888ec5b1a.png

In the grid configuration, you can easily display the grid on the portal view and you can even choose which column you want to display: How to hide a column from Issue view and Customer Portal view

  • A grid can also be exported with different format (Excel, CSV, PDF or DOCX) allowing you to add it in a quote template to be sent to your lead or customer.

 

ed22917b-c922-4dcb-831e-d2e396f8bee8.png

  • Another way to share a quote to a lead or a customer is to export the quote as PDF, but for now, TGNG Cloud is not integrated with a powerful PDF export app such as Xporter or Better PDF Exporter for Jira but it’s something that TGNG Team will study in a near future.

0 comments

Comment

Log in or Sign up to comment
TAGS
AUG Leaders

Atlassian Community Events