Hi all
I'm trying to use iLogic to change the component within a subassembly.
The assembly I am trying to produce is made up of many other subassemblies, the suppression status of most of these subassemblies depend on the handing of the main assembly and I have used "component.isactive" quite successfully in getting the results I want.
Where I am running into difficulty is when I have multiple configurations of the same sub-iassembly, I have the subassembly set up as an iAssembly and have been able to use table replace in the main assembly author to change the sub-iassembly as needed. This would be fine if I only had one or two subassemblies but as I add further subassemblies to my main assembly the main ilogic assembly author is starting to get messy.
I would like to use the iAssembly Author to drive the iLogic, this has worked for suppressing and unsupressing a large number of parts by changing one custom variable.
Member Part Number Handing H R S W
1: iLogic Assembly Test-01 / iLogic Assembly Test-02 / Left /Yes / No / Yes / No
2: iLogic Assembly Test-02 / iLogic Assembly Test-03 / Right / No / No / No / Yes
If iProperties.Value("Custom", "H")=Yes Then Component.IsActive("Ass1Left:1") = True If iProperties.Value("Custom", "H")=No Then Component.IsActive("Ass1Left:1") = False If iProperties.Value("Custom", "H")=Yes Then Component.IsActive("Ass2Right:1") = True If iProperties.Value("Custom", "H")=No Then Component.IsActive("Ass2Right:1") = False
The subassembly i'm having problems with is has it's own iAssembly Author made up of 5 rows and 13 columns, it has many parts whose sizes and positions depend on the size of the overall assembly, I really want to keep this as an intact sub-assembly. I have been trying to use the changerow command to select the member name but have had limited success so far.
What I would like to know is the correct procedure for reproducing what I need.
If iProperties.Value("Custom", "R")=No Then iAssembly.ChangeRow("Component-0:1",1) ElseIf iProperties.Value("Custom", "R")=Yes Then iAssembly.ChangeRow("Component-R:1",2) End If
I would also like to vary the status of one configuration depending on which variable has been chosen. eg: If H = Yes then R must always = No as both configurations can't both be active at the same time, I will get to this problem later, firstly would like to be able to select the right row within the subassembly.
Sorry if this all seems a bit confusing and If I have some of the terminology wrong it is because I have recently moved to inventor from solidworks.
Thanks in advance!