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.
Code Block |
---|
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
You you see the Driving Table admin page:
- add a new table
- modify the existing table
Use the same approach to to configure driving table as you used to configure the table grid:
Code Block |
---|
# # 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:
Related information