Configure Products Table

In this tutorial you will learn how to configure fields of the product master table. The configured table can look like this:

image 20210923 114320

Let’s say you have the following data file and need to create a table suitable for storage of such data.

image 20210923 114658

Review Current Product Master Table

Navigate to Master Data  Products

The Products master table exists out of the box, but not all the field labels match the labels in the ProductMaster CSV file. When you hover over the column label, a tooltip will display the name of the column in the backend database.

From this table layout we can see that we have a standard set of defined columns: Product ID, Label, Product Unit, Currency, Last Update and Pricing Logic. These columns have special meaning and you cannot rename them or change their data type.

Additionally, we have 30 customizable columns that are labeled as Attribute1, Attribute2, etc. These are customizable fields and we will rename them to match the incoming columns of our CSV file. Since they are not visible by default, let’s make them visible first.

Click Show Table Settings  Select Fields to Display to select the fields to display.

Display fields Attribute1 and Attribute2.

When you need to display more fields (or hide some of them), use the same approach.

Decide the Mapping

Your goal is to configure the Products master table so that it can hold data needed for your pricing project. You need to decide which fields of the Products table will hold content of which columns from the provided data file.

The out-of-the-box fields:

sku – (labeled Product ID) is the unique ID of the product and must be used, so you need to figure out which of the fields from the data file will fit best. In this case, it is Product Id.

label – (labeled Label) is a product description, so it is a good place for the Product Name from the data file.

unitOfMeasure – (labeled Product Unit) should hold unit of measure of the product. In the data file we have the UOM column with relevant content for this purpose.

currency – (labeled Currency) is used for default currency used for the product. We have corresponding content in the Product Currency column.

lastUpdateDate – (labeled Last Update) shows the timestamp of the last change of the record. This field is not uploaded, but modified by the system. So we do not have to handle it.

formulaName – (labeled Pricing Logic) is used only in special cases and it is NOT uploaded. Ensure you do not accidentally upload some data into this field because it would cause malfunction of price calculations.

You do not have to use all out-of-the-box fields but at least the SKU must be used.

The customizable Attribute# columns – Here you can store all other columns from the data file which you need to import. For example, we decided to use the following attribute fields:

  • Attribute1 – use it for Product Family

  • Attribute2 – use it for Business Unit

  • Attribute3 – use it for Product Category

  • Attribute4 – use it for Product Group

  • Attribute5 – use it for Product Type

  • Attribute6 – use it for Product Class

  • Attribute7 – use it for Discount Family

  • Attribute8 – use it for Industry

  • Attribute9 – use it for Product Group Id

Configure Products Master Table Fields

We recommend to set up the column labels, names and data types according your dataset, as it is the way how it will be used and shown in the solution. Here is an example.

Configure the field Attribute1

  1. To open the field context menu, right-click the label of the Attribute1 column, or click the three dots (this button appears only when you hover over the column label).

  2. Click Rename and Customize Column. A dialog will open.

  3. Rename the field to "ProductFamily" (no spaces allowed in names).

  4. Set the label to "Product Family", as it was in the data file.

  5. Set the Type to String.

  6. Click Confirm Changes. A confirmation will come up, so confirm the change.

  7. Repeat the steps above for all the other columns in the CSV file using the following assignments (set both Name and Label for each field, Name still cannot have spaces).

    1. Attribute2 = Business Unit

    2. Attribute3 = Product Category

    3. Attribute4 = Product Group

    4. Attribute5 = Product Type

    5. Attribute6 = Product Class

    6. Attribute7 = Discount Family

    7. Attribute8 = Industry

    8. Attribute9 = Product Group Id

Some of the columns in your data file will be aligned with some of the columns that are provided in the Products master table out-of-the-box. See the previous section about mapping. For such fields you can change only labels.

  1. Change the label of the SKU.

    1. To open the field context menu, right-click the label of the Attribute1 column, or click the three dots​ (this button appears only when you hover over the column label).

    2. Click Rename and Customize Column. A dialog will open.

    3. Change the Label to "Product Id".

    4. Keep the setting of Required as it is (most fields are not required).

    5. Click Confirm Changes. A confirmation will come up, so confirm the change.

  2. Repeat the steps above for all the other columns in the CSV file using the following assignments:

    1. label – set label "Product Name"

    2. unitOfMeasure – set label "UOM"

    3. currency – set label "Product Currency"

Fetch Products Fields Metadata to Your Project

If you already have your project set up in IntelliJ and the connection to partition is also set up, fetch the new fields metadata to your project, so you can store it in Git.

Fetch the new fields metadata to your project, including the Preferences.

Found an issue in documentation? Write to us.