Back to zzTakeoff Community Channel LogoFeature Requests
Bruce Lombard
1d 17h

Adding an Assembly Based Hierarchy/classification system

I spoke to Derek and Todd about this on a Demo call yesterday and I will try to summarize as best I can here.


In its current format ZZtakeoff utilizes what I would call a takeoff based hierarchy/classification system, where the takeoff is the highest level and all sub levels (material, labor, equipment, items etc.) look up to and get nested under the takeoff.


The main problem with the takeoff based hierarchy is that it results in redundancy when allocating and assigning materials.


For Example:

Let's say I am a drywall estimator working on a mid rise 7 floor building and each floor has a different ceiling height. In the building assemblies on the drawings I have Interior Wall 1 (IW1) which for my scope of work is comprised of 1 layer of 1/2" drywall to both sides of framing.

For each floor I would need to create a new takeoff to measure IW1 and then assign the material 7 different times to each takeoff item.


With an assembly based hierarchy I build my assemblies independently and then I assign my takeoffs to an assembly. My takeoffs then inherit the materials from the assembly and perform the calculations at the takeoff level so I can still view item summaries at the takeoff level but I only have to perform the assignment once.


So using the above example I would only have to build and assign materials for IW1 once, I would still perform the takeoff 7 times but the materials would get assigned to the takeoff item based on what assembly it is classified as.


I built this in Planswift and it is a significant time saver for both the initial takeoff and post project reviews.


For the initial takeoff I just have to worry about classifying takeoffs items correctly and building the assemblies that I don't already have pre-built.


For post project reviews It is significantly faster when clients change assemblies or ask for material alternates on specific assemblies as all I have to do is change the material composition at the assembly level vs. going through and finding every takeoff item and deleting and re-adding the new material.


Then additionally from a management stand point I prefer being able to look at the assembly sheet on the plans and comparing it against the assemblies my estimators built to make sure everything matches up if there are discrepancies vs. looking through every takeoff item to make sure an item wasn't forgotten or accidentally deleted.

0
Todd Kaberline- Software Therapist zzTakeoff1d 17h

I like this, so in a sense the measurement is the takeoff properties, then you would have several assemblies that you could change the height on. So one measurement, but seven different assemblies producing the materials and labor according to the ht' entered.

Bruce Lombard 1d 17h

The takeoff would still have the height property. So as you go through each floor and perform your takeoff you would still populate the takeoff with floor height.


Using the same imaginary 7 floor example building above here is what your takeoffs would look like:


Takeoff Naming convention:

[Floor] [Wall Height] [Assembly]

  1. 1st Floor 7'0" EW1
  2. 2nd Floor 8'0" EW1
  3. 3rd Floor 9'0" EW1
  4. 4th Floor 10'0" EW1
  5. 5th Floor 11'0" EW1
  6. 6th Floor 12'0" EW1
  7. 7th Floor 13'0" EW1


Assembly Build:


EW1:

Sheathing

  1. 1/2" Gypsum Board
  2. 1/2" Gypsum Board


(Listed twice because 1/2" gypsum board occurs on both sides of the wall)


The Takeoff looks at the assembly build and tries to find a match for its assembly. it matches to EW1. EW1 contains sheathing. The takeoff item inherits the sheathing group from the matching assembly. The group then performs calculations at the takeoff level.



The reason I have calculations happening at the takeoff level vs. at the assembly level is because it allows you to handle conditions and edge cases more easily.


For example I can write a condition to use 54" board in place of 1/2" gypsum if the ceiling is 9'0" or between 8'9" and 9'0".

I can write a separate condition to replace 1/2" gypsum with 1/2" cement board if it's a shower wall

or replace 1/2" gypsum with 5/8" type x if it's a fire rated board (we touched on this in our call)


The assembly build is just there as an item classifier, the calculations are still performed below the takeoff.

Bruce Lombard 18h 9m

This is a good example of what I'm requesting. This is a takeoff on a normal house that I just did. I have everything grouped by assembly_name>Takeoff>Item Name.


As you can see for some assemblies I have multiple takeoffs and for each one of those takeoffs I have assign items to them and if an assembly composition ever changes I would have to go through and change each of those at the takeoff level. So for example if the sheathing at assembly FW gets revised to 5/8" gypsum I would then have to go to 6 takeoff items and change the material each time.




What I am proposing is best viewed in the screen shot below. In this report I have just grouped the items by assembly_name. In an ideal world if I wanted to change an assembly composition like in the example above where I need to change assembly FW from 1/2" board to 5/8" board. I would just go to the assembly select the material I need to change, change the material and it would update all of the takeoff items with the matching assembly name.



The example above is a small project, but on bigger projects where I might have 25 - 50 models in a development and ever year the insulation changes based on revised codes or cost saving efforts it can take a whole day to go through a takeoff and find all the matching assemblies to update.

You must be logged in to post replies. If you don't have an account you can signup here.