I have noticed that in other places Excel likes to open a blank window before it opens the file you selected. For example if you browse to a location in Windows Explorer and double click on an Excel spreadsheet it will probably open two windows, one of them blank and the other the spreadsheet.
In Round 3 on the saga PDF you say you close the design table. Did you save before you closed? -- Just trying it on my machine shows you don't have to save in order for it to updated the table.
Yes, always save.
Thanks for having a look at this issue!
My limited look at this today, I can't get it to mess up. Sorry I can't provide any better answers.
Do not be too concerned with the ghost workbook as it started appearing several releases ago (I cannot remember what my VAR told me was the reason for this).
Many times when a design table fails to add configurations, a small dialog will appear in the upper right hand corner of the graphics window (many times it disappears before you can read it).
I looked at your pdf but it is hard to see what is in cells A3 to A6; this may be the reason for your problems.
If possible, please upload you model with a couple of manually created configurations in it so I can test if I can create a design table.
Thanks for your interest!
I would attach the file but I cannot find an upload button....
Click "Use advanced editor"
I'll take one more shot at it... Richard Doyle is there any way that the forum administration can disable the "not advanced" editor? I cannot see any possible advantage to ever using the default editor, and it stinks having to always tell people to hit that link. Also it stinks having to hit that link myself.
First paragraph is mindless babel. You can skip it if you want.
Such a fun model. Just poking around I found that there are around 3455 display states (uncheck link display states to configurations to see them). At first I thought this could be the issue but SW hung when I tried to delete them all at the same time. So I gave up on that knowing that with display states unlinked, no more would be created. That failed. Next I thought maybe the model was corrupt so I copied your sketches, named them and the features as you have them. Failed again. Another thought based on Kevin Chandler's suggestion, I only copied a few columns. Success; finally getting somewhere....
Okay so here is what I found.
Design table fails on two columns.
1 - $LIBRARY:MATERIAL@DOWEL PIN TEST 4 Everything looks right but when is not inlcuded DT works along with item 2
2 - Almost 360 rows are set to zero. Below is the error message SW generates. Need to put non zero values in them.
After I deleted these two columns, design table worked (even with display states linked).
I do not have any fix for the material issue. My workaround is since all the configurations were the same material. Set the four configurations you already have to alloy steel and leave that column out. All the new configurations will be alloy steel. Maybe after all the configurations are created you can add that column back in?
I hope your results are the same.
As Solid Air mentions, add default values to any 0 values, as it is suppressed it wont matter too much. You will also want to delete any blank columns and add '.sldprt' to the end of '$LIBRARY:MATERIAL@DOWEL PIN TEST 4'.
I have attached the modified table, I've only tested the first 20 or so configurations but it appears to work.
In my test the blank columns did not cause any issues. Although the weight column will generate an error similar to the zero value but does not stop the configurations from being created.
EDIT: I also tested adding and not adding .sldprt to $LIBRARY:MATERIAL@DOWEL PIN TEST 4; did not make a difference on a small table.
Could it be that some of your named dimensions have spaces in their names instead of an underscore?
Could things get wiggy just over this?
Help shows an underscope in the design table naming conventions page and underscores are also used in the design table tutorial.
but then all edits disappear upon re-opening,
This has bitten me a few times. If there is slightest error in the DT, then the model will not update, and then when you reopen the DT unless model edits updating the DT are blocked you can lose everything! - I always save a copy of my DT out from excel (for anything non-trivial) so to have at least a backup.
To see what the error is, you generally have to resort to using a screen recorder, it takes superhero power to be able to read it
Thanks everyone for looking at this problem. I am going to spend most of today trying out the ideas presented.
I'm sure there is a way but really, SW needs to make this otherwise powerful tool less problematic to use...
No success. Conclusions:
1. de-link configurations and display states, otherwise SW will create a new display state for each and every config ever created;
2. Design Tables can apparently only partially drive the model (contrary to my assumption that they could completely drive). Dimensions, text and suppression states are easily defined and revised, per configuration, no problem. But MATERIAL, COLOR, and DISPLAY STATE simply cannot be defined, per config, from the Design Table. We have tried every permutation of text, syntax, format, etc, and nothing works. And I am simply not going to manually define MATERIAL, COLOR, and DISPLAY STATE for 691 configs.
Design Tables have huge potential, but until SW cleans up the user interface, and every parameter can be clearly and reliably defined and driven from the table, I must design without them.
You certainly are limiting yourself to some degree by not using design tables. COLOR should work without issue (unless you have color applied to faces). I do not know why material failed in your table; it certainly worked on a small number of configurations. I have not played with display states and configurations (other than you need them for changing color of each configuration) Again, I had no trouble creating your table with link to configurations turned on (probably ended up with around 4000 of them).
If I get some time this weekend I will try creating your part in SW2017. Where I work, we never went to SW2015 because we heard it was buggy (but I have talked to users at other companies that had no issues with it).
This is a follow up to my last post about trying to create your part using SW2017. I did not find any advantage so I went back to using SW2015.
Hopefully, just because of the amount of time I have spent experimenting with your model and design table, and after you read this post, you try one more time to use design tables.
I have to agree with your earlier statement, the number of configurations you are trying to create at one time bogs SolidWorks down to the point where it becomes unresponsive. However, I found workarounds that speed up the process so it is tolerable (just follow my steps).
I also apoligize for the length of this post (sometimes I go into too much detail) and hope you will not fall asleep before getting to the end.
If you have any questions or concerns, you know where to find me.
1 - My first recommendation is you split up your pin models into type (MIL profile and TWO CHAMFER profile) and by material (Alloy Steel, AISI 304, etc.). Start with the same base model to make you new models. That way the internal IDs of faces and surfaces will be the same so if you need to replace a MIL profile pin with a TWO CHAMFER profile pin, the mates in your assembly will not blow up.
2 - The model you uploaded can be used as your "start part". First thing I would do is delete the approximate 3455 unused display states in the model.
a - This is easily done by going to the Configuration tab, right clicking on the display state at the bottom and selecting 'Properties...' from the menu.
b - In the property manger, uncheck 'Link display states to configurations', then select the green check.
c - Right click on a display state again and select 'Purge Redundant' from the menu. This will delete all but 20.
d - Highlight all but the active display state, right click and select 'Delete Display State' then select 'Yes to All' in the Confirm Delete dialog.
e - Hide MIL PROFILE SKETCH and TWO CHAMFER SKETCH. If you do not do it now, you will need to hide them in each configuration manually later (unless you want these sketches visible).
f - You can now turn 'Link display states to configurations' back on by following steps a & b and checking the box.
g - Since the material in the design table parameters workbook you uploaded was alloy steel, make configuration 'another config' active which has material also set to Alloy Steel (I will explain why later).
h - Save the part. Then SaveAs to create a new part so you have a model to start with in case something goes wrong during this procedure.
3 - Create a design table in your part using the 4 existing configurations. One way to do this is done by selecting Insert, Tables, Design Tables...' from the SolidWorks menu. My recommendations on what parameters to select are shown below. Select the green check when done.
4 - Click in the graphics window outside the design table to close it.
5 - Go to the configuration tab, expand the tables folder, then right click on 'Edit Table in New Window' (this is my preferred way to work on design tables).
6 - Highlight the cells shown below, right click and select 'Clear Contents'.
7 - Open your Dowel Pin Design Table Parameters workbook then copy and paste cells A2 to Q691 into the design table (make sure cell A2 is still named family).
8 - Delete columns for $PRP@WEIGHT and $PRP@MATERIAL. Not because they are empty but because they conflict with the system properties populated in the active configuration (remember SolidWorks uses the active configuration to make the configurations added by the design table). This slows down the configuration
creation process because SolidWorks sees the parameter but then ignores what you have entered in the table.
SolidWorks does not like it when system properties are already populated into the Value/Text Expression field and you try to change it with a design table.
9 - I also recommend deleting the $DESCRIPTION column if you are not going to enter any data into it because it also adds unnecessary overhead to the creation process; just let SolidWorks fill it in with the defualt values.
10 - Replace the zero values found in column 'R@MIL PROFILE SKETCH' with a value equal to or greater than 0.000004; this is one of the reasons your table failed before.
11 - Add a blank column between parameter 'B@MIL PROFILE SKETCH' and '$LIBRARY:MATERIAL@DOWEL PIN TEST 4'. This removes setting material in the model. The overhead it takes to do this along with the number of configurations you are trying to create just bog down the process. You can always add this column back in so it is evaluated later (lets just focus on getting the configurations created right now).
12 - Move the '$COLOR' column to the column right of the '$LIBRARY:MATERIAL@DOWEL PIN TEST 4' column. After you do this make sure this is not a blank column between the '$PARTNUMBER' and '$PRP@DESCRIPTION' columns otherwise SolidWorks will not evaluate the columns to the right of the blank one.
Sidebar - Setting color also adds unnecessary overhead with the number of configurations you are trying to create. I also think it conflicts with the material setting because it too trys to set a color. This parameter can also be added back in later.
13 - Okay you should be all set to go. Cross your finders for luck and close the design table. On my computer it took about 6 seconds before the 'The design table generated the following configurations:' dialog appeared. Select 'No' to close it (unless you want to see all 689 configurations it created).
14 - Select 'OK' in the Delete Configurations dialog.
15 - Make one of your new configs active then scroll to the end of the list and manually delete 'another config'.
16 - Now come decision time. If material for all parts are going to be the same, I recommend deleting the '$LIBRARY:MATERIAL@DOWEL PIN TEST 4' column in the design table. If material will be different then delete the blank column to the left of it to add it back in the design table.
17 - Same for color, if color will be different for different configurations, then add it back into the design table. If you are adding both material and color back in, I recommend adding material first them add color after.
As I said before adding a material also adds color and the two parameters may conflict due to the number of configurations be evaluated.
Thank you for your work on this.
Per your (1), my objective is to create a single DOWEL PIN part file where any dowel pin from several (commercial and MIL) sources can be obtained. This allows selecting the desired pin DIA x LENGTH from any of several VENDORs, and also allows switching all the pins used in an assembly from one source to another (from MIL to McMaster Carr, for example). Very desirable capabilities. Multiple files would dilute these advantages. So multiple materials and geometries need to be accomodated in a single file.
Per (2), yes, the display states should be unchecked, otherwise SW will create thousands of them, as I discovered.
Per (2e), I have learned to SUPPRESS sketches when their corresponding features are suppressed, otherwise problems seem to arise when going from on config to another.
Per (8), yes, the $PRP@WEIGHT and $PRP@MATERIAL should be removed from the DT - because they are derived values. SW should not include them in DT's.
Per (9), still need to have a $DESCRIPTION unless the CONFIG name can be used. In the present case we want the CONFIG name to recite only the DIA x LENGTH x VENDOR for lookup purposes, wheras $PART NUMBER, $DESCRIPTION, $VENDOR, $MFGR display in the drawing BOM.
Per (10), yes, we did that.
Per (11), have not tried that, but meantime I have found that defining material in the "MODIFY CONFIGURATIONS" table is the ONLY way that reliably works (use copy/paste to change multiple rows). Per (16), we will have multiple materials, and the "$LIBRARY:" thing just does not work, and the "MODIFY CONFIGURATIONS" table does work.
Per (12) and (17), COLOR is something I would like to control (because certain MS dowel pins have a special finish which i would like to identify visually), but apparently MATERIAL controls color and I have not figured out how to override and define (per config). I hope I can figure out how to define COLOR without resorting to DISPLAY STATES to do it.
Sooner or later I will get this file to work at least almost to my satisfaction, and when I do I will attach it.
To use color you are going to need to link display states to configurations. If you create thousands you create thousands just do not have all those unused ones in your model (I explained how to purge them before you start). Also your color values are not correct. 255255255 is an invalid color number for white (or any color). The correct value is 16777215 ( red (255) + green (255) * 256 + blue (255) * 256^2). This may account for some of your color issues.
For sketches I stated hide not suppress. The only time you need to suppress sketches is when you suppress features that they are dependent on (but SW should automatically suppress them anyway). If you could supply an example, I may be able to help you with that.
I had no issues changing material in the design table, so I do not know what the issue is there. Again could just be the number of configurations you are initial adding. I started changing material after I created the configurations.
I have no problem with using the $DESCRIPTION property, just do not leave it blank in all your configurations.
Finally, while it is up to you whether you create one model with thousands of configurations in it, but from my (17 year) experience the disadvantages far out weigh the advantages of trying to use one model. Just maintaining the design table will be a big job. You will need to allow only users with a thorough understanding of how design tables work to make additions and changes otherwise there is a high probability it will become unusable at some point (just look at the issues you already had) and if you are not using a PDM system or making nightly backups of changed files, you may find you have to start all over.
After much effort, I finally have a SW multi-configuration component, driven by a design table, that at least partially works. I have attached it. Observations:
1. The Excel-SolidWorks interface is seriously flawed and unreliable, and is probably the source of many of these complex DT functionality issues. DT's have super potential but will continue to be avoided by most users until SW/Dassault corrects these issues - with durable high-level code solutions, not bandaids and/or work-arounds. The problems are not going to be fixed in these forums.
2. Some DT fuctions such as suppression state (S, U) and $PRP seem to work OK every time. Others such as $COLOR and $LIBRARY:MATERIAL are extremely problematic. Put the COLOR and MATERIAL data into the DT, and it is either ignored or erased. Sometimes. OK on some configurations but not on others. Or today everything works, and tomorrow not. Inconsistent and unreliable performance at present. Also, the order of the colums seems to matter (as Solid Air pointed out in his item 12 above). I believe that a database (rather than spreadsheet) is the best app in which to do a DT.
3. Always format numbers (all quantities used to drive geometry) as NUMBERS, not GENERAL. I found that the DT was actually rounding-off my original numbers, so for example a dowel pin that was supposed to exhibit a diameter of .4376 was coming out as .4380 ! Outrageous ! There should not be ANY potential in a DT for overwriting of original input data !
4. I do not understand why SW puts certain columns into the DT such as $PRP@MATERIAL and $PRP@WEIGHT - the component material is supposed to be defined by $LIBRARY:MATERIAL, and component weight is driven by the component volume X material density. It seems to me that nothing that is not user-defined should have a column in the DT.
Anyway, I hope fellow users can get some benefit from the attachment.