You saw an Invalid or Invalid Block error message when trying to place a block.
This error can apply to any block, including:
- Plant labels
- Plant symbols
- Detail blocks
- Irrigation symbols
- Site objects
- Blocks within Xrefs
- Callouts and leaders (When you try to label objects, the leader generates nothing, and nothing can be labeled.)
Are you seeing an Invalid block error when trying to place plants, Concept Plants, or Generic Plants, and your office is running Land F/X with a shared online location using a service such as Dropbox? If so, you may be experiencing the issue described here.
When you went to place the block, the AutoCAD Text Window dialog box may have appeared, showing the word *invalid* at the end of the source file path of the block you tried to place.
You may have to scroll to the right in this dialog box to verify that you've seen the Invalid error.
The issue may be resulting from mixed AEC Proxy Object versions.
AEC Proxy Objects:
Technically speaking, these are an invisible, non-selectable "placeholders" for a custom object that was created in an ObjectARX application that is no longer available. They contain capabilities that are significantly inferior to the original custom object.
To the AutoCAD world, these entities are known as zombies: dead, lacking brains, and wreaking havoc on your drawing files.
Identify Proxy Objects in Your Drawing:
To test whether you have proxy objects in your drawing, type PROXYSHOW in the Command line.
Enter a value of 2 when prompted. All proxy objects will be replaced by their bounding boxes. If the proxies are not graphical and instead consist of metadata, you may not see the bounding boxes.
This step should only be used to help identify what it is that is causing your problem. This will not solve it.
Open the CAD Options dialog box:
Manage ribbon, Options button
type Options in the Command line
Right-click in the Command line and select Options from the menu
In the Options dialog box, select the Open and Save tab. Under ObjectARX settings, change the two proxy settings to Command invoke and Do not show proxy objects.
Close and reopen your drawing. In most cases, you should be able to place the block without issue.
However, if you're seeing this error when attempting to place details, you have a few more steps to complete.
Getting the Invalid error when trying to place detail blocks?
If so, you'll need to clean the detail files – and possibly the sheet file. Fortunately, Land F/X offers the Nuke tool to clean your files with the click of a button. Open each detail file and run the Nuke tool. Need instructions? See our Nuke tool documentation.
Our Nuke tool will WBLOCK out each detail as a clean file. You can now move this clean file to the correct location. There, delete the previous version, and rename the clean file to the correct file name of the detail.
Still Getting the Error?
If you have verified that your detail file is clean but you're still seeing the *invalid* error when you try to place the block, you'll now need to clean the Sheet file.
In this case, you'll need to do the following:
First, detach all Xrefs from your drawing.
Now run the Nuke tool on each Xref.
Finally, reattach the Xrefs to the cleaned file, but then re-create each sheet, and place each detail again.
Unfortunately, these steps are necessary, since the proxy objects responsible for the issue could be in the Xrefs, or in any number of other details that are already placed.
The solutions described above should come full circle to a discussion on sheet setup and drawing quarantine procedures. Sheet files should always have only a single sheet for any .dwg file. This will minimize the damage and time loss in the event that any drawing file becomes corrupted. You should Nuke (or manually clean) all Xrefs before inserting them into a production drawing. During the cleaning process, only necessary proxy objects should be retained, and ideally only in the most recent version. Template files (QNew acad.dwt, etc.) should also be verified as clean. Only create details from source drawings that are verified as clean.
Many of these steps can be simplified by simply turning Off proxy object support completely. If you receive a base file from a consultant, you can use the PROXYSHOW command (type PROXYSHOW in the Command line) to detect any necessary proxy objects within the file.
However, keep in mind that, depending on the proxy object (civil topography, architectural elements, etc.), it may support displaying the raw linework of the object – and then that raw linework may be able to be exploded and now saved as solely polylines. However, this process can sometimes cause more harm by generating tens of thousands of line segments, rather than just a single proxy object.