I have a large assembly that is controlled by ILogic. It changes the lengths of parts and adds in duplicate parts as needed. The assembly makes up one half of the total project. In reality there will be two of these assemblies mirrored. I don't want to insert all the parts a 2nd time or create a higher assembly. I simply want to show Qty in my Parts List and a custom field called "Qty/Job" that doubles Qty. I can't figure out how to take the value of Qty and mulitply it by 2 using ILogic. I've also tried creating a custom IProperty for the parts set to "2", but it doesn't add up for each instance. Is there any way to do this without creating a higher assembly that uses the assembly twice?
you can override the BOM quantity using the following ilogic code
ThisBOM.OverrideQuantity( "Model Data", partNumber, quantity)
however i see no way to multiply the quantity by 2, the code needs a quantity value inserted
ThisBom.OverrideQuantity("Model Data", mypart, 99)
In your assembly, add a custom parameter "TOTAL_PCS", make it unitless
In each part, add a custom parameter "TOTAL_QTY_JOB", make it unitless
Now in your BOM in your idw, add a custom column "TOTAL_QTY_JOB"
Here is the code in the assembly that will make it work.
quantity = ThisBOM.CalculateQuantity("Model Data", 1234)*TOTAL_PCS
Parameter("jlw-511022-SPP01BR:1", "TOTAL_QTY_JOB") = quantity
quantity = ThisBOM.CalculateQuantity("Model Data", 8811)*TOTAL_PCS
Parameter("jlw-511022-SPP01Y:1", "TOTAL_QTY_JOB") = quantity
quantity = ThisBOM.CalculateQuantity("Model Data", "77-66")*TOTAL_PCS
Parameter("jlw-511022-SPP01BT:1", "TOTAL_QTY_JOB") = quantity