Usually experienced when working with files either created elsewhere, or by someone else, adding to the natural difference in CAD Standards in the drawings, occasionally you might face scenarios on which you come across problems/unexpected behaviors.
One of these scenarios is when you are provided with drawings containing Proxy Entities/Objects.
Problems with Proxy Entities/Objects usually manifest when you select geometry in your drawing, in order to edit it, and “apparently”, you have selected a Block. You try to Edit the block, or after a few failed attempts, you try to Explode it and / or Delete it, and these operations also fail.
Identifying Proxy Entities/Objects
Select the problematic entities, and verify in the Properties Palette if indeed they are Proxy entities/objects. If this is the case, it's likely that they were created using product specific functionality: They are fully functional in the native application where they were created,but substituted for a custom object when the functionality/command in the application that created the custom object is not available in other host applications. Later, when the application is available, the proxy object is replaced by the custom object. These proxy entities have significantly reduced capabilities compared to their corresponding custom objects. For example, operations such as erasing and moving an object, or changing object properties, may or may not be possible on a proxy object, depending on the application that created it.
The software developer of the application (where the entity/object was created) might provide add-ins (Object Enablers), that allow the visualization of the information in other of their vertical products (or very limited editing/manipulation options), but obviously this doesn’t solve the problem, or it’s even applicable if you are using an application from a different developer. To summarize, this is not a failure of the application or any functionality, but a limitation imposed/consequence of the chosen workflow/drawing organisation used. Note that although sharing the capacity of handling the same file format(s), every application has version/product specific features that might not be supported by other software, even if from the same developer.
For this type of issue,ideally you can ask the user that provided the drawing/file to return to the original file (and application), and
Save the file in an“older” DWG or DXF version. This usually “simplifies” the information/geometry to a level, that enables/allows editing in other applications.
When/if it’s not the case, ask that the problematic geometry (that was created using product specific features), is Exploded prior to export the file.Often the structure of this information uses Nested Blocks, so you might need to explode the geometry more than once.
Refer to the Help files of the file’s native application for information on Commands/Options for using drawings in different versions and applications. You might find specific commands and/or command variables that might be helpful. As this type of behavior is fairly common when migration files between different software packages, and experienced even in other developer’s vertical products, you can easily find information on the issue, performing a quick search on Google, or CAD User’s Groups.
If returning to the native application is not possible, we would recommend that file was recreated, replacing the problematic geometry by ARES native geometry/objects.
For some types of geometry, you may be able to use the _MAKEFLATSNAPSHOT command, instead of tracing the geometry.
Note: Although supporting the same file formats (e.g. DWG, DXF), applications from different software developers (and often vertical products of the same developer) have product specific or proprietary functionalities. Although useful in that environment/platform, if your workflow implies using files in different applications, the use of different Export or Save options might be recommended. Reducing or simplifying the drawing complexity, in order to make it more “neutral” is a first step in order to avoid issues, when using files in different platforms/applications.