Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Assembly component update options.

Status
Not open for further replies.

BOPdesigner

Mechanical
Nov 15, 2005
434
0
0
US
We have a couple of users on the same project with their NX 5.0.4 data on a network folder. User 1 opens the top level assembly and starts working with it while User 2, who owns a subassembly of the top level assembly, makes a change to that subassembly and saves it. What are the different options for User 1 to have the change to the subassembly reflected in his session? I figured if he closed the subassembly and then reopened it from the assembly tree it would work. But the old data must have remained in the session or something. If he makes that subassembly the displayed part, and then hit the X in the window to close it, and then reopens it from assembly tree it works. Seems like there are probably some better ways but we can't find anything in customer defaults for assemblies etc. Is this behavior similar when you are using Teamcenter? There is some way for User 1 to be notified that some component(s) in the top level assembly have change, yes?
 
Replies continue below

Recommended for you

BOP

We are currrently working towards solving this problem, we have in some cases 60 engineers working within 1 assembly all of which have ownership of lower levels. Someone need so have over all ownership of the top level and it is this persons job to maintaint he integrity of the structure (keeping the top level up to date). Every day, it is the job of the person who has write access to the top level to run "update structure" and then save the top level, it is also possible to automate it so it happens at say midnight every day although we haven't got round to this yet. As a work round, we are using the assembly search tools to find a component in the assembly when all componenets are closed. Then we open the single component, use open by proximity (with true shape filtering) to find all othe parts in the area that the engineer is working in. you can then run up date structure on any of the lower levels which have opened where new parts may have been added during the day and since the last full update structure, repeating the open by proximity will then find any addtional parts that were missed before you updated the structure of the lower levels. We also use save context and restore context combined with these methods. Basically we will can never be more than one working day out of sync and it is working really well for us with some bloody huge assemblies with lots of people working on them at the same time.

However, we are only using NX 4 and as yet I haven't found anything that will warn us if someone adds something to an assembly "on the fly" you can only find out once you have closed your assembly, up date structure has been run and then you open it again.

Hope this is along the lines of what you are looking for, I apologise if I have missed the mark. [2thumbsup]

Best regards

Simon (NX4.0.4.2 MP4 - TCEng 9.1.3.6.c)

 
There are a couple of things that you can do in Native to deal with these situations. You may be already doing some of these so skip paragraphs that don't apply to you the descriptions are unavoidably wordy.

Firstly file ownership probably needs to be controlled. Otherwise you get the he who files last files longest scenario, in good measure with he who files first maintains a lock on the file and overwrites you depending on your network. Usually with NX it will give you the file has changed on disk warning and refuse to overwrite the other guy, and that may be the only time that you find out about changes that are going on around you. In windows the way to go is to set up creator owner access, and in Unix styled systems it is done with the standard user group world ownership controls whereby setting up groups is the way to go.

Secondly you would probably want to set up file name versions. If you're doing this for the first time then you need to name the part files so that they fit into a naming convention that will be interpreted by NX to determine which is the latest version. The best flavor of this in my opinion is the Military System, used also for designating software releases. It takes a few meetings and some setting up to come up with a system that suits you, but it will help with the visibility of what is occurring in you work flow.

Teamcenter does work differently and provided that you implement workflow the ownership of files is thoroughly managed for the life of the product. Teamcenter does however only spawn an NX session in which the assemblies work in pretty much the same way and have identical problems to what you may currently be experiencing as I will mention below.

What I think you may be referring to is what Simon touched upon. The Assembly structures need to be updated. We've posted at length about this, and for very large assemblies I also struggle to keep the system up to date. The Assemblies maintain a memory of what their structure was in terms of the list of components, when sub assemblies change and you re-open the to assembly with the structure only option set (as most of us using larger assemblies do), then the list of components in the sub assemblies may be out of date. That's one of the things that update structure is used to address.

In a single session as long as somebody saves their changes you should be able to re-open the parts and assemblies and always see their change. To do so always close and re-open the assembly. Close assembly rather that close part from the ANT is what I recommend you to use if you're having trouble with this.

Oddly enough referring the the case directly above we have had some trouble with this in teamcenter where some projects aren't using workflow and refreshing the locks causes problems by not working properly.

Hope you had a good read :)

Cheers

Hudson
 
Hello BOPdesigner.
I've thought about this problem and I think that there is some kind of directory based solution, with no TC. But I've never applied it.
1) You can use main directory on LAN server as a library (I-deas like) and local project directories in each user PC - model-dirs.
2) You can use version control features of NX to create new part versions.
3) You can use simple sync-application for new files update. For example - TotalCommander has some kind of sync-features.

Good luck!

Regards: Dimo Urumov
Aircraft Engineer
Plovdiv, Bulgaria
 
Status
Not open for further replies.
Back
Top