Finding a part in a session, make current and save

Is it possible to find
1. if a part is already opened in a session or not
2. and if already opened in a session then make current and
3. save it?

I have a code that force the part drawing to reopen if it is already opened. But if the part drawing is not saved by the user, all the changes the user made will be lost because of the reopening.

Have someone done anything similar?

The NX session has a .Parts collection which keeps track of the currently open parts. You can use this collection to see if a particular part is already open. The following comment thread may help:
http://nxjournaling.com/content/check-if-part-already-loaded-session

Thanks. I'll try the idea.

Regards,
MFJ