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

Community Tip - Need to share some code when posting a question or reply? Make sure to use the "Insert code sample" menu option. Learn more! X

Parametric Matrix Table

jcolon
9-Granite

Parametric Matrix Table

I have a matrix table, fully parametric. It has parts (-01 through -04) and 29 items. Some of these items should not show as numerical, but rather as A/R in the table as their quantities are less than one.

On other tables I use

/* determines quantity

IF asm_mbr_ca_part_no == "PART#"

   NUM = "QTY"

ENDIF

and just edit "part#" and "qty" to what I need and update the table and it works. But on this parametric table I see this (as default):

IF ASM_MBR_TYPE == "BULK ITEM"

NUM = "A/R"

ELSE

LOST SYMBOL= rpt_qty

error Invalid left side of assignment

ENDIF

I cannot change "bulk item" to the part number needed nor can I add my own command (as shown above) to make the table show the amount I need. There is something somewhere that Creo does not like but I just don't know what it is. We are just starting to use parametric matrix tables and nobody here knows what is going on.


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.
22 REPLIES 22
jcolon
9-Granite
(To:jcolon)

This is what my table looks like at the moment. Items 3, 5 and 12 should have a quantity of A/R and I also would like to add a qty of "0" to the empty spaces in the table, if possible.

table.png

try:

NUM=rpt_qty

/* determines quantity

IF asm_mbr_ca_part_no == "PART#"

   NUM = "QTY"

ENDIF

IF ASM_MBR_TYPE == "BULK ITEM"

NUM = "A/R"

ENDIF

This way, NUM is given a value, and it is changed if it meets certain criteria.

That, at least, got rid of the error, but changed nothing in the table. Does it have something to do with the relation of -01,-02... because they each reference a different model in a family tree? Or maybe because there are more than one bulk item in the drawing, meaning that not only the items I want the qty to change, but others who have a set qty of 1 are reading as bulk items.

It's difficult because I do not know what your table columns are called (switch dims and it will show) or what is assigned

you may have to update your table.

I have a keen eye for the obvious and picked the low fruit to help out

I'm heading out for the day.  If someone doesn't help by morning, I'll give it a go then.

Switching to symbols makes it hard to read the cells' contents. I'll just type them out here. it's also almost the end of day for me.

  ITEM    |         C/A PART NO       |        DESCRIPTION       | -01QTY | -02QTY  | -03QTY | -04QTY

------------------------------------------------------------------------------------------------------------------------------------------------

rpt.index | asm.mbr.CA_PART_NO | asm.mbr.ca_description |  rpt.qty  |  rpt.qty  |  rpt.qty  |  rpt.qty

------------------------------------------------------------------------------------------------------------------------------------------------

             |                                     |                                    | MODEL | MODEL | MODEL | MODEL

The models are

480-8100-01 <480-8100-xx>.asm

480-8100-02 <480-8100-xx>.asm

480-8100-03 <480-8100-xx>.asm

480-8100-04 <480-8100-xx>.asm

We normally only adjust the QTY by going off of ASM.MBR.CA_PART_NO

The family table verifies properly and the table propagated with the correct quantities. It is just that I am being asked to add the zero qty to the blank cells (why when I thin kit is a wast of time and effort) and a few of the items are miscellaneous stuff (like loktite or printer paper and ribbons) that have a qty of less than 1 in billing so we put it as A/R just to keep out headaches down.

MartinHanak
24-Ruby III
(To:jcolon)

Hi,

how many repeat regions does your table contain ? Can you save your table in .tbl file and upload it using How to Attach a File to a Discussion Reply procedure ?

MH


Martin Hanák

This should be the table.

Kevin
12-Amethyst
(To:jcolon)

Your table should have rpt.rel.NUM in place of rpt.qty. This would be the reason for lost symbol being displayed in your repeat region relations. To get 0 for unused items I think you may still need to add the item to your assembly (probably as a bulk item), set the bom_report_quantity to 0, and write repeat region relations that take into account whether the item is used or not.

jcolon
9-Granite
(To:Kevin)

I tried that parameter, but when I went to COLUMN MODEL/REP and tried to select the cell for the column it gave me and error.

"   The cell selected does not contain &rpt.qty only. Select again."

Kevin
12-Amethyst
(To:jcolon)

Try setting the COLUMN MODEL/REP first and then change the cells for rpt.qty to rpt.rel.NUM.

if you select the top column heading in the table and rmb, there will be an option: report parameter.  select this.

then rtp... > rel... > User Defined > type in NUM

if you do a properties in the cell you just edited, it will show:

&rpt.rel.NUM

you can copy it (or the one above) then open the other cells with properties and paste it.

when you're done, regen.

I now get a/r in all columns except -03 which reports the quantity.

working on the zeros

I just did what the two of you said about rpt.rel.NUM and I got them all to show A/R or whatever I put as the value.

I just need 3 specific items to show A/R (3, 5 and 12) the others should keep the shown quantities. It is looking like it is either all or nothing when dealing with this many bulk items. When I added the asm_mbr_ca_part_no parameters to the relations, it actually duplicated my table (making it twice as big with repeat numbers) and then added the value I specified.

Once I add actual sub-assemblies and parts to my drawing model then those quantities will propagate properly. I am thinking that the inherent issue is the fact that all these items are bulk items and the system is reading them as one item despite their differing parameters.

If I were to use a standard BOM, then the items all automatically propagates to A/R for the bulk items and I can go in and edit the relations for each one as necessary.

I was trying to avoid doing that as would make a huge part of my table non-parametric, which is why I added so many individual bulk items to my initial family table.

Kevin
12-Amethyst
(To:jcolon)

The repeat region relations give an error if you try to set NUM = rpt_qty. Not sure why. Another thing to consider with a bulk item is you don't need to place more than one instance in the assembly. You can set the BOM_REPORT_QUANTITY to user input to change the value as needed.

Kevin
12-Amethyst
(To:jcolon)

Figured out part of the relation issue. Since these are family table instances you will need 4 relations for the A/R quantities, one for each column, and 4 for the number quantities meaning you need 4 relation parameters. When you specify the instances for the column quantities 4 additional quantity parameters get added in the relations dialog, these are the values that should be used in the relations which is why I was getting an error when try to set NUM equal to rpt_qty. Try the following and see what you get:

IF extract(asm_mbr_ca_part_no,1,3) == "022"

   NUM1 = "A/R"

   NUM2 = "A/R"

   NUM3 = "A/R"

   NUM4 = "A/R"

ELSE

   NUM1 = qty_m31r0

   NUM2 = qty_m32r0

   NUM3 = qty_m33r0

   NUM4 = qty_m34r0

ENDIF

Attached is what I get:

BOM.JPG

MartinHanak
24-Ruby III
(To:Kevin)

Kevin,

I think that Javier does not want to display A/R in -01 QTY column for 022-1723-00 component.

It seems to me that in repeat region user cannot change default Creo behavior (Creo displays empty cell) in case that some component available in generic is suppressed in family table instance.

There is no chance to detect that some component available in generic is suppressed in family table instance. Also it is not possible to replace empty value by user value.

My suggestion ??? Apply cheating ...

Create table 4x29 (same dimensions as columns -0x Qty). Enter A/R value in appropriate cells. Place the table to over repeat region table.

-OR-

Place A/R notes to locations matching empty cells.

MH


Martin Hanák

Yes, I only needed A/R in certain cells in certain items. Not across the board. I did wind up manually adding text notes to the cells and try to center it as good as possible before sending it through the approval process, but I was just trying to see if there was a way to get it to work properly. At my company we are trying to set a uniform way of doing things and making it all parametric. I guess we gotta figure out a different way of doing this.

Thank you all for your amazing help on this! While the table did not act according to the way I needed, I did manage to learn quite a bit on how these parameters and relations work.

Thanks once again!

Kevin
12-Amethyst
(To:MartinHanak)

Correct, I was trying to figure out what was causing the problem I was seeing with using the relation. Trying to use 1 relation parameter caused the the NUM = "0" relation to be evaluated but NUM = rpt.qty evaluates as an error resulting in everything being defined as A/R and the other 3 columns showed either A/R for everything or the values didn't show at all. My test was to show that I could get the relations to work by looking at the first 3 characters and based on that assign a value. The thing I found out is there are actually 5 QTY parameters (the generic and 4 instances) that get created, 4 (1 for each instance) of which need to be used in the relations since a family table is used. Using these I was able to get what I expected showing the relations do work although there are still errors specifically the ones where they want 0 to show. As you pointed out the error there seams to be related to the fact that the component is present in one instance but not the others which is one reason for the blank cells for row 12. You would see the same for the cells in rows 3 and 5 except because of the condition I used the parameters were evaluated to the first set of relations.

I didn't find anything that looks to see whether a component is suppressed or not but did have some success by setting up the bulk items that are suppressed to be a family table with the intent of using 0 for suppressed and 1 for resumed. Have not tried it for all columns but did get it to work for one.

Kevin
12-Amethyst
(To:Kevin)

‌The only way I found to keep things parametric or related to a relation is to set your instances so that they include the parts that will have a quantity of 0. The relations would have 4 sections, 1 for items 3, 5, and 12 setting the NUM# parameters to A/R or 0 as desired and the last setting the NUM# parameters to the quantity parameter for each instance.

This is what I am working on. I haven't actually gotten to any real modeling yet as I am adding the bulk items and sorting out the BOM for them. But I know I am going to see issues if I continue with the assemblies if I don't fix this issue on the table first.

Ok, I just looked at these...

I know that this just went beyond my abilities.

Martin‌,  this is all yours

At any rate, thanks for the attempt. it is all anybody can ask for.

it may be a simple fix if you're just trying to add "0" to the blanks in the table.

in the relation section above, add:

NUM=rpt_qty

IF NUM==""

  NUM="0"

ENDIF

/* determines quantity

Announcements
NEW Creo+ Topics: Real-time Collaboration


Top Tags