Finished Good Items

Master data file delivering Claret's finished-goods item hierarchy in a single flat file, with every level flattened across columns on each row.

Finished-goods item master. Delivers Claret's full item hierarchy in a single file, with every level flattened across columns on each row.

About the hierarchy

By default, Claret expects a four-level hierarchy: Brand Group → Brand → Item → Vintage. For example:

  • Brand Group: Premium

  • Brand: ZAM

  • Item: 122 (ZAM Napa Valley Cabernet Sauvignon 12 x 750ml)

  • Vintage: 122-16, 122-17, ... 122-24 (one per vintage year)

If your item hierarchy differs in either depth or naming, that is fine. Provide your own level names as column pairs in your hierarchy's order, from highest (most general) to lowest (most granular), using the pattern {Level} Name, {Level} Description. Replace {Level} with the name of each level you use. Examples:

  • Two-level: Item Name, Item Description, Vintage Name, Vintage Description

  • Three-level: Brand Name, Brand Description, Item Name, Item Description, Vintage Name, Vintage Description

  • Five-level: Category Name, Category Description, Brand Group Name, Brand Group Description, Brand Name, Brand Description, Item Name, Item Description, Vintage Name, Vintage Description

If you adapt the columns to your own hierarchy, email [email protected] describing your levels in order so the labels can be applied in Claret's UI.

Planning level vs. Transactional level

This is a key concept for the integration. In the default hierarchy, two of the four levels are referenced by other files, and they serve different purposes:

Level
Example
Used as the reference in
Purpose

Item (item_name)

122

Bottling Schedule, supply plans, budgets, forecasts

Forward-looking planning: "we plan to bottle 1,500 cases of 122 in May"

Vintage (vintage_name)

122-16

Actuals / transactional data: "we have 879 cases of 122-16 in FG-GEN-BIN today"

Why the split: Plans are made at the SKU-family grain (you commit to bottling a certain volume of 122 per period), but actual production, inventory, and recipes always operate on a specific vintage (122-16), because the wine in the bottle is a particular year's wine.

Special case: items without a Vintage level. Some items (e.g., 124 "ZAM Lodi Zinfandel 12 x 750ml" below) don't have vintages. For these, the Item level serves as both the planning and the transactional reference, and rows in this file will have the Vintage columns blank. Downstream transactional files for these items should reference the item_name directly.

Schema

One row per leaf-level entry. For items with vintages, that's one row per vintage. For items without vintages, that's one row at the item level with the vintage columns blank.

#
Column
Required?
Description
Example

1

brand_group_name

Top-level grouping. Same value repeats across every row in that brand group.

Premium

2

brand_group_description

Long-form description of the brand group.

Premium group

3

brand_name

Mid-level grouping. Same value repeats across every row in that brand.

ZAM

4

brand_description

Long-form description of the brand.

ZAM brand

5

item_name

The planning level. Referenced by Bottling Schedule and other planning files.

122

6

item_description

Long-form description of the item.

ZAM Napa Valley Cabernet Sauvignon 12 x 750ml

7

vintage_name

The transactional level. Referenced by Inventory, Recipes, and Work Plans. Leave blank if this item has no vintages. Must be unique across all rows in the file when present.

122-16

8

vintage_description

Long-form description of the vintage.

ZAM Napa Valley Cabernet Sauvignon 12 x 750ml 2016

Header row

Sample data

Rows 1-5: item 122 has multiple vintages, one row per vintage with parent columns repeated. Rows 6-7: items 123 and 124 have no vintages, single row each with vintage columns blank.

Snapshot semantics

  • Full snapshot every delivery. Include every currently-active item and vintage.

  • An item or vintage omitted from a new snapshot is treated as retired; its history is preserved but no new transactional rows referencing it will be accepted.

  • item_name must be unique across all rows. vintage_name, when present, must also be unique across all rows.

  • All Name and Description columns should be populated where applicable. Description values appear in Claret's UI (tooltips, search, exports) and improve usability for the people working in the grids.

Last updated

Was this helpful?