Driving Tables
Are you using lists of values in the Table Grid Editor for Jira Server and you want a simple way to manage its lists, check out the Driving Table editor.
The driving table editor allows you to create and manage these lists in the same way as you create and manage table grids.
Use case - the product listÂ
In this example JIRA and the table grid editor are used to manage quotes. Â
JIRA is used to track the status of a quote, and the Table Grid Editor is used to list all the line items in the quote.
One of the columns contains a list of available products. Â This dynamic list is based on a driving table, Â maintained in the JIRA table grid editor admin.
Configure the products columns in the Quote Line items table
To ensure that the line items refer existing products, products are retrieved from a database table 'products'. Notice, that price is taken from the same lookup table from another column.
gd.tablename=products
gd.columns=item,sku,quant,price,total
gd.ds=gridds
col.item=Item
col.item.type=string
#
# Product is a drop down (select) list
# The query will retrieve, next to the name and the code, also the price
#
col.sku=Product
col.sku.type = list
col.sku.query = select iname, icode, iprice from products_d2 order by iname
col.sku.query.ds = gridds
col.sku.autocomplete = true
#
# The user can set the number items to purchase
#
col.quant=Quant
col.quant.type=number
#
# The price is set based on the selection of the product using a formula
# \{sku.iprice} is the corresponding price retrieved with the query
#
col.price=Unit Price
col.price.type=number
col.price.formula={sku.iprice}
#
# The total is calculated from the price * the quantity (using a formula)
#
col.total=Total
col.total.type=number
col.total.formatnumber=##.00 EUR
col.total.formula={quant} * {price}
Configure the driving table - Products
Using a driving table you can actually edit the list of values presented to the user.
In the JIRA administration navigate to Add-ons - on the left menu, under Table Grid Editor administration choose Driving Table AdminÂ
Now you can see the Driving Table admin page where you can manage driving tables:
add a new tableÂ
modify the existing table
Use the same approach to configure the driving table as you used to configure the table grid
#
# Setup a grid to manage products
#
gd.columns = icode, iname, iprice
gd.tablename = products
gd.visiblerows=15
#
# Connect to the database to store the product list
#
gd.ds = igridtest
#
# Define the columns
#
col.icode = Code
col.icode.width = 100
col.icode.type = string
col.iname= Name
col.iname.width = 400
col.iname.type = string
col.iprice= Price
col.iprice.width = 100
col.iprice.type = number
Note that a number of grid properties don't apply.  More details are available on the Driving Tables - configuration page.
Driving Table accessÂ
By default only administrators can access the Driving Table Admin.
You can also grant users permissions to access the Driving Table. In order to do that, create an igrid-admin user group and add users to the group.
A user will get a separate menu tab with Driving Tables access.
The user has access to the list of existing driving tables, can create a new driving table, add/edit data in the existing one.Â
The access is limited and it's not possible to remove or change existing configurations.
More advanced configurations
More advanced configurations are possible such that you can model any information. Â For instance if you want to create a pricing table where prices depend on the product and the tier: