cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Your Friends List is a way to easily have access to the community members that you interact with the most! X

Using drawing parameters in repeat region relations

JoshBenson
2-Guest

Using drawing parameters in repeat region relations

Is it possible to use drawing parameters in repeat region relations? If so what is the proper context to call the parameters? I would like to drive the value of a column in my BOM tables with a relation that uses both a part level parameter and a drawing level parameter.


This thread is inactive and closed by the PTC Community Management Team. If you would like to provide a reply and re-open this thread, please notify the moderator and reference the thread. You may also use "Start a topic" button to ask a new question. Please be sure to include what version of the PTC product you are using so another community member knowledgeable about your version may be able to assist.
8 REPLIES 8

NICE question Josh...

Hmm... from what I can tell, you actually CANNOT use a drawing relation in your repeat region relations. I was able to add drawing dimensions to the repeat region manually... but I was not able to access any of them inside the repeat region relations.

There may be ONE very, very sneaky way to do what you're asking but it would help to know what you're trying to accomplish first. I don't want to dive deep into the topic of drawing parameters unless it's necessary. Can you give us more background on what you're trying to do?

Thanks!

-Brian

What I am trying to accomplish relates to routing purchased and fabricated material through our shop - our IT dept. set up a program that sorts our BOM's, and they want a three digit code to indicate routing. Our machining dept wants a 2 letter code since the initials are easier for the machinists to interpret and remember. I don't want to add these to every part (we can sometimes have 100's of parts per BOM/drawing), what I am looking to do is put the 2 letter code on the drawing and set up a relation in my BOM to generate the three digit number based on an existing part level parameter and the 2 letter drawing parameter.

Let me know what sort of trick you have in mind, I would love to try it.

Thanks,

Josh

Hi Josh!

Break out the champagne... I got it to work! I'll post the solution when I get home... have to run for an appointment but I am thrilled to be able to show this to everyone.

Hang tight... more in a couple of hours!

Thanks!

-Brian

Brian -

Have you had a chance to write up an summary of your findings? I have tried several different paths with no success, so I am eager to hear your solution.

Thanks,

Josh

Holy cow Josh... this totally fell off my plate. I went home and... I guess I forgot!

I haven't been posting much to Planet PTC for the past two weeks due to some crushing workload from my job. BUT... I will write this thing up for you today. I owe several people more detailed responses from Planet PTC. I feel like I need to finish resolving those outstanding issues before I go working on new issues. If I can get your response posted, that will get me started on clearing out the backlog.

Basically we're going to use a Drawing Program to do some very nifty stuff. I've been sitting on this drawing program thing for awhile. It's an ultra-rare feature that people almost never use. It's really an ancient dinosaur-like portion of Pro/DETAIL but it has some special capabilities that can't be duplicated elsewhere.

I'm going to show you how to write a drawing program to do what you need... and then how to load and run the program from a mapkey. One button press starts the whole process... the screen flashes a few times and amazing things happen.

Thanks for kicking me back into gear... I'll write more today...

-Brian

Hi Josh...

Before this gets away from me again, I need to write up something comprehensive regarding your question... so here goes. Let's go back to your original question:

Is it possible to use drawing parameters in repeat region relations?

The answer to this question is actually No. Using basic functionality, you cannot use drawing parameters in relations. This is right out of the Pro/E documentation. The trick I was referring to technically doesn't use relations... it uses a Drawing Program. Using a Drawing Program, you actually can use drawing parameters in a "relation-like" programming environment. So... while the Pro/E documentation is technically correct, you can actually can work with drawing parameters in a similar fashion to the way you'd use relations.

If that sounds very carefully worded and muddy, that's because it is. This is where the problem comes in. While I've certainly discovered a way to use drawing parameters in a drawing program to mimic some of the functions of a relation, I can't mimic all of them. Therefore, I have a partial solution to your problem. As I've re-read your messages relating to this thread, I think I understand what you're trying to do. As written, I do not think you can achieve what you're after. I think you may be able to come up with a clever solution that can use the drawing program idea... but you won't be able to do it in a table.

Now, all of this is not to say there's no solution to your problem. There's always the caveat that most things can be accomplished using J-LINK or Pro/TOOLKIT. There are numerous methods to extend the features of Pro/ENGINEER using other programming languages. I've seen people use Pro/PROGRAM, C, Toolkit, J-Link, Web-Develop, the Visual Basic API, Perl, Javascript, ModelCheck, and even software like Excel. If you really want to achieve a specific function in Pro/E, chances are you can do it. We're talking only about out of the box basic functionality here. I'm trying to figure out an out-of-the-box solution for you.

Again, going back to your messages:

... I don't want to add these to every part (we can sometimes have 100's of parts per BOM/drawing), what I am looking to do is put the 2 letter code on the drawing and set up a relation in my BOM to generate the three digit number based on an existing part level parameter and the 2 letter drawing parameter.

You also said:

I would like to drive the value of a column in my BOM tables with a relation that uses both a part level parameter and a drawing level parameter.

So then, my understanding is that you want to create a drawing parameter to contain the two-letter code. You then want to look at each component (part or subassembly) in an assembly BOM. You want to use a relation (specifically a repeat region relation) to compare some component-level parameter to the drawing parameter. This relation would compare the two-letter code and the component parameter to come up with a unique 3-character code for each component. This unique code would be displayed in your assembly BOM.

If I am understanding this correctly, you can't do it. You can't do anything inside a repeat region relation that uses drawing parameters. Again, that's directly confirmed in the documentation. I tried all sorts of crazy workarounds and I couldn't get around this limitation... even using the drawing program. I couldn't make the code pop up in an assembly BOM.

What I was able to do, was perform this operation in a single part. If I had a single drawing with a single part, I could compare a part parameter to a drawing parameter and assign a new, unique parameter based on the comparison. This is exactly what I think you want... except I cannot put the results into a parameter that will report in a BOM.

If you had a drawing of each and every part, you could add the two-digit manufacturing code to the drawing. From this, I can compare the part and the manufacturing code and create the 3 digit routing number. I can display that routing number in a note or anywhere in the title block. The only thing I CAN'T do, is get it in a repeat region BOM.

At first I thought this was enough to solve your problem. When I went back and re-read, that's when I put together your messages and figured out that you need this to happen in an assembly BOM.

Now that we know what cannot be done, we can start asking questions to determine what can be done. For example, you can take your assembly BOM and export it to Excel. You can use a script inside Excel to generate the 3 digit code and dump the whole thing out to a report or some other type of document. If you absolutely must have the BOM inside of Pro/E, I have another suggestion...

Let's say you have an assembly with a BOM that needs the three digit routing numbers added. What if we could take the BOM generated from Pro/E and send it to Excel for processing. Excel would add the routing numbers. Finally, you could display a new BOM on the drawing that contained the routing numbers. Would this work? I'd envision moving the default BOM outside the right-hand border of the drawing and having the new Excel-created BOM in it's place. I'm not sure if that gives you the "automated" process you're after but it's a possibility.

So while I don't have a magic bullet solution, we're close. If we can tweak your requirements a bit, may be we can get there. Or... if we think outside of the box, we might be able to come up with a solution that overcomes the drawing parameter/relation limitation.

Let me know what you think and we'll go from there.

Thanks!

-Brian

Brian -

Thanks for getting into this for me - I think the path I will take it to push our IT department to put this code in their system so we don't have to go through any runaround in Pro-E (or Excel). I know I can do this in J-link, but I don't think it is worth my time to go that route for what we are trying to accomplish. If anyone is writing custom code for this it may as well be our IT department since they already have code to read in the BOM's anyway.

Thanks again for looking into it.

Josh

Hi Josh

Can you share an example of your code system

I Basically wants to know ; How you will enter these values(By some relation or manually)

If You will give the exact example; then I think we can help you in a better way

(Sometimes there might be some other ways to achieve the requirement)

Regards

K.Mahanta

Top Tags