Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. Be respectful, on topic and if you see a problem, Flag it.

If you would like to contact our Community Manager personally, feel free to send a private message or an email.

Cannot change configurations in assembly. What am I doing wrong

Ben_Ben_ OS Professional, Mentor, Developers Posts: 303 PRO
 Right clicking a part and choosing configuration and changing it ends up in a error. What am I doing wrong? https://drive.google.com/open?id=15bnHSf_XpqH5fkzuoFURd_UNsopqE5wN

Comments

  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,671
    Hi Ben, hard to tell without seeing the doc - is Part 1 definitely preserved in the config change? It could be the effect of a boolean changing the internal id.
    Senior Director, Technical Services, EMEAI
  • Ben_Ben_ OS Professional, Mentor, Developers Posts: 303 PRO
    edited October 2019
    From support "In the part studio it appears you are trying to set the transform distance to zero, which is not allowed" . So I needed to make a copy of some geometry and then re-add it to the part. This must have changed the internal id. I get why it did not work now but I am disappointed regardless. Can this command be augmented to fix this?
  • lanalana Onshape Employees Posts: 705
    edited October 2019
    @Ben_ You could try adding copy always as part of transform operation and configuring Transform Type parameter - should work https://cad.onshape.com/documents/41c7610c5f5981896264e7c8/w/feec44ca4dbcff46603adb5c/e/3d53e9a72df5ca5e8431d487

    But, yes, pleas make iR for 0-distance transform
  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,671
    If you are using Boolean/Union make sure the first Part is selected first (the id of the first selected Part is inherited).

    Senior Director, Technical Services, EMEAI
  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,671
    edited October 2019
    Another option: are you using Transform / Transform by distance? It does seem a bit crazy that you can't have zero or negative numbers in there (it's an easy fix, but would require an Improvement Request). You can have zero in Transform by XYZ, but if those directions are no good, there is a workaround:
    1. In the Part Studio, create a Mate Connector on the edge/plane/whatever entity with the Z axis pointing in the direction you want to transform.
    2. Offset the Mate Connector in the Z axis direction by -1" using the Move option in the MC dialog.
    3. Create a config variable that is the distance you need.
    4. Create a Transform/ by Distance, select the Mate Connector then set the distance as #variable + 1"
    Senior Director, Technical Services, EMEAI
  • Ben_Ben_ OS Professional, Mentor, Developers Posts: 303 PRO
    edited October 2019
    Ok here is the document. Very poor modeling choices are made here but regardless I should be able to make a assembly and change the configs of parts. https://cad.onshape.com/documents/70cf5dbbc58cb8c79b57bee9/w/b485ae539b50b730208a9d28/e/4956c482ea2809cb3c0774f7 see if you can get it to work, try and change the cofig in assembly2 to anything other than what is there
  • jakeramsleyjakeramsley Member, Moderator, Onshape Employees, Developers, csevp Posts: 661
    Ben_ said:
    Ok here is the document. Very poor modeling choices are made here but regardless I should be able to make a assembly and change the configs of parts. https://cad.onshape.com/documents/70cf5dbbc58cb8c79b57bee9/w/b485ae539b50b730208a9d28/e/4956c482ea2809cb3c0774f7 see if you can get it to work, try and change the cofig in assembly2 to anything other than what is there
    Hi Ben_,

    https://cad.onshape.com/documents/65f99f98364608c632718161/w/ef30987a879cb34e09f80fb5/e/4a08ac22c8dd385089d962ef

    It's something that isn't very clear because more often than not it doesn't matter, but the order of a union boolean does have some importance.  The first instance in the boolean becomes the parent part that all other parts are added to.  What that means is that all downstream references to that part will continue to exist and all downstream references to the other parts will fail.

    The way you have your Boolean 1 union setup:
    Part of Linear pattern 2
    Part 16
    Part 15
    Part 14
    Part 5
    Part 17
    Part 8
    Part 6
    Part 7
    Part 4
    Part 9
    Part 12
    Part 11
    Part 1
    Part 2
    Part 3
    Part 10
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part 13
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2
    Part of Linear pattern 2

    What this means is that if 'Part of Linear pattern 2' exists, then the configuration will resolve to that.  However, if it doesn't it will resolve to 'Part 16'.  And if 'Part 16' doesn't exist, then it will resolve to 'Part 15'.  And etc. etc. etc. as it goes down the line.

    Since you are increasing/decreasing the number of parts with your configuration, you want to make sure one that exists in all configurations is at the top.  This will mean that the reference will be stable and by changing the configuration will resolve properly.
    Jake Ramsley

    Director of Quality Engineering & Release Manager              onshape.com
  • Ben_Ben_ OS Professional, Mentor, Developers Posts: 303 PRO
    Whoot! @jakeramsley for the win! 
    I understand why this happens now but at the same time I cant help but think this should work regardless. Guess I need to submit a enhancement request. 

    THANKS!
  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,671
    edited October 2019
    Isn’t that what I said?  :D

    I don’t think there is much point submitting an IR as there would be no way for us to determine the ID otherwise. 
    Senior Director, Technical Services, EMEAI
  • Ben_Ben_ OS Professional, Mentor, Developers Posts: 303 PRO
    Yes sorry Neil, you did say that too. 
  • jakeramsleyjakeramsley Member, Moderator, Onshape Employees, Developers, csevp Posts: 661
    NeilCooke said:
    Isn’t that what I said?  :D

    I don’t think there is much point submitting an IR as there would be no way for us to determine the ID otherwise. 
    I wouldn't say "no way" as we've definitely had thoughts on how to handle this as it can be rather cryptic why references fail to resolve.
    Jake Ramsley

    Director of Quality Engineering & Release Manager              onshape.com
Sign In or Register to comment.