===============================================================================

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:

	<windchill load point>/codebase/ext (if no ext folder, create it)
	(<windchill load point> 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 -<query/rename> %<query/rename string
>% <proe parameter/attribute>

1st Argument = <query/rename>:

-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 = %<query/rename string>%

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