See original discussion:-

discussion.autodesk.com/WebX?14@55.uJsyabAnpHL.63@.f159a08

Topic: dangerous problem

Msg: 1 of 14 
From: Leo Laimer
Date: May/13/03 - 06:21 (GMT)
 
Group,
We have encountered a rather dangerous problem and I would like to inform you
so others do not fall into the same trap. Hopefully Adesk will fix this soon.

Normally, when 2D views are not up-to-date, you are not able to dim, edit view,
amviewout them, and get a warning when trying to save and print. These all are 
very useful details.

Now we have established a special workflow, in order to improve the overall
performance of MDT greatly for our huge assemblies: We are doing the 2D stuff
in a separate file, where the 3D thing is referenced into. This way we keep all
2D data parametric to the 3D data, but performance of the upper level assemblies
is 10...100 times better than it would be when done in the traditional way.

Now here comes the problem:
When the 3D file changes, and I open the file where the 2D part is done, it reads
in the edited 3D file as an xref, and everything seems to be OK. But the 2D views
DO NOT NOTICE THAT THERE WAS ANY CHANGE IN THE 3D DATA, give no warning, you can
do an amviewout, print, dim, edit view - whatever, - all with the wrong view data.
You have to force a view update manually to get correct views.

You can easily verify this problem yourself:
- make any 3D part, save it as file A
- open a blank assembly file, amcataog in the file A, make 2D views of this
part, save as file B, close.
- edit the part in file A, save
- open file B, the views are displaying the old version of A (while in
modelspace you are seeing the new version).
Now you can do whatever you like with the views in file B, but be aware -
you are handling wrong data!

Autodesk, please fix this serious problem!

Regards,
Leo Laimer
Bad Ischl - Austria


Msg: 2 of 14  
From: darvinv 
Leo,
I found another thing that forces the update. If you open the file and then
do an "All Instances>Reload All" in the model space browser, it forces a 
view update. Even though this should not be necessary, since the part was
just loaded on opening the annotation file. Something is definitely missing
a beat here. This is not meant as a fix or workaround, just another hint for
the mechanical team to help figure out what is wrong.
darvin


Msg: 3 of 14  
From: Leo Laimer 
darvin,
Yes, there is yours and some other actions that push a view update, thats OK.
But this all together should behave exactly like it does when 2D & 3D is in the same file.
We had big troubles because of that in our recent project, several lasercut parts were
wrong, and it cost me several boxes of beer to calm down the guys in the shop!
Regards, Leo Laimer


Msg: 4 of 14  
From: Kent Keller 
I am way rusty on lisp, but I wonder if this or one of the other methods
Leo mentions could be coded to run automatic in the startup lisp file?
Kent, Assistant Moderator



Msg: 5 of 14  
From: Leo Laimer 
Kent,
I'm not sure if this will be of any help, because when the file is opened (file B in
my example), it is up-to-date, but MDT doesn't recognize that something had changed
in the 3D file. So, any lisp running on startup will just do the same as MDT does 
anyway - make sure the file is up to date. Maybe a piece of code sitting behind the
amviewout command would be of some help, but that's Adesk's work, I guess!
Leo Laimer


Msg: 6 of 14  
From: Kent Keller 
I don't disagree that it is something they should look into, but with a little work I
would think you could be able to work around it until a better solution is found. It
seems like you could either Redefine the amviewout command or set up a reactor to watch
for that command and prompt you to see if you would want to run Amupdate V A first.
Again I am extremely rusty in Lisp and MDT VBA so maybe I am off base??
Kent


Msg: 7 of 14  
From: Leo Laimer 
Kent,
What you are suggesting is what we are doing right now not in VBA, but "mentally"
So we have 3 things we are watching out for with an eagle eye:
- wrong part count in BOM
- wrong length of parts in broken views
- view update
Those are the 3 main problems that are bugging us again and again, without
any way to nail it down and fix it.
(well, maybe the BOM problem is solved in MDT7 - we'll see)
Regards, Leo Laimer Bad Ischl - Austria


Msg: 8 of 14  
From: Brian 

MDT do recognize that something possibly has changed.
Look at the command line when opening the file.

Regenerating layout.
Regenerating model.
Performed audit of feature suppression data in 2 updated Xref file(s).
Please SAVE ********.DWG to preserve audit results.
AutoCAD menu utilities loaded.
AutoCAD menu utilities loaded.

The program tell that something possibly has changed, and your should save
the 2D view, if your do not want to lose the view.

Brian

  
Msg: 9 of 14  
From: darvinv 
Kent,
It's like there's a missing bit of wiring between the model tab and the layout tab
The model tab sees the changes but the doesn't tell theDM that the changes occurred 
and no respect for automatic view updates on exrefs.
It might be the new refmanager getting in the way. If you hit the reload xrefs command
from the refman popup, then the changes carry over, but amrefresh doesn't do it.
"AMUpdate,V,A" can be used in acaddoc to workaround.
darvin


Msg: 10 of 14  
From: Autodesk\ 
Hi Leo,
I'll take a look at the problem but I'll have to say up front I'm not sure if
there's anything that can we can do with the code to change this behavior. When
the models and the views are all in the same drawing, the views automatically 
get notification about changes to the model. When the models and the views are
in seperate files, there is no way to send notifications of model changes to
the views. Obviously we could do something like force the views to update every
time you opened a drawing, but I don't think that would go over very well with
the majority of the customer base.
Mike Dickason
Developer
Manufacturing Solutions Division
Autodesk, Inc.


Msg: 11 of 14  
From: Leo Laimer 
Date: May/13/03 - 18:01 (GMT) 
Thanks Mike for your attention!

I understand what you are saying.
On the other hand, when the xref is reloaded (amrefresh), the view will update,
be there any changes to the 3d part or not. And as soon as I editfile A, and 
switch to file B, I get this message on the lower right screen corner about Xref
that had changed. So an automatic solution seems to be so close...

A forced update everytime we open a drawing would be very counterproductive, as
we are speaking of really huge files here that can take up to 30min to update.

If you see any chance to get a warning just for the print and the amviewout
action, if the 2d is not updated according to changed 3d part, please provide
this. I would save us lots of headache.

Sure you are aware that we like your package very much. When following this
workflow with separate files for 2d and 3d, we can manage incredible huge
assemblies, I think our recent project will surpass the 15.000 parts count.

Keep on the good work!
Regards, Leo Laimer


Msg: 12 of 14  
From: Autodesk\ 
Date: May/13/03 - 18:57 (GMT) 
Leo,

What happens when you do AMREFRESH even if you haven't made any changes to
the external model? I believe the views will update even though no model
changes were made. Technically this is an unnecessary update, but for the
same reasons I explained in my previous post there is no way for the views
to know whether or not the model has actually changed.

Mike Dickason
Developer
Manufacturing Solutions Division
Autodesk, Inc.


Msg: 13 of 14  
From: Leo Laimer 
Date: May/13/03 - 19:27 (GMT) 
Mike,
It's exactly like you are stating - the view will update, if I push the
button, no matter if there was any changes or not.
Just another question - where does the information come that this yellow
popup has, when it says that an xref had changed? Wouldn't it be possible to
extract this info for the decision to update or not?

Well, forgive me my stupid questions, I'm no programmer, but if the xref
flie (file A) is newer than file B, this would be a strong sign that there
were some changes done to file A, and this could at least give you a
warning when the amviewout is intended? (I remember that MDT1...2 did work
that way?)

I would be very interested in discussing this further, solving this problem
would take a heavy load off our shoulders...

Regards, Leo Laimer


Msg: 14 of 14  
From: darvinv 
Date: May/13/03 - 20:35 (GMT) 
mike,
AMRefresh does not push through to drawing views for me.
Only Reload and AmUpdate>View>All Layouts push through.
darvin