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

Skip to main content

Hardware, screws, anchors and accessories are added with a Part rule: pick the part, the piece
of the window it belongs to, and how many. The part must already exist in OJ Setup → Parts. Background:
How rules work in plain English.

Real examples

Screws on the sill. To put sill screws on a 3501 frame, the rule adds 10 screws 39X25FHPHMSZNTEK
(screw 3.9 mm × 25 mm) on the frame’s bottom side, at All Frame, when the sill type answer is 3S3I/3S3O 0mm.

Field 3501.FRAME (series 357), rule 190
Level All Frame
Rule Type Part
Position / Condition Bottom / None
Value 1 39X25FHPHMSZNTEK (part 40839, family Screws)
Quantity Type / Quantity Value Value / 10
Affects Design off
Has Test on: Test On Global Option, option 2SILL TYPE, answer 3S3I/3S3O 0mm

Fixing lugs by size. To give every 3501 frame enough anchor lugs, the rule adds fixing lugs
3000LUG150 (fixing lug 150 mm) around the frame perimeter, at All Frame, always (no test). The count comes from
a formula.

Field 3501.FRAME (series 357), rule 205
Level / Position All Frame / Perimeter
Rule Type / Value 1 Part / 3000LUG150 (part 40199)
Quantity Type Expression
Quantity Expression (imperial) (W+H)/3 — W and H in inches on this
imperial series; the result is cut to a whole number. The metric expression is empty.

Steps

  1. OJ Setup → Series → select the series, or the sub-routine that holds the frame parts →
    Rules tab.
  2. Click New (adds at the end), or select a rule and click Insert to put a copy directly below it.
    Inserting matters when the part must land on the station set just above (see
    stations).
  3. Description fills itself in from the Rule Type; you can only type it on Comment rules (and a few
    rule types that store a setting there). Older rules show descriptions such as stock code + description
    (part id)
    from the previous editor.
  4. Level: pick the node in the Select a level tree, for example All Frame.
  5. Rule Type: Part. Position: the side (Bottom, Top…) or Perimeter / Unit.
    Condition: usually None.
  6. Value 1: pick the part. The Family: tick-box and list narrow the part list.
  7. Quantity Type: Value and a Quantity Value, or Expression and a formula. Fill the
    expression that matches the series units (imperial for an imperial series).
  8. Leave Affects Design off for hardware (it only adds to the BOM and cost). Keep Active on.
  9. If the part is only for some answers, tick Has Test and add the test in the Rule Tests panel
    (how).
  10. Click Save, then build a test item and check the BOM (how).

Quantity Type choices

Quantity Type Use it for
Value A fixed count per piece, e.g. 10 screws per sill, 1 handle per sash.
Expression A count that grows with size, e.g. lugs by width + height
(formula variables).
Matrix A count looked up in a matrix (pick the matrix in the field next to it).
Qty Option A count taken from an option answer.

Hardware that belongs to the sash (handles, hinges, locks) uses a sash Level instead of All Frame; one rule then
runs once per sash of that kind. Unit-wide items (a box of screws per window) use Level Overall and Position
Unit.

Value vs ExpressionOnly the field that matches the
Quantity Type is used. 361 rule 205 (Weld Main Frame) has Quantity Type Value 80 and also an old
imperial expression “67+5”; the expression is ignored. Clear leftover expressions so nobody is misled.
Adding a part to an order instead?To add a loose part to one
order line, use Adding a part to an order. This section is about making a series add the
part automatically every time.