BOM structure of model stays the same on it's level and it's parent assembly, eventhough it is switched to different type. Bug?

BOM structure of model stays the same on it's level and it's parent assembly, eventhough it is switched to different type. Bug?

ReneRepina
Collaborator Collaborator
3,258 Views
9 Replies
Message 1 of 10

BOM structure of model stays the same on it's level and it's parent assembly, eventhough it is switched to different type. Bug?

ReneRepina
Collaborator
Collaborator

Hello,

 

I guess title is a little confusing, but I did not know how to write it in otherway. Pictures will help clear the issue.

 

I am using Inventor 2020.3.4.

 

How to simulate:

  1. I have a model - "Assembly 1". In it's "Documents Settings", under "Bill of Materials", it is set as "Normal" in Default BOM Structure.
  2. I put this assembly to it's parent assembly "Assembly 2". In "Assembly 2" BOM, I switch "Assembly 1" to "Phantom". It is the same if you go under "Model Data" or "Structured" - only difference is, that in "Structured" "Assembly 1" disappears, due to being "Phantom" (that why second picture is in "Model Data" tab).
  3. Go back to "Assembly 1" "Documents Settings" and check it's "Default BOM Structure". It is in "Phantom", why??

 

ReneRepina_1-1614495313265.png

 

ReneRepina_3-1614495720155.png

ReneRepina_4-1614495787268.png

 

ReneRepina_5-1614495907859.png

 

The problem is, that we want to have for example "Assembly 1" as normal and then we would like to decide in it's parent assemblies if it should be "Normal" or "Phantom" or something else in that specific assembly. Basically it should not have the same BOM structure in every assembly.

This also causes a problem that we are unable to "lock" or "assign item" to these assemblies in Vault. Because assemblies needs to be "NOT phantom" to be able be locked or assigned, but you need those assemblies as phantoms in parent assemblies. Kinda LOOP problem.

It this a bug?

 

 

Best regards,

Rene Repina

 

 

 

 

 

 

 

0 Likes
Accepted solutions (2)
3,259 Views
9 Replies
Replies (9)
Message 2 of 10

swalton
Mentor
Mentor
Accepted solution

Inventor components are limited to one Default BOM setting.  A component will be normal, purchased, phantom, etc.  Changing the BOM setting in Assembly 2 will change the BOM setting for all instances of the component wherever it is used in any of your designs.

 

It is possible to switch between the default (as designed in the component's Document Settings interface) and Reference.  To do so, RMB on the component in the parent assembly and look for the BOM Structure menu pick.

 

Inventor does not allow you to have what you want with a normal assembly.

 

I don't know if iAssemblies allow control of the BOM setting for each member assembly.  I doubt it.

 

Untested workflow:

You might be able to create a "wrapper" assembly.  Set Assembly 1 to phantom.  Create a new assembly: Wrapper.iam.

Place Assembly1 in Wrapper.iam.  Set Wrapper.iam to whatever different BOM value you need.  Add some iLogic to Wrapper.iam to pull whatever iProperties you need from Assembly1. 

 

 

Steve Walton
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.

EESignature


Inventor 2025
Vault Professional 2025
0 Likes
Message 3 of 10

johnsonshiue
Community Manager
Community Manager
Accepted solution

Hi Rene,

 

If I understood the issue correctly, the behavior does not look right to me. The BOM Structure property (Normal, Phantom, Reference, Inseparable, and Purchased) can be controlled at the two levels. The Doc Setting dictates the default BOM structure property in the assembly where it is placed within. At instance level, the BOM Structure property can be toggled between "Default" (one of the above types) and "Reference" (deduct from QTY).

So, I am not aware of a workflow to have a component to be "Normal" and "Phantom" at the same time. It should always be "Default" or "Reference."

Please share an example here. I would like to understand the behavior better.

Many thanks!



Johnson Shiue ([email protected])
Software Test Engineer
0 Likes
Message 4 of 10

ReneRepina
Collaborator
Collaborator

@swalton 

Correct, they can be change either in upper assembly or document level.

Well, in our example, we do not want to have "Reference" since we need those elements inside BOM.

That is why I am asking, if there is any possibility to do it, but I guess it is as Designed.

Not sure, we do not use iAssemblies.

The main problem we are having is, that "phantom" assembly is not locked in Vault, therefor can be changed by users even if it is "Released".

 

@johnsonshiue 

This is correct. You can switch between "Default" and "Reference", but not other (probably as Designed).

Maybe I wrote a little bit wrong. I will give you our example.

We have a weldment (assembly). In this weldment we have several "parts" of that assembly. Sometimes we use "sub-assembly" for few parts (which are easier to copy as group that 1 by 1). This sub-assembly should be "phantom", so parts are directly on weldment assembly BOM level. Everything to here is no problem, works fine. Next step it is a problem. "Phantoms" stay open inside Vault (ITEM) when "Released". Users can go to this "Phantom" and change it freely (since it open) and this is not OK. "Normal" assemblies can be locked, that why we were thinking about this workaround.

As summary to not complicate things, we just need "Phantoms" to be locked inside Vault, how can we do that? Currently we have all "Phantoms" unlocked (assemblies, chain assemblies, ...).

 

One of our problems (example with chains):

ReneRepina_0-1615100977110.png

 

0 Likes
Message 5 of 10

johnsonshiue
Community Manager
Community Manager

Hi Rene,

 

Maybe the released components should be moved to Library folder. Other than that, I am not aware of a way to "lock" a component without being modified in the RAM once they are loaded.

Many thanks!



Johnson Shiue ([email protected])
Software Test Engineer
0 Likes
Message 6 of 10

ReneRepina
Collaborator
Collaborator

@johnsonshiue 

Hi John,

 

we have automatic folder creation based on filename, so we do not move files.

So basically we are unable to lock "Phantom" assemblies in Inventor/Vault?

Users should be able to lock them somehow. If they can be locked all of problems discussed above are solved by this.

0 Likes
Message 7 of 10

johnsonshiue
Community Manager
Community Manager

Hi Rene,

 

I am sorry I am not an expert in Vault. There could be some options to "lock" a folder or specific files. In terms of Inventor, only library components are blocked from being edited. Other than that, there isn't any concept of lock. You can try lock at the folder level. But, the issue is that the files are loaded in the memory and Inventor can access and edit them. When change will be saved, the PDM tool like Vault may intervene.

Many thanks!

 



Johnson Shiue ([email protected])
Software Test Engineer
0 Likes
Message 8 of 10

ReneRepina
Collaborator
Collaborator

@johnsonshiue 

I understand, no problem. There is an option on file level, but we use ITEM for locking (which Phantoms do not have). We cannot use folder locking, since other files are in it (automatically created folders).

Thanks for the help anyway, I know this is not a discussion for this forum. I opened a case on Vault regarding locking Phantoms.

Message 9 of 10

jesus.zas
Participant
Participant

Hi all,

I found that the BOM property "Phantom" has a different quality (or behaves differently) than the other BOM properties like Normal, Purchased, or Reference. The latter ones can be changed in the context of different assemblies for the same model/assembly file. However, "Phantom" is inherent to each model/assembly file and cannot co-exist alongside the other BOM properties. It excludes them altogether.

I suspect that this has been designed in this way purposefully by Autodesk, for some reason.

I hope this helps. Cheers.

0 Likes
Message 10 of 10

ReneRepina
Collaborator
Collaborator

Hello @jesus.zas .

 

I think the only override options for files inside the assembly can be "Reference", I do not think there is other options. So basically you can override any file to "Reference" inside its parent assembly, eventhough original BOM type is something other than reference. I do not think there are other options.

 

Also "Phantom" can be override to "Reference" inside its parent assembly.

0 Likes