directory containing 1000's of dwgs - require ANNOTATION from all into one annotation

07-03-2013 09:25 AM
Regular Contributor II
Polylines have zero issue, all end up appended.

Annotation throws this warning:
WARNING 000594: Input feature 302: No support for this geometry type..

I am perplexed as doing this without the iteration, using Cad to Geodatabase, then appending, works.
Is this something feasable with python? or does one have to resort back to arcObjects?
0 Kudos
5 Replies
Esri Regular Contributor

Feature layers do not support annotation, you'll need to run the data through a GDB, like you say.

0 Kudos
Regular Contributor II
Then this becomes an issue,.
How does one then iterate through 1000's of dwgs and convert to a GDB.
Iterate Datasets gives a Dataset, but not able to 'connect' to CAD to Geodatabase
Iterate using DataSet type = CAD will not pick up dwgs. this has been a deceiving term used (discussed in other threads).

So how does one cycle through all the dwgs in a folder and use the CAD to Geodatabase Geoprocessor?

Also, to state "Feature Layers do Not support Annotation" doesnt quite make sense to me, am I missing something?
Make Feature Layer works fine when SELECT data / Child Data Element = Annotation is used and  is derived from a Geodatabase. I use this in other pyhon scripts.
This works for example,
but how would you iterate this through many dwgs (and another downfall is MODEL will overwrite the Dataset name in a FGD, but running through python, will increment the dataset name. (I dont want 1000's of Datasets in a FDG, all separate) if possible
0 Kudos
Esri Regular Contributor
Hi mike.robb,

Check the attachments.

This model example might work for you. For this model you need to know the following:

  1. Integrating a model within a model

  2. Lists

  3. Precondition

  4. Parse path

With Lists variable you can select all your CAD files from the catalog window and drag and drop them on the List type CAD dataset variable. You don't need to browse for each one separately. You can create this variable by insert> create variable> CAD dataset. Then make it a list type from its properties using the information in this link.

Hope this helps.
If this seems much .. Python make be a way for you.

I tried this model and it worked for me. I have attached the toolbox containing three models just for reference. No data is included so the models might show the broken links.
0 Kudos
Regular Contributor II
Interesting approach,

I will tinker with this:

Just to give you an overview, the overall process requested is full automation controlled by a .net console program which calls python scripts when required for specific tasks. 'there will be no drag drop ability'
I have done this in the past and works great! Annotation for this is giving me the grief. (others do not deal with annotation or multple dwgs.) One dwg is no problem.

The process is to
Download 1000s dwgs from the purchased source and ultimately select out what is wanted and end up truncate/ append in a Direct Connect SQL (SDE). Its unknown the amount of dwgs, or their names at the time of download.
Ill go through what you have provided. Thank you.
0 Kudos
Regular Contributor II
Unsuccessful in managing to automate this...
No means to automate:
"select all your CAD files from the catalog window and drag and drop them on the List type CAD dataset variable."

why is everything so difficult lol.
0 Kudos