Hi,
I am using a Parts List in an Inventor Drawing of an Inventor Assembly that contains parts with Base Unit 'Each' and Frame Generator members with Base Quantity 'm'. I set the Part Number in the BOM for all of the similar frame generator members to the same value so that they roll-up in the Structured BOM.
This works fine. The Parts List in the drawing displays the 'Each' components without a unit / decimal precision and the frame generator parts all get nicely summed up which is what I want. Unfortunately the decimal precision of the frame generator members is defaulting to 0.000 which is making my parts list untidy and I want to round this figure up to the nearest meter.
I have tried going into each frame member and changing the tolerance > precision on each and every member. This works to reduce the number of decimal places in the parts list once all of the members are changed but is incredibly tedious. It also doesn't quite fix my problem as I would like to round up and this approach rounds down.
I have also tried changing the column format of the parts list table or the QTY column to m and setting the decimal precision there using 'apply units formatting'. This works to fix the precision on the frame generator parts but unfortunately it also changes all of my normal 'each' parts too which is incorrect.
One thing that did look promising was introducing a substitution in the column format for the QTY column on the parts list table. I tried picking up the property 'G_L' which is a custom iProperty that the Frame Generator creates for all members that contains the length. My hope was to sum this field (which looks to be one of the options) and then be able to 'Apply Unit Formatting' of m with precision 0 for this sum. Unfortunately this doesn't seem to work as I expected and the parts list cell that it represents turns blue and has *Varies* in it. I've checked and all of the members have valid lengths in this G_L custom iProperty.
Any ideas as to how I do this? Any help gratefully received.
Solved! Go to Solution.
Hi! Indeed, the workflow in this particular case is not that straight forward. I do recall there is a way to do that. Please share an example so that the experts can provide some precise guidance.
Many thanks!
Hi, yes... an example is good. I should have added this to my original post.
Please see attached. Have a look at the Inventor Drawing File. It shows what I'm looking for.
Hi John,
This is indeed doable. And, Column Substitution workflow will lead to desirable result. Please take a look at attached file. Open ExampleAssembly_fixed.idw. As you can see, the length has been rounded off. What I did was pretty simple.
1) Edit the PartsList.
2) Right-click on QTY header -> Format Column -> Substitution -> enter "G_L" as the new property -> set option to Sum of Values -> change the unit format.
That is it.
Please let me know if it works for you.
Many thanks!
Thank you for your response. Yes, this does indeed round the quantity correctly.
But... my example wasn't a complete one (sorry). Please see attached a similar example, but this time the frame contains members of different lengths. All of the members are given the same part number so that they merge in the structured BOM. The BOM shows the correct total length. If we add the G_L substitution in the QTY column in the parts list that cell of the column now says *Varies*. Is there any way to get it to say the rounded total lengths?
Hi John,
The one you just attached did not work because there is a bit mismatch among G_L unit and properties. I end up opening each frame member, change document unit to meter, and change the Unit QTY so that they are in sync again. Once they are all set to meter unit, there is no need to substitute the values. It should just work. Please take a look at attached file.
Many thanks!
Thank you for fixing the unit errors in the last example. This works but I'm not quite there yet with the problem ...
Summing the parts list QTY column using the G_L custom property substituition only works if all of the items that are BOM merged have the same value for G_L. By luck, in the last example that I sent through all of the member lengths rounded 1m which meant that yes, the parts list QTY substitution displayed a length value rather than *VARIES*.
See attached a new example. This time one of the members is 3m long and *VARIES* is shown.
Is there a way to get the QTY parts list substitution on G_L to sum the values correctly if all of the merged BOM items aren't exactly the same value?
Hi John,
I don't think there is a good solution here for substitute values. The issue is that BOM table does not seem to be able to consolidate iProperty cells even if they are numerical values. They are always treated like text and they cannot be merged unfortunately. I am sorry.
Many thanks!
Ok, thanks. After much investigation with this I agree.
In summary, if you want the QTY to sum up the total length of all of the members of a frame generator frame then one way to do it is to set the 'part number' of all of the members to be the same (you can do this quickly using cut and paste in the assembly BOM). This merges all of the parts and sums the overall length into the quantity field. The correct quantity then appears in the parts list in the QTY. Unfortunately the decimal precision for the quantity (at least for the frames I'm working on) defaults to 3 decimal places which makes that QTY column look ugly on my parts list. This can be fixed by going into each and every part of the frame and changing the setting in the part Document Settings > Units Tab > Linear Dim Display Precision. If you change this for all the frame members (there is no fast way that I can find to do this it seems you must open each one individually which is a pain) then the decimal precision in the parts list QTY will correct. Not very satisfactory but this works. Unfortunately if you modify the frame or click the refresh button in the frame generator the precision is reset to 3dp. Could this be improved with an enhancement to allow you to set the display precision for all parts at once through the assembly BOM window like you can for many other fields?
The other way which seemed so promising but doesn't work the way I would have liked would have been to use a Value Substitution on the QTY column in the parts list. I would have liked to be able to sum the G_L custom property which is present in all of the frame generator members and to have substituted this in the parts list using decimal rounding which is a feature of the parts list format-column. This only works if all of the members are the same length. Possible enhancement (or bug-fix) ?
Can we edit the decimal precision from parameter table ?
Please find the attached
Hi! That is controlled by the Display Precision option in Tools -> Doc Settings -> Unit. Please take a look.
Many thanks!
Just a quick update to this. In Inventor 2020 this seems to have been fixed. You can change the precision and unit on all of the frame members at once through the assembly bill of materials. This then sums and displays correctly in the parts list table quantity column.
The length text in Part Number gets set when the part is created by the Frame Generator.
I don't know a way of changing the Frame Generator behaviour so that the parts created for the frame members have their Part Number description with the length rounded by default.
I know that this isn't what you are asking directly but... I tidy up my drawing Parts List by going into the Bill Of Materials for the assembly and set all of the Part Numbers of the same type to be the same Part Number (removing the lengths). This can be done quite quickly in the Bill Of Materials window by multi-selecting the Part Numbers of all of the parts and entering a new value in one of the Part Number fields. Then you set the Part Number to be the same for multiple frame members Inventor collapses them into one Bill Of Material row. They will then show up as one row in the parts list. Inventor sums up the lengths of the collapsed frame members into the QTY field which you can take advantage of in your Parts List.
I your example I would multi-select all of the AS3679 - 100x75x6 - ???.? (Items 6 to 13) and set all of these parts to have the same Part Number AS3679 - 100x75x6 (without the length). They would be collapsed in the BOM and appear as one line on the Parts List. The QTY column in the Parts List should then show the summed up length.
Thanks for the quick reply & suggestion John,
I'd like to keep each unique part instance as a separate part in the parts list though.
An alternate workaround could be to use a separate column for length and then manually remove the length from the part number field, but Id much prefer no manual edits/overwrites on auto generated fields in the part list/BOM if possible?
Any thoughts @johnsonshiue ?
Hi! Do you mind sharing an example that I can play with? This kind of issue can range from a simple change in setting to laborious editing. Or, it is simply a limitation. It is hard to tell which applies your case without seeing the files.
Many thanks!
Hi John, files attached post 1 of 2 (3 file limit)
Hi! Many thanks for sharing the files! I see this is about the Part Number or File Name. I was hoping there was an easy automated solution. But, I don't think there is. "Length" does not seem to honor any format setting.
I am sorry, I don't see a way to do that.
Can't find what you're looking for? Ask the community or share your knowledge.