When you are generating documents such as quotes, invoices, goods-out notes and purchase orders you'll want to display a list of the products and charges included, along with the prices, quantities and the order total.
These details are added with a single widget, the table of products (_productTable_).
Custom columns
You can customize the columns in the product table at the bottom of your template.
There are some standard options you can choose from depending on what sort of document the template represents, but you can also edit which columns appear, in what order they appear, and what they're titled. For example, you might want to change the language the column headers are in.
At the bottom of the template edit screen you'll find a drop-down menu titled "Choose columns for the _productTable_ widget" containing the list of pre-defined columns.
Selecting one of these will drop the detail into the field below - "Tweak your column setup" - where you can edit it.
Using the "Tweak your column setup" field, you can tell Brightpearl what data to display and what the column heading is by writing the field name followed by the column heading, e.g. item_net,Item net.
Each column is separated with the pipe character (|).
Here's an example:
qty,Qty|name,Item name|sku,SKU|item_net,Item net|row_net,Total net|item_gross,Item gross|row_gross,Total gross
This will display 9 columns, titled "Qty", "Item name" and so on.
Columns available are:
Column widget | Description |
qty | The quantity of the item on the sales order row. |
name | The name of the item, taken from the "Item description" on the sales order. |
sku | The SKU of the item, taken from the "SKU" field on the sales order. |
ean |
The item's EAN, UPC, ISBN and MPN, taken from the product record, displayed as a numerical string. |
price | The price of the item on the price list associated with the sale. |
discount | The discount percentage as applied in the discount column. |
item_net item_tax item_gross |
The net (excluding tax), tax amount, and gross (including tax) values for a single item on the row. |
row_net row_tax row_gross |
The net (excluding tax), tax amount, and gross (including tax) values for all items on the row. |
barcode | The item's barcode, displayed as a barcode. |
length height width volume |
The item's dimensions, taken from the product record. |
weight weight_g weight_kg weight_lb weight_oz |
The total weight of all items on the row. "weight" displays the weight in the unit of measure chosen under Settings > Products/Inventory > Inventory settings. The others convert the weight to grams, kilograms, pounds and ounces respectively. |
location overflow_location |
Displays the default location and default overflow location taken from the item's product record. |
PCF_* | Displays the contents of the specified product custom field. |
Product custom fields
You can include any of your product custom fields in the product table. Each custom field is given a unique code which you can use, prefixed with PCF_. To include that information in your product table edit the custom columns to include the code, e.g. "PCF_YOURCODE".
Remember to specify what the column heading should be, in the format "PCF_YOURCODE,heading name".
Matrix printing on templates
If you're selling lots of items on an order, the result could be a long print out as each item has its own row.
There are a few options available to you to make this more readable, which can be set using the "Tweak your column setup" area.
Bring options up from under the item name into their own column
In the screenshot below you can see that "Shoe size" is a column, instead of the shoe size displaying beneath the product name.
Just add "option[Shoe size],Shoe size" to the custom columns field for that template to trigger this.
You can have as many option columns as you like.
Show a product group in matrix layout
In the screenshot below you can see that Shirts have both a "Size" and "Color". We've chosen this template to display the sizes in a grid format, so instead of having 4 rows for each color, you now just have one.
To trigger the matrix layout, add one custom column to your template. In this example, the code to add is: "matrix[Size],Header".
Note that the name you give this column doesn't show.
Combining option columns and matrix layouts
You can add both to your custom columns for any template.
Since a matrix can only show one option for any product, if you have products with more than one option (shirts have two: "Size" and "Color"), you can put one in the matrix and one as a column. The screen shot below shows how we've promoted "Color" into a column:
Things to be aware of
Matrix layout is not supported for packing notes, since one item must display per row for the quantity columns "shipped, on the order, to follow", and sometimes you need to display the location of the items, which usually varies per size or color.
You can however bring all your options into columns to reduce the length of the printout and print fewer pages.
If you try and make a complex matrix for a product set that causes layout conflicts, then the matrix won't show. For example, you can't put "Size" and "Color" into the matrix if an order contains a product that has both size and color.
If the different variants in a grouped (matrix) row have different prices, the system just displays a dash if your template has unit price columns (item_net, item_gross etc).
Styling the product table
It is possible to style the product table using CSS.
For example, this is some CSS taken from one of our sample templates which changes the font size of the product table headers and items to 10px:
The headers and rows can be styled individually and certain elements of the table can also be targeted.