Open core: don’t reinvent the wheel — build your fenestration software on ours.

Skip to main content

When a supplier sends a new price list, OJ Setup → Parts updates many parts at once
from a spreadsheet instead of editing them one by one. Two buttons in the bar under the part details
do it: Download cost template (arrow down) and Import costs (arrow up).

What, where, who, when, why

What A round-trip spreadsheet update of six part fields — Cost,
Actual cost, Average cost, Price, Min price, Min cost — via template download, Excel
editing, and a preview-then-Apply import.
Where OJ Setup → Parts, the two arrow buttons under the part
details. Creating new parts from a sheet is a different screen:
Import new parts.
Who Whoever handles supplier price lists. Preview is open to all;
Apply needs OJ Setup access (administrators or Administration-module rights).
When When a supplier’s new price list arrives; before a seasonal price
change. Not per-part (edit the part) and not for matrix-priced parts
(see below).
Why it matters It updates dozens of parts in one checked pass: every row
is previewed with old → new, unknown codes and invalid values are skipped without stopping
the rest, and nothing is written until Apply.

1. Download the template

Filter the parts list to the parts you want (or show all), then press Download cost template.
It saves an Excel file (Excel 97-2003, .xls) with one row per listed part, sorted by stock code,
filled with today’s values:

Stock code | Description | Cost | Actual cost | Average cost | Price | Min price | Min cost

2. Change the values in Excel

  • Change only the values that change. An empty cell keeps the current value – delete a
    column’s values if you do not want to touch that field.
  • The stock code must match a part exactly; nothing is guessed. The description is for reading only.
  • Do not rename or move the columns; another layout is refused. Save the file as .xls again
    (an .xlsx file is refused with a message asking for .xls).
  • Values are kept to 4 decimals. Text such as $12.50 or a negative number is reported as invalid.

3. Import – preview first, nothing is written until Apply

Import costs reads the file and shows a preview: each row with the six fields, a changed
field shown as old → new in bold on yellow, and the outcome:

  • Update – at least one value differs and will be written.
  • No change – every value given equals today’s.
  • Unknown stock code – no part has that stock code.
  • Invalid value – a value is not a number or is negative (hover the row to see which).
  • Stock code twice, or on two parts – the code is in the sheet more than once, or more
    than one part carries it, so the sheet cannot say which part it means.

The summary reads e.g. “12 to update, 300 unchanged, 2 skipped”; Changes only hides
the unchanged rows. Cancel writes nothing. Apply checks every row again against the
values at that moment and writes only the rows still to update; skipped rows never stop the others.

Who can apply: the users who can open OJ Setup – administrators, or users with a right in the
Administration module. Others can preview but Apply is refused. A cell holding an Excel error (#REF!, #DIV/0!)
is reported as invalid, never read as “keep”. Listed parts whose stock code is carried by two parts are left out
of the template (the download says how many).

Worked example — a supplier raises profile costs 5%

Step What Result
1 Filter the parts list to the Profile family, Download cost template An .xls with every listed part, today’s six values filled in.
2 In Excel, set Cost = old × 1.05 for the affected rows; clear the other
columns’ cells
Empty cells keep their current value — only Cost changes. Leave the
stock codes untouched.
3 Save as .xls, Import costs Preview: e.g. “48 to update,
300 unchanged, 2 skipped” — the skipped are one typo’d code and one negative value;
changed cells show old → new in bold.
4 Apply The 48 costs are written; nothing else on the parts
changes and no order is re-priced.

What it writes – and what it does not

Only the six fields of the template are written, as given. Nothing else on the part changes, and
no quote or order is re-priced. A part whose cost or price comes from a cost or price matrix
keeps using the matrix: its field changes, but the quoted value does not move.