Merging Autodesk Fabrication Databases (Method 4 of 4)

Warning: This is last part (4 of a 4) in a series on merging Autodesk Fabrication Databases. Autodesk Fabrication software is extremely powerful and flexible but that also makes it very fragile. Use the below guidance with caution. I highly recommend backing up your configuration before attempting anything I’ve recommended. It never hurts to have a firm grasp of how Autodesk Fabrication functions from an administrative perspective. Consider yourself warned!

Method 4: MERGEDB (CAMduct only)

This last method is very quick and powerful but only available in CAMduct. If you’re not a CAMduct user, simply download and install to perform this process while in the 30-day trail period.

This method doesn’t let you pick and choose individual database entries but you can pick certain database types and quickly merge all of them into a new configuration. Unlike prior methods were you typically started in the old Database to export an *.IOX / *.IEZ file or create a Proxy ITM first, in this process, you start with the database you want the items to be imported into.

In addition to make of the database entries Method 1 supported, this method also supports these additional entries.

CutoutsLeadsRates
FacingsMaterialsSilencers
Hanger SpecificationsNotchesVanes

To use this method, start CAMduct and type CTRL-SHIFT-C to display the command window as shown below.

From the command window, type MERGEDB and press <Enter>. This doesn’t do anything other than tell you the data the command needs as shown below. The Strict/Unstrict options tell the merge process if it should only look at the name or the data to determine if it’s duplicate. If you choose strict and the items are already in your database, something as simple as 3 vs 4 digits after a decimal will cause a duplicate entry. In most cases, unstrict is all that’s required.

For this example, we’ll type MERGEDB UNSTRICT NOTCHES to import all the notches from one database to another as shown below.

When you press enter, you’re prompted to select a folder. You should select the Database folder of the old database you want to merge into your current database.

If new items are found, you’ll be notified and prompted if you want to save the changes or not.

Upon completion of the merge, you’ll need to go to those items in your database and make permanent any you intend to keep and remove those you didn’t want.

Pros:
> Only way to import some database entry type.
> Easiest way to merge the bulk of 2 database together.
> Extremely fast and efficient.
Cons:
> Requires CAMduct.
> Can not pick and choose database entries, only database types.
> Requires post merge cleanup of deletion or making entries permanent

Merging Autodesk Fabrication Databases (Method 3 of 4)

Warning: This is Part 3 of a 4 part series on merging Autodesk Fabrication Databases. Autodesk Fabrication software is extremely powerful and flexible but that also makes it very fragile. Use the below guidance with caution. I highly recommend backing up your configuration before attempting anything I’ve recommended. It never hurts to have a firm grasp of how Autodesk Fabrication functions from an administrative perspective. Consider yourself warned!

Method 3: Service Export/Import

This method is very similar to Method 2 above except that it works on a full service and all the items within it’s service template. If you have an existing service you want to post from one Database to another, this is a great method. Even if you just have a library of multiple ITM’s, it’s very common to create a transport service. That service holds those ITM’s and can be used as a means to get ITM’s from one database to another. Here are the steps.

From CADmep, type EXPORTSYS at the command line or in ESTmep or CAMduct, while in the Takeoff screen, select Takeoff -> Services -> Export as shown below…

This displays the Export Systems dialog. Use the Browse button to select the location and name of the *.IEZ export file. Select the service(s) you wish to export and click the Export button.

Importing is a similar process. Type IMPORTSYS from CADmep or from the Takeoff screen in ESTmep or CAMduct, select Takeoff -> Services -> Import as shown below…

You are prompted to select an *.IEZ file for import. The file will be read and display all the services that were exported. Select those you want to import and click Import.

Because IEZ imports can contain a lot of data, it’s likely you may have a lot of duplicates. Upon import, you are prompted if you’d like to Import ALL or NEWER item. Select as appropriate for your situation as shown below.

If Estimating data is found, you are also prompted to Replace or Keep existing tables. Because the database you are importing to is likely your current desired database, I’d recommend to Keep existing tables and only Replace if you intend to bring over labor and cost data in the Import. Once again, choose the option that best suits your needs as shown below.

Like in Method 1 earlier, if the import finds a service or template it thinks is the same, it’ll prompt you how to proceed. I highly recommend NOT selecting the “….To All” options as it’s common for the database index to cause false matches and mislead you.

You are prompted once the import is complete. As with Method 2, if ITM’s imported through this process contain new database entries, you’ll need to find those and make them permanent in a similar way.

Pros:
> Easiest way to import large numbers if ITM’s and their related database entries.
> Easy way to import Services and Service Templates
Cons:
> Slowest of all process do to all the verification the Import process needs to do.
> Can Import a lot more data than you intend.
> Can not pick and choose individual database entries to import

Stay tuned for Method 4 in my next and last post in this series.

Merging Autodesk Fabrication Databases (Method 2 of 4)

Warning: This is Part 2 of a 4 part series on merging Autodesk Fabrication Databases. Autodesk Fabrication software is extremely powerful and flexible but that also makes it very fragile. Use the below guidance with caution. I highly recommend backing up your configuration before attempting anything I’ve recommended. It never hurts to have a firm grasp of how Autodesk Fabrication functions from an administrative perspective. Consider yourself warned!

Method 2: ITM’s as Proxy

Another method of transferring data from one database to another is by using ITM’s. Simpy take an existing ITM or make a new one and set some of it’s properties to those you want to transfer. After you’ve completed this, copy the ITM to your desired database.

In your desired database, right-click on the newly copied ITM from the Folders view and select Edit or Properties as shown below.

Once the Edit Item or Item Properties dialogs are displayed, you can simply close them. The only purpose in calling them up was to force Fabrication to read all of their settings which in turn causes them to be created as Proxy entries in your database if they don’t already exist.

Once the database entries are in your new database, you’ll want to navigate to those database entries and make the proxy items permanent as shown below.

Pros:
> Every property an ITM uses is supported.
> Dependent database entries supported (e.g. Fixings on a Support)
Cons:
> Can bring in more properties than you want which need to be cleaned.
> Time consuming for large property sets as multiple ITM’s required.
> Proxy items must be manually made permanent afterward

Stay tuned for Method 3 of 4 in my next post.

Merging Autodesk Fabrication Databases (Method 1 of 4)

Warning: This is Part 1 of a 4 part series on merging Autodesk Fabrication Databases. Autodesk Fabrication software is extremely powerful and flexible but that also makes it very fragile. Use the below guidance with caution. I highly recommend backing up your configuration before attempting anything I’ve recommended. It never hurts to have a firm grasp of how Autodesk Fabrication functions from an administrative perspective. Consider yourself warned!

Preface

You shouldn’t find yourself merging parts of different Fabrication databases very often. If you do, you may want to revisit your database management workflow and practices.

However there are a number of legitimate reasons you may do it. Most common is the database you’re using now isn’t the one you used a few years ago because you started over. It’s common for a Fabrication database to be a mess. They’re hard to learn and understand and while you learn, you do a little damage unknowingly. Maybe it’s turnover of the staff managing your configuration. Each new person will say they know how to manage Fabrication and what you’re doing is wrong. So they fix it. In the end, you end up with a mix of database management “Styles”.

And last but not least, it’s because trades men and women manage your data. Don’t get me wrong. Your trade staff are hands down the most qualified to manage an Autodesk Fabrication configuration. This is why the task gets assigned to them. But ultimately, what do companies “want” them to do? Detailing and modeling….run piping, plumbing, sheet metal, electrical, etc. Management more often than not pushes them to get back to modeling because management really doesn’t understand the importance of a good database. This leads to shortcuts and mismanagement through no fault of those doing the work. They’re doing the best they can given the constraints their under.

Whatever the reason, if you need to merge parts of different Fabrication Database configurations together, I’ll explain four different methods in the coming posts.

Method 1: Importing / Exporting Database Items

Export/Import Database is the most commonly used method. It’s also the most widely know. In 2014 and earlier versions, many of these were separate commands for each part of the database. In the 2015 version, they were wrapped up in a single command. This process allows you to export and import the following items…

AirturnsInsulation SpecificationsSplitters
Ancillaries (except Kits)Installation TimesStiffeners
ConnectorsSeamsSupplier Costs
DampersSectionsSupports
Fabrication TimesSpecifications

To initiate the Export process, type DBEXPORT at the command line in CADmep. In CAMduct or ESTmep, select File -> Export -> Database Export from the menu as shown below…

Once you start the command the Database Export dialog is displayed. You can switch tabs and select various database entries to export.

Once you’ve selected the items you wish to export, click OK and save the export file.

This *.IOX file contains everything you selected for export. You can then use this file to import those settings into another database configuration. The process for importing is very similar. Type DBIMPORT at the command line in CADmep or pick File -> Import -> Database Import in ESTmep or CAMduct from the menu shown below…

Upon initiating the command, you’re prompted to select an *.IOX file for import. Select the file you wish to import and click OK.

After selecting the file, you are presented with a dialog just like the Export dialog. In this one, you can navigate the various tabs and select what you would like to import.

There is no good way to see what’s available for import without checking all of the tabs. Only items included for export will be displayed. You can pick and choose to import some or all of the items that were in the export file.

If an item you are importing already exists, you can choose to Skip, Duplicate or Overwrite the item. A word of caution, if your configuration has not been managed well, be very careful selecting the Apply to All button. There are times when the items Fabrication thinks are duplicate are indeed different items. This can be due to database corruption or misaligned indexes or any number of other reasons. If you’re concerned, select Apply for each item one at a time to verify the duplicates aren’t unexpected.

Pros:
> Easy to use
> Most common items supported
> Dependent items (e.g. Ancillaries attached to a Support) are included even though they are not displayed.
Cons:
> Not all database areas supported (e.g. Materials, Ancillary Kits, Notches, etc.)

Stay tuned for Method 2 in my next post.

Microsoft Developer Magazine

If you’re a full time professional software developer, this is likely old news. For the rest of those who fall into the “Self-taught”, “Part Time” or “Recreational” category it may surprise you that Microsoft has a magazine dedicated to software development.

MSDN (Microsoft Developer Network) has put out the MSDN Magazine for almost 2 decades. You can access old issues here…

https://docs.microsoft.com/en-us/archive/msdn-magazine/msdn-magazine-issues

Autodesk Licensing & Price Increases

It’s no secret that Autodesk regularly changes their pricing structure. Here are some upcoming changes you should be aware of….

  1. NEW “Multi-User” Subscriptions for “Collections” will increase an estimated 33% on February 7, 2020.
  2. NEW “Multi-User” Subscriptions for “Single Products” will increase an estimated 14% on February 7, 2020.

It’s my understanding that existing multi-user licenses that are renewed are not subject to the price increase.

Reading between the lines, it appears Autodesk is slowly trying to eliminate network licenses. Obviously, they would rather sell you two licenses as opposed to have you share onE between two users.

Based on over a hundred hours of license usage research in my last two employers in the MEP Engineering and Construction space, here’s the breakdown I’ve seen…

  • 2 to 3 Engineers can share a single license (this is what Autodesk wants to reign in)
  • 1 to 1 User to License ratio for trade detailers
  • 1/3 of company users fall into the very low usage…”once or twice a month” or “once a week for a half hour” category (if you have enough network license capacity)

What Autodesk fails to realize (or ignores) is that there are a couple reasons network licenses are important even if you can’t share a license. Those are the last two of the above bullet points.

1) Very Low Usage

Users who “Would” use products but don’t “Need” then get access. This can lead to future sales if usage increases. It can also help promote product knowledge to a larger audience.

2) Licensing Usage Analytics

If you’re trying to migrate users from AutoCAD to Revit, or implement other product roll outs, analytics are important to gauge adoption. It also helps you plan for the future.

Yes, Autodesk has some analytics but they’re completely inadequate for anything truly meaningful. In fact, they’re often misleading which lends itself to over licensing…which they like. For a better reporting tool, check out JTB Flex Report.

A Word About Perpetual Maintenance Subscriptions

There’s still some folks hanging on to their old perpetual maintenance licenses. Let me tell you here and now that’s a waste of time and money. On August 31, 2019, Autodesk ended support for 2010 and older versions. There’s no guarantee your old products will activate into the future.

As a lot of customers are finding this year, 3 years in to subscriptions, it’s cheaper to convert to subscription than maintain a perpetual seat. Perpetual seats are anticipated to increase another 20%. Additionally, if you convert to subscription now, it’s still cheaper than a new subscription. Autodesk has announced that Perpetuals converted to Subscription will not have any more than a 5% increase every OTHER year through 2028. This means you’re converted seat will be cheaper than a new subscription for a long time.

Yet another reason is that Autodesk controls licensing. It’s 100% in their control. Let’s take Navis Manage as an example. You could keep hanging on to it but all they have to do is say it’s no longer a valid product…it’s ends of life. And your only option is to buy a full new subscription of this new “Navis Quantum” product (I just made that up….just like they can) that replaces it.

The last reason to switch to subscription now, it’s your last chance. I’m hearing that in May 2020, you’ll no longer be able to convert your perpetual license to subscription. This means they can jack up the perpetual maintenance as high as they want and if you don’t like it, you’re left dropping it and buying a full subscription seat. If you’v been around long enough, you know they’ll run a promotion here and there offering a discount to convert to the few remaining holdouts. But the promotional discounts typically only applies to the first year…every other year you’re paying the full subscription costs.

If you’re still on maintenance, consider switching before May. For more information on Maintenance to Subscription, check out this Autodesk FAQ.

PS: Autodesk’s Fiscal Year End is January 31. Now’s the perfect time to make the changes to your licensing. I always structure mine to renew in January for that reason.

COD Scripting Resources Updated

I have updated the Autodesk Fabrication COD Scripting resources. Resources have also been reorganized. Everything is still there but you may have to navigate to it differently.

Most of the updates are additions to the COD Scripting reference. They now include all the information that was in my Advanced Scripting sessions at MEP Force and Autodesk University.

A complete list of all COD Scripting resources can be found here. The COD Language reference is a complete list of all properties, functions, operators, keywords, and anything else scripting that I’m aware of. Everything I know about COD Scripting both documented and undocumented is located here. If you notice properties or functions in COD scripts of yours or from others that is not listed here, please let me know. I’d love to add anything new you find.


Here’s a list of the changes…

Intolerance of Tolerances

In a recent LinkedIn post, the topic of Tolerance Stacking was brought up. I’m not a machine designer, but I’ve spent a lot of my past life in Manufacturing. In that world, the term was used frequently. If the term was used in Construction, it certainly wasn’t when I was listening.

Tolerance Stacking can be described (in my mind) as the accumulation of allowable tolerances to a point where the design is no longer suitable for it’s intended purpose. Errors resulting from Tolerance Stacking are caused by a few things…

  • Lack of tolerance awareness
  • Poor annotation and documentation of tolerances
  • Both of the above

Tolerance Stacking Explained

The best way to understand Tolerance Stacking is from a few examples. In our first example, we see a part 10 Units long with 9 holes, equally spaced 1 Unit apart. Take note of the RED dimension on the right.

10 Unit Long Part with 9 Holes Spaced 1 Unit apart

You may have seen parts dimensioned like this. Looks pretty normal. Now lets consider this same part and assume the dimensions have a tolerance of +/- 0.0625 (1/16 Inch). Now lets also assume that all the dimensions are in the negative -0.0625. The following graphic illustrates this condition. Again, notice the RED dimension on the right.

Tolerance Stacking using the an allowed -0.0625 on each dimension.

Is the overall length really have enough tolerance to compensate for the accumulation of those tolerances?

Now lets look at the same part, same tolerances but annotated/documented differently. It’s not as “pretty” and takes up a lot more real estate on your drawing.

Same part as before but dimensioned differently.

But lets look at that same -0.0625 extreme case tolerance in this scenario. Once again, keep an eye on that RED dimension to the right.

Using an alternate annotation approach solves the Tolerance Stacking problem.

This latest example solves the Tolerance Stacking issue by clearly outlining where the tolerances are allowed. In fact, in construction, we’re already doing this. We just don’t call it Tolerance Stacking.

In construction, one of the ways we eliminate Tolerance Stacking is by dimensioning to gridlines and columns. Dimensions in relation to known fixed points minimized Tolerance Stacking.

Are you old enough to remember when rafters were layed out by hand on the job site and cut individually? You would cut one and use it as a template and use that to mark the others. You never installed the template and used the next cut as your template for another. This minimized Tolerance Stacking as well.

Geometric Dimensioning and Tolerancing – GDT

What’s less familiar, is another concept used heavily in automotive and other precision manufacturing. It’s called Geometric Dimensioning & Tolerancing or “GDT” for short.

Traditional linear tolerances have flaws. GDT on the other hand more accurately describes “features” and allowable deviation from the desired location using a more complex form of graphics and symbols.

Once again, the best way to explain this is with some illustrations. The following example shows a square part with a hole in the middle. Pay close attention to the RED dimensions.

Top Left – Perfect Part (not real world)
Top Right – Hole moved 0.0625 to the right
Btm Left – Hole moved 0.0625 up
Btm Right – Hole moved 0.0625 in both directions

In this example, you see when the hole is moved to the maximum tolerance in both directions, it’s actually further away from it’s desired position than 0.0625.

This is where GDT comes in. In this last example, GDT is used to “Describe” the allowable deviation from it’s ideal position.

GDT can more accurately describe tolerances.

There’s actually an ASME Standard for GDT (Y14.5.2) and a full explination of GDT is not only beyond the scope of this blog but my knowledge, There’s a lot of courses out there specifically for this but a good “101” description can be found here.

Given trends in Prefab, Modularization, and Construction becoming more like Manufacturing….Makes you wonder….should there be a “GDT” style of documentation for construction?

COD Script Library – Links Fixed

If you’re attempted to download any of my COD Script libraries over the last couple weeks, you may have found the links were bad.

This should now be corrected. The issue was caused when the site was moved to a new hosting provider. Their newer WordPress setup used a different character set than was originally used when the site was originally setup.

Let me know if you notice any issues. There are still a few character anomalies in other pages and tables that will be fixed as I have time.