AutoCAD Inventor :: Using ILogic To Drive IAssembly Table
Nov 13, 2013
I have created two iParts, both with corresponding tables which I then put into an iAssembly so I can change the size of a pad eye and two cheek plates depending upon the desired Working Load Limit. I have a very basic form right now with a drop down menu to chose the different Safe Working Loads but whichever one I choose, is not changing the table configuration to the desired size. Clearly my iLogic code is not working the way I would like. See below and also see attached screen shots so you know what I am working with.
This code was actually overwriting the table properties (in excel), so I know this is wrong, I just couldn't find any snippet for changing a table configuration .
I have created two table rows in an iAssembly that I would like to have a iLogic code written for.
What do I need to use to trigger between these two, when, for instance, a certain numeric value is entered in the parameters? Within the assembly file, when I use the iPart.ChangeRow (or iAssembly.ChangeRow) and put the . I am filename in the first spot, it says it cannot find the file.
This is what I am using, and the error states it cannot find the . i am file I am referencing.
In a simple case I have an extrusion with some attached seals/weather stripping, all implemented as iParts having their own LENGTH parameters.
RailPart.ipt, Seal_A.ipt, Seal_B.ipt
The goal is to encapsulate these IParts within an iAssembly: RailAssy.iam, where a LENGTH parameter can be input when the iAssembly is placed, causing RailPart and Seal_A to have their length parameters set to the LENGTH provided at that time and SEAL_B having Length set by an iLogic rule to LENGTH - 5.
I've been unable to set up a Custom Parameter Column in an iAssembly table. Is this even permitted?
I am creating an iAssembly with iParts. Some of the iParts have the "Table Replace" colum option and some do not. Both iParts have tables with members and part numbers. See pic.
Is there any way to insert a generic table into an assembly file. I don't want to create an iAssembly or use the data to configure the component in any way. I would just like to be able to maintain some design related information within the assembly file, similar to the tables that you can create in an idw. A table just like the iAssembly table would be fine, minus the iAssembly part or any sense of configuration.
I am trying to come up with an automatic method to add a new row to my i assembly table and populate that row based on values entered by the user (assuming that combination of values doesn't already exist... ). Basically, I wish to build my i assembly table on demand over long term by user input via a form that calls an ilogic rule.
Issue between an i-assembly and i-Logic. So, I have an assembly that includes some extra components that are not always needed and therefore an i-Logic rule takes the decision whether these will be suppressed or not.
Of course this is not a problem however it turns out that I miss some info from BOM according to the suppressed parts ...and all these makes sense following the LOD etc.
A potential solution to keep up to date the BOM while you are excluding the needless components is to create an i-Assembly.
To keep that simple I turned my current Assembly to an i-Assembly and very successfully I excluded various components and of course I included some others by adding extra ROWS.
So far So good
Now I want to apply some dimensional boundaries by using i-Logic rules. According to them I want to allow this i-assembly to jump among these different ROWS that meet the right criteria.
Very rough thoughts led me to the following code...
For example...
If Width > 600 Then iPart.ChangeROW ("..." , "...") 'Row-1' Else iPart.ChangeROW ("..." , "...") 'Row-2' End if
The Problem is that the above code works fine, for a example, in case that I will place an i-part in my assembly... However I am looking to change the row of the actual assembly that as I mentioned before I turned it to an i-assembly
To make this even more clear I want to be able to manipulate my i-assembly with i-Logic rules while this is open in Inv. I don't want to change rows while this is placed as a component or sub-assembly in an another assembly...
what the best way to show 2 different subassemblies based on the same iAssembly... I would expect a "custom" option as there is from the content center. If I try and change the table for one, the other instance gets updated, and I would like it to stay the same. I understand that this would require a new "branch" in the BOM holding the different sized parts, but there must be a way to accommodate this?
How to edit the member name in an iassembly table using code? The Part Number and Description iproperties are easy to handle. But I am stuck on how to access the member name and edit it. I guessed at some methods, but keep getting errors.
In the column Description from a I-assembly table I will place the text Test<200. Than I get a error message "Detected potentially damaging errors in the table. Unable to interpret cel: " ". It goes wrong with this symbol <. How do i get this symbol normal as a text in this column?
I have an iassembly which contains around 500 different members. There aren't any major differences between the members other than parts being Included/Excluded and parts being replaced by similar parts (this can all be done in the table as the parts are all created as one ipart family).
I need an assembly drawing for every member. As the drawings will be very similar, it is possible to just create one drawings then use 'Save as' and 'replace model reference' to create the whole lot. As this process would be very tedious and time consuming, I want to create a ilogic program or a VB macro to automate this process.
Basically i need a program that will...
FOR every line in the table (say 1 to 500)...
look at the currently active drawing...
replace model reference (for 2 views and a parts list) with the appropriate member (whos file name will match it's Part Number)...
save as with a file name that matches the current rows Part Number...
I'm using iLogic to make simple parts. I don't want to make duplicate sizes. When a new size is created I add it's values into a spreadsheet. This is not at table driven part. I've also created some fancy excel searches to find sizes close to the current part. Ideally I want to display this close list in Inventor via a form or popup message. My thinking is we might find a size very close to our current need and not need to create a new size.
Originally this was a table driven part. We had to change it and make the parts individuals.
I tried Curtis Waguespack's iLogic: Export Parts List with Options, and it works great on Part Lists. I'd like to do the same thing on a custom table, but I don't know what needs to be changed.
I have a simple iPart, with driven parameters Length and Width. When length changes (from a multi-value list), the spacing on a pattern and the number of occurrences of that pattern also change.
Invariably, it requires a rebuild. Occasionally, it requires two rebuilds. As this part is in a second-level subassembly, opening the part, rebuilding it, then rebuilding its assembly, then rebuilding the top-level is consumptive.
I've been using iLogic and iParts for about a week now, so I might be missing something basic. File attached.
a customer has a title block with a revision table ( standard vault revision table) add on top of it.
If you change the sheet size the revision table remains his position.
If found the way to reposition the table with a ilogic rule.:
'point afstand in cm PointX=(ActiveSheet.Width/10)-13 PointY=5.5 'punt vanaf rechtonder gemeten in cm
[Code]....
This is working perfectly. But now the challange how to trigger this rule to run if you change the sheet size?
if tried:
trigger=Activesheet.size
or
to create a userparameter and added this line in my rule : Size=ActiveSheet.size, normaly is you change parameters it triggers the rule to rule. but both way didn't work.
Can event triggers from the API be used? Do i need the "Onchange" event? Any example for a ilogic rule?
I have a rule in the .idw drawing template, that displays a dialog box asking for the size (A, B, C, D...). Once the size is selected, it displays the appropriate border and title block. There is a small & large title block, so an A or B size gets the small, and a C or larger gets the large. This works great.
My question is, how can I have the appropriately sized Revision Table (small or large), automatically ready for use, based on the drawing size? The (2) Revision Tables are defined in the Styles library.
Product Design Suite Ultimate 2014 | Vault Basic 2014 (SP1) Dell Precision M6600 | Intel i7-2820QM - 16GB nVIDIA Quadro 4000M | Windows 7/64 Pro
In my iAssembly, I have placed a weld. In one of the members, I am suppressing the weld. When I change to that member, I get an error "Weld No Spine: could not compute Weld: Possible intersection failure". Inventor complains a little, but it does not show that Red Cross after the member is selected.
Why do I see that even though the weld is suppressed for that member?
If I put iParts into an assembly, and then convert this assembly to an iAssembly, I can include "Table Replace [My_iPart]" as a column in the parameter table. As the value of this column I can select the individual rows of the given iPart parameter table.
However, I can not make this column be a "Custom Parameter Column". (In fact it seems to me that in an iAssembly I can not make any other types of columns to be "Custom Parameter Columns" either). Also, if a parameter of the iPart is a "custom parameter", I can not carry over this "customness" into the iAuthor parameter table.
This means that I need to insert table rows by hand, one-by-one, which is quite cumbersome. Imagine you have an iAssembly containing only two iParts, each having N rows. This means N^2 rows in the iAssembly, all of which I need to specify by hand. Plus I can not use the "customness" of a parameter of an iPart within the assembly.
In an iAssembly containing an iPart, I would like to
- have a "Custom Parameter Column" in the iAssembly parameter table, which can select rows from the iPart parameter table (selectable values would automatically be all the rows from the correcponding iPart)
- if my iPart has a custom parameter, I would like to have this custom parameter available as a separate custom-value column in the iAssembly
Is it possible somehow? Or is it conceptually wrong?
I have several iterations of an assembly. Specifically I have a base of a machine with different tooling for different products.
I generated the BOM by referencing the specific tooling I am trying to detail. That worked. But when I balloon, it references the main assembly. It won't let me redirect the source file to the tooling asm.
I was wondering if I'm able to create two tables in an iassembly, like one table for size and another for different components in the same assembly.I have a vague memory of an old assembly having this but I can't find it or it's just a figure of my imagination.
I am using Inventor Professional 2012 and I have created complex iparts and iassemblies and I am not able to change the BOM structure of the parts simply because they are intelligent. I require the tables and features that the iparts and iassemblies can create but they are coming up read only and can not modify the BOM information. Is there a way to change the read only aspect of an ipart or iassembly?
What I am looking for is a command similar to table replace, but that will allow for a new part to be created based on a user input. This will need to be done at the i Assembly level to an i Part that is placed within the assembly.
The end goal is to have input boxes come up, ask the user for the values then create all of the associated parts.
I don't need anything with the input boxes, just the part creation.
How we can access the part parameters after hitting create iAssembly. do I need to make i parts first and then bring them to an assembly and make an iAssembly??
I have an i Assembly, with a Sub-i Assembly and i Parts. Is it possible to "extract" a copy of one configuration as normal assembly? So that I have an assembly where I can modify parts without touching the iAssembly or iParts.
I am looking for a way to change the parameters of a part that is within an iAssembly. Basically we have tubing with flanges on the end and wish to have an easy way to model varying lengths. I essentially need to be able to have the upper level iAssembly control the flange spacing and cut the tube to length based on the users selection. Due to BOM setup these parts must be seperate .ipt in a larger .iam
I need use Include / Exclude some components in a Pattern which include an iAssembly. But looks like this option is not available (maybe I missed something)?
I use Inventor 2009, XP32 OS.
Autodesk Inventor Professional 2013 (64 Bit) SP2 Windows 7 Professional Service Pack 1 Intel(R) Xeon(R) CPU E5645 12.0 GB Memory