=============================================================================== I think the program is working OK. Or at least enough to test on a vmware. Then test at customer site. Below is how to run & where to place class file. You might know this already, but I don't want to assume that. The program allows arguments to query & query/rename epmdoc & wtpart objects. The programs is name attr2name (.java for source & .class for compiled app). A typical command line within a windchill shell would be: To query at 1st: java -mx1024m ext.attr2name -qb 500% TITLE java needs to be in your PATH or in your windchill shell environment. If you type java alone in dos or windchill shell, it should offer you specify arguments (working & in path) or error: 'java' is not recognized as an internal or external command, operable program or batch file. Add java path to PATH environment variable or run with windchill: windchill -mx1024m ext.attr2name -qb 500% TITLE This works for whatever reason (unless thats changed with wc9) -mx1024m is for max heap size. ext.attr2name ext is your external folder in windchill location: /codebase/ext (if no ext folder, create it) ( is like: D:\ptc\Windchill\Windchill_9.0\) Thats where you should see the codebase folder. attr2name is program name (without extension) -qb q=query & b=both (both epmdocs & wtparts) 500% If you want to query or rename all 500 objects (use % here, instead of *) TITLE ProE Attribute/IBA/Param =============================================================================== To get a usage description form the program at anytime, just type program without any arguments (as shown below): D:\ptc\Windchill\codebase\ext>java -mx1024m ext.attr2name Usage: java or windchill [-mx1024m] ext.attr2name - %% 1st Argument = : -qw = query wtparts only -qe = query epmdocs only -qb = query both (wtparts & epmdocs) -rw = rename wtparts only (query 1st) -re = rename epmdocs only (query 1st) -rb = rename both (wtparts & epmdocs) (query 1st) 1st Argument should be lower case. 2nd Argument = %% Should include % (front, back or middle or all 3) where % = * = wild card. Typical = 1% or 2% 3rd argument should be ProE Parameter/Attribute/IBA (like TITLE, DESCRIPTION & upper case) =============================================================================== Above you seen that I was running from the windchill shell form the folder where the code resides: D:\ptc\Windchill\codebase\ext> But it can be run from any location, because the ext.??? tells it to look for the class application in the codebase folder. Above you will see argument #1 allows for -qw,-qe,-qb,-rw,-re,-rb These are q=query, r=rename (which also does query), e=epmdoc, w=wtpart & b=both epmdocs & wtparts. So I would run a few sub queries, to see how many objects you have, then break it up into smaller groups. If you ran 1%,2%,3%, etc that might break it down enough. Maybe even run epmdocs & wtparts separately. I had issues drawings on my vmware, because it had no proe attributes. If your client does the same, then I need to write additional code to read the child model in the drawing & write drawing name the same as the child model in drw. But if they have more than 1 model in drawing, then that could propose a problem. Maybe the code could check for primary model. =============================================================================== Now the class in the zip was compiled on wc7 ( If you try to run the class straight out (drop in codebase/ext folder) & it does n ot work & you want to recompile, here is the command line: Place the source (attr2name.java) in the codebase/ext folder: D:\ptc\Windchill\Windchill_9.0\codebase\ext CD to the codebase/ext folder: cd /d D:\ptc\Windchill\Windchill_9.0\codebase\ext javac attr2name.java Command line will look like this: D:\ptc\Windchill\Windchill_9.0\codebase\ext>javac attr2name.java It should then produce 3 class files: attr2name$1.class attr2name$2.class attr2name.class To see from command line: D:\ptc\Windchill\codebase\ext>dir /b attr2name* attr2name$1.class attr2name$2.class attr2name.class attr2name.java If you get errors &/or no files created, send me the error output. datajett@aol.com =============================================================================== Now so you can capture the many print output that the program generates, you should pipe the output to text file: java -mx1024m ext.attr2name -qe 1% TITLE>attr2name_1%_out_qe1.txt java -mx1024m ext.attr2name -qw 1% TITLE>attr2name_1%_out_qw1.txt or both: java -mx1024m ext.attr2name -qb 1% TITLE>attr2name_1%_out_qb1.txt When your ready to rename: java -mx1024m ext.attr2name -re 1% TITLE>attr2name_1%_out_re1.txt java -mx1024m ext.attr2name -rw 1% TITLE>attr2name_1%_out_rw1.txt or both: java -mx1024m ext.attr2name -rb 1% TITLE>attr2name_1%_out_rb1.txt Then eventually: java -mx1024m ext.attr2name -rb 1% TITLE>attr2name_1%_out_rb1.txt java -mx1024m ext.attr2name -rb 2% TITLE>attr2name_2%_out_rb1.txt java -mx1024m ext.attr2name -rb 3% TITLE>attr2name_3%_out_rb1.txt java -mx1024m ext.attr2name -rb 4% TITLE>attr2name_4%_out_rb1.txt java -mx1024m ext.attr2name -rb 5% TITLE>attr2name_5%_out_rb1.txt java -mx1024m ext.attr2name -rb 6% TITLE>attr2name_6%_out_rb1.txt java -mx1024m ext.attr2name -rb 7% TITLE>attr2name_7%_out_rb1.txt java -mx1024m ext.attr2name -rb 8% TITLE>attr2name_8%_out_rb1.txt java -mx1024m ext.attr2name -rb 9% TITLE>attr2name_9%_out_rb1.txt If thats too many files to rename at once (which your query should tell you): java -mx1024m ext.attr2name -rb 10% TITLE>attr2name_10%_out_rb1.txt java -mx1024m ext.attr2name -rb 11% TITLE>attr2name_11%_out_rb1.txt ............... Let me know how it turns out: Larry