Overview
A picking-list assembly is a technique for storing a group of related variant items — such as different front plates or different incomer options — inside a single assembly, so that you can choose which variant you need at input time rather than maintaining a separate assembly for every option.
The idea is straightforward: the fixed items (those common to every variant) are given their normal quantities, while the variant items are set to a quantity of 0. When you use the assembly, the zero-quantity variants appear on screen but produce no takeoff lines. You simply enter a quantity against the variant you need for this particular input, and the software adds only that variant alongside the fixed items.
This avoids having to create four separate assemblies for four different front plates when the back box and cable allowance are identical across all of them.
Required system preferences
The picking-list technique relies on two settings in Tools > System Preferences > Assembly Settings:
- Ignore items with zero quantities — must be ticked. This tells the software to suppress any assembly component that has a quantity of zero when the assembly is input onto the takeoff screen. Without this setting, zero-quantity lines would still appear on the examine grid (just with no material or labour), which defeats the purpose.
- Allow one-off instances — must be ticked. This allows you to amend the quantities of an assembly for a specific input without changing the master assembly. The quantities you enter are used only for that particular instance; the next time you use the assembly, it reverts to the saved values (with the variants back at zero).
Both settings are found on the same preferences screen. Once enabled, they affect all assemblies going forward — they do not alter any assemblies already input into existing jobs.
Enabling these two preferences also benefits your standard assemblies. With allow one-off instances ticked, you can adjust any assembly's quantities at input time — for example, increasing a cable allowance from 14 metres to 20 metres for a particular run — without altering the master assembly for future use. The master values are preserved and reset automatically for the next input.
Creating a picking-list assembly
- 1
On the takeoff screen, add all the items you want to include — both the fixed items (e.g. back box, cable) and the variant items (e.g. several different front plates from the same or different ranges). Enter a quantity of 1 for each. Use the database browser, advanced search, or search bar to find the items.
- 2
If you are building the picking list around an existing assembly, you can input that assembly with split lines ticked and a quantity of 1, then add the extra variant items alongside the split components. If a variant item already exists as a component of the original assembly (creating a duplicate), delete the duplicate line so each item appears only once.
- 3
Highlight all items on the examine grid from the left-hand row indicators, right-click on the row with the black triangle, and select Create Assembly. Confirm with Yes.
- 4
On the assembly builder screen, set the quantities for the fixed items to their correct values. For example, set the back box to 1 and the cable allowance to 14 (or whatever meterage your standard allows).
- 5
Set the quantities for all variant items to 0. These are the items you will choose between at input time.
- 6
Set the unit of measure (typically Unit for socket-type assemblies), fill in the category, main index, sub index, and description, then press Save & Exit.
Make sure the ignore items with zero quantities preference is ticked before you start using picking-list assemblies. If it is not enabled, every variant item will appear on the takeoff with a quantity of zero, cluttering your examine grid with empty lines.
Using a picking-list assembly
- 1
Navigate to the assembly in the assemblies browser (or type its user assembly code or part of its description into the search bar).
- 2
The assembly input screen appears, showing all components — including the zero-quantity variants. Because allow one-off instances is enabled, you can amend quantities for this input only.
- 3
Enter the quantity you need against the variant you want to use for this particular input. For example, if you need the red two-gang front plate, enter 1 next to that item. Leave the other variants at 0.
- 4
Enter the overall quantity for the assembly (e.g. 6 socket points) and press Confirm.
- 5
The software adds only the fixed items and the selected variant to the examine grid at the quantities you specified. The zero-quantity variants are suppressed entirely.
The next time you use the same assembly, all variant quantities are back at zero and the fixed items are at their original values. You can then pick a different variant for the next input.
Practical applications
Front plates
Store several front plate options (e.g. MK Logic white, red, brushed steel, and a decorative range) inside a single socket assembly alongside the common back box and cable allowance. At input time, select whichever front plate the specification calls for.
Distribution boards
Create an assembly for a distribution board that includes the enclosure, busbars, and common accessories as fixed items, and several different incomer options (e.g. 63A, 100A, 125A MCCBs) as zero-quantity variants. Select the correct incomer at input time based on the schedule.
General picking lists
You can also create an assembly where every item has a zero quantity — effectively a favourites list. When you input the assembly, you fill in only the quantities you need. This is useful if you have a set of items you frequently use together but in varying quantities, and you want a quick way to bring them all on screen at once.
Adding free-type items to an assembly
If you need to include a non-database item in an assembly — for example, a specialist product that is not in the Ensign database, a simple cost allowance, or a provisional sum for an item — press the Add Special/Free Type button at the bottom of the assembly builder screen.
This opens a screen where you can enter:
- A description for the item (free text).
- A material cost (your unit cost for the item).
- A labour time (the installation hours per unit).
- A category for markup purposes.
The free-type item behaves like any other component within the assembly. It is included when the assembly is input, its cost and labour are calculated at the quantity you specify, and it appears on reports alongside the database items. This is the same free-type functionality available on the main takeoff screen, but applied within the context of an assembly.
Free-type items are useful for small sundry allowances within assemblies — for example, adding a "fixings allowance" of a few pence per unit rather than individually listing every washer and screw. They can also serve as placeholders for items you plan to price later.
How the zero-quantity preference interacts with other features
The ignore items with zero quantities preference applies globally to all assembly inputs. If you have a standard (non-picking-list) assembly and one of its components happens to have a quantity of zero — perhaps by mistake — that item will be silently suppressed when the assembly is used. Keep this in mind when troubleshooting missing items: check whether the quantity in the master assembly is set to zero.
The allow one-off instances preference controls whether the input screen lets you edit quantities before confirming. When it is enabled, any assembly — not just picking-list assemblies — can have its quantities adjusted per input. The change applies to that single instance only and does not alter the master assembly.
If you later decide to turn off these preferences (by unticking them in Tools > System Preferences > Assembly Settings), any picking-list assemblies you have already saved will still exist in your database. They will simply behave as normal assemblies — the zero-quantity items will appear as empty lines on the takeoff, and you will not be able to adjust quantities at input time. To restore the picking-list behaviour, re-enable the preferences.