CAD Managers

CAD Managers

Reply
Contributor
ckrtom2
Posts: 13
Registered: ‎05-22-2009
Message 1 of 11 (1,623 Views)

Other users can't open XREF that is in my drawing

1623 Views, 10 Replies
05-22-2009 10:14 AM
This must be something basic we're missing, but why can't other users work on an xref that is xref'd into a drawing that I am working on? Is there some variable or setting? (I am not working on the xref itself.) In other words: Drawing A is an xref in Drawing B, the drawing I am in and working on. Why can't others open (other than "read only") and work on Drawing A? Edited by: ckrtom2 on May 22, 2009 5:14 PM
Distinguished Contributor
eviele
Posts: 1,741
Registered: ‎12-02-2003
Message 2 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-22-2009 10:50 AM in reply to: ckrtom2
That is an oldie, but a goodie.
Way back in R14 days we had to make sure to set this correctly on each workstation.

The variable you're looking for is XLOADCTL. Set it to 2.

If you prefer dialog boxes, go to Options, then Open and Save tab, then set External References to demand load xrefs Enabled with Copy.
See the attached image for clarity.
Contributor
ckrtom2
Posts: 13
Registered: ‎05-22-2009
Message 3 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-22-2009 11:07 PM in reply to: ckrtom2
Thanks eviele! Great information.
*Mark McDonough
Message 4 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-26-2009 03:15 PM in reply to: ckrtom2


Look more closely at the three options in Tools > Options > Open and
Save > External References.  The three options are for XLOADCTL
are:

 

0  Disabled

1  Enabled

2  Enabled with Copy

 

Setting XLOADCTL to 2 (Enabled with copy) is the not the best choice,
there's more to the story to understand the best option.  Setting XLOADCTL
off or to 0 (Disabled) has exactly the effect you want, allowing XREFs to be
currently attached, yet other people can still open and edit an xref
concurrently... basically this setting makes XREFs behave the way they did
pre-Release 14.

 

Enabled with Copy is a boondoggle in my opinion, because of the following
reasons:

1.  It's unnecessary, because just turning it off gives the editable
XREF state you're looking for.

 

2.  Enabled with Copy is intended to work with Layer and Spatial
Indexing turned on using the INDEXCTL system variable (read HELP, it explains
more about what the intent is).
INDEXCTL controls whether layer and spatial
indexes are created and saved in drawing files.
    0 No
indexes are created
    1 Layer index is
created
    2 Spatial index is
created
    3 Layer and spatial indexes are created

 

The purpose of this concept is to potentially gain faster loads on
DWGs/XREFs that are clipped, so that AutoCAD only loads what it needs.  In
my tests of this with the first couple of releases that had this command, is
that in day to day practicle purposes in our line of work, there were no
significant gains trying to use this.  DWG files get larger in size with
INDEXCTL turned on all the way, as it has lots more information to store within
the DWG.

 

3.  Enabled with Copy, it means exactly what it implies, it copies all
of your XREFs and Overlays to a temporary file location defined by the XLOADPATH
system variable, and it does this EACH TIME THE DRAWING IS OPENED.  So
imagine the impact to a network, and people have AutoCAD drawings that each have
10 XREFs totalling 20 MB worth of XREFs.  Everytime a parent DWG is opened,
it has to copy over 20 MB worth of XREFs to a temporary location, then opens the
copied versions of the XREFs... that's a huge amount of overhead and network
traffic, when in fact turning XLOADCTL off works just fine without all of these
gymnastics.  If you open the parent DWG 10 times, then it will have copied
those 20 MB worth of XREFs to the temp folder 10 times... such unnecessary
overhead.  The AutoCAD Help tells you to use Enable with Copy, so it too is
misleading, perhaps why the pat answer seen in these NGs to use the third option
Enable with Copy.

 

4.  If Enable with Copy is used, if you crash, the temporarily copied
XREF files get left behind... more file management.

 

So, unless there is some compelling results that you can get demandloading
drawings using not only using  XLOADCTL=2 but also its partner
INDEXCTL=1,2, or 3 for which you see a real speed increase, I don't think it's
worth taking that route.


--
Mark McDonough
Sasaki Associates

href="http://www.sasaki.com">http://www.sasaki.com



style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
Thanks
eviele! Great information.
*Matt Stachoni
Message 5 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-27-2009 05:27 AM in reply to: ckrtom2
On Tue, 26 May 2009 22:15:29 +0000, Mark McDonough
wrote:

>3. Enabled with Copy, it means exactly what it implies, it copies all of your XREFs and Overlays to a temporary file location defined by the XLOADPATH system variable, and it does this EACH TIME THE DRAWING IS OPENED. So imagine the impact to a network, and people have AutoCAD drawings that each have 10 XREFs totalling 20 MB worth of XREFs. Everytime a parent DWG is opened, it has to copy over 20 MB worth of XREFs to a temporary location, then opens the copied versions of the XREFs...

While I agree 100% with everything you said, this point is really not as bad as
you think. Whenever you open a drawing with Xrefs, AutoCAD has to copy the
entire contents of the xrefs across the network into your system RAM. It also
writes out a ton of data to disk as part of its internal temporary files
mechanism and the OS paging file mechanism.

So the network I/O is pretty much exactly the same either way. The only
difference is that Enabled with Copy writes the data to a file on your hard
disk; this is a pretty small imposition.

What I don't know ('cause I'm lazy and diabled EwC looooong ago) is: Does
AutoCAD reuse the local Xref content if the parent drawing does not change? IOW,
if I open a drawing with 20 xrefs, I'm going to see a lot of network I/O (as
usual), and some local file I/O as AutoCAD writes the 20 drawings to disk.

However, if I close and reopen that drawing, and no changes have been made to
the xrefs themselves, does AutoCAD do a file check and just use the local copies
- which would be FAST - or does it have to copy the files over again?

If that is the case, I could see where EwC could be a real boon to program
speed. However, I kind of doubt this is the case.

Matt
matt@stachoni.com
*Mark Evinger
Message 6 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-27-2009 06:07 AM in reply to: ckrtom2
Yes, Acad checks the local version to see if the file size/date/time have
changed on the xrefs. If they are different, acad copies the latest version
down to the local machine.

Mark Evinger

"Matt Stachoni" wrote in message
news:6190067@discussion.autodesk.com...
On Tue, 26 May 2009 22:15:29 +0000, Mark McDonough
wrote:

>3. Enabled with Copy, it means exactly what it implies, it copies all of
>your XREFs and Overlays to a temporary file location defined by the
>XLOADPATH system variable, and it does this EACH TIME THE DRAWING IS
>OPENED. So imagine the impact to a network, and people have AutoCAD
>drawings that each have 10 XREFs totalling 20 MB worth of XREFs. Everytime
>a parent DWG is opened, it has to copy over 20 MB worth of XREFs to a
>temporary location, then opens the copied versions of the XREFs...

While I agree 100% with everything you said, this point is really not as bad
as
you think. Whenever you open a drawing with Xrefs, AutoCAD has to copy the
entire contents of the xrefs across the network into your system RAM. It
also
writes out a ton of data to disk as part of its internal temporary files
mechanism and the OS paging file mechanism.

So the network I/O is pretty much exactly the same either way. The only
difference is that Enabled with Copy writes the data to a file on your hard
disk; this is a pretty small imposition.

What I don't know ('cause I'm lazy and diabled EwC looooong ago) is: Does
AutoCAD reuse the local Xref content if the parent drawing does not change?
IOW,
if I open a drawing with 20 xrefs, I'm going to see a lot of network I/O (as
usual), and some local file I/O as AutoCAD writes the 20 drawings to disk.

However, if I close and reopen that drawing, and no changes have been made
to
the xrefs themselves, does AutoCAD do a file check and just use the local
copies
- which would be FAST - or does it have to copy the files over again?

If that is the case, I could see where EwC could be a real boon to program
speed. However, I kind of doubt this is the case.

Matt
matt@stachoni.com
*Mark McDonough
Message 7 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-27-2009 06:19 AM in reply to: ckrtom2
Ok, you had to temp me with your question and I just had to find out. EwC
does the following (in AutoCAD 2008):

1. Copies all XREFs when the parent DWG is opened, regardless of whether
the xrefs have changed or not. Makes sense, given that all of the temp
XREFs are deleted when the file is closed.

2. The temp xrefs get named thusly: xrefname$0$.ac$

3. If the true XREF is updated, AutoCAD still detects the update and shows
the XREF needs reloading balloon. If the xref is reloaded, then it copies
in that XREF to the temp XREF location and applies a unique incremented name
such as xrefname$1$.ac$. As before, all temp XREF files get deleted when
the parent DWG is closed.

--
Mark McDonough
Sasaki Associates
http://www.sasaki.com

"Matt Stachoni" wrote in message:

What I don't know ('cause I'm lazy and diabled EwC looooong ago) is: Does
AutoCAD reuse the local Xref content if the parent drawing does not change?
IOW,
if I open a drawing with 20 xrefs, I'm going to see a lot of network I/O (as
usual), and some local file I/O as AutoCAD writes the 20 drawings to disk.
*Mark McDonough
Message 8 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-27-2009 06:23 AM in reply to: ckrtom2
In what version of AutoCAD? In my tests that I did this morning with ACAD
2008, all XREFs get copied down to the temp XREF location each time the
parent DWG is opened, and does not check file/date/time to determine if
xrefs have changed. Closing the parent dwg auto-deletes the temp XREFs, so
it makes sense that it would need to copy the XREFs each and every time a
parent DWG is opened.

--
Mark McDonough
Sasaki Associates
http://www.sasaki.com


"Mark Evinger" wrote in
message news:6190129@discussion.autodesk.com...
Yes, Acad checks the local version to see if the file size/date/time have
changed on the xrefs. If they are different, acad copies the latest version
down to the local machine.

Mark Evinger
*Matt Stachoni
Message 9 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-27-2009 07:27 AM in reply to: ckrtom2
Yeah, I had figured as much. EwC always struck me as a brute-force,
knuckle-dragging, hit-the-gurl-on-the-head-with-a-club solution to what COULD
HAVE BEEN a very elegant way of improving performance with referenced files,
(including images).

For the EwC option to work correctly, it would need to

(a) Actually store the temporary xref between sessions;

(b) Write additional information into the parent DWG file to properly compare
the "temporary" Xref file against the original referenced file data, storing the
local temp file path, date modified, size, and other properties for comparison.

In other words, actually do the 10 minutes of grunt work to EwC in order to make
it a world-class, must-enable option, instead of yet another half-baked and
forgotten doodad which does nothing for the user and we CAD managers all turn
off anyway.

Matt
matt@stachoni.com



On Wed, 27 May 2009 13:19:29 +0000, Mark McDonough
wrote:

>Ok, you had to temp me with your question and I just had to find out. EwC
>does the following (in AutoCAD 2008):
>
>1. Copies all XREFs when the parent DWG is opened, regardless of whether
>the xrefs have changed or not. Makes sense, given that all of the temp
>XREFs are deleted when the file is closed.
>
>2. The temp xrefs get named thusly: xrefname$0$.ac$
>
>3. If the true XREF is updated, AutoCAD still detects the update and shows
>the XREF needs reloading balloon. If the xref is reloaded, then it copies
>in that XREF to the temp XREF location and applies a unique incremented name
>such as xrefname$1$.ac$. As before, all temp XREF files get deleted when
>the parent DWG is closed.
Distinguished Contributor
eviele
Posts: 1,741
Registered: ‎12-02-2003
Message 10 of 11 (1,624 Views)

Re: Other users can't open XREF that is in my drawing

05-27-2009 10:23 AM in reply to: ckrtom2
One hundred years ago, when we were using ADT2004, setting INDEXCTL (3), XLOADCTL (2), and using layer freezing and xclipping showed plenty of time savings on some of our more complex files.

It was worth the overhead of larger file sizes and longer save times.

Since then I haven't given INDEXCTL much thought, but I may tinker with a value of 0 moving forward....

Thanks for the thorough post Mark.

Eric
Announcements
Manufacturing CAD & IT Manager Resource
Additional information for installing, licensing & deploying Inventor, the Product Design Suites and Factory Design Suites.
Need installation help?

Start with some of our most frequented solutions or visit the Installation and Licensing Forum to get help installing your software.