Community Tip - Need to share some code when posting a question or reply? Make sure to use the "Insert code sample" menu option. Learn more! X
Wondering if someone has a pointer for creating a Variant BOM hook for Cadence CIS/OrCAD files (.DSN)? I've found a little information spread throughout the forums and knowledge center. PTC has several very useful hook examples attached into CS131522, but the Cadence hooks linked there are only good for HDL, not OrCAD (the _ptcGenBomHDLVar.bat would be perfect otherwise). Looking into the Capture/CIS side of things, it seems one should be able to extract the Variant BOM using a customized tcl script fed into capture.exe (for example capGenerateBOM located under the custom scripting samples in an install of Cadence).
Hoping maybe someone has crossed this before, and could offer some advice and maybe a snippet of code . Trying to avoid making our users add the EXCEPT_ASSY parameter into each of the components since the BOM Manager inside OrCAD is much less error prone.
Thanks for you help! More than willing to help out the best I can with your ECAD data model in return.
/Max
We are currently installing our first copy of Capture/CIS and will get training in a couple weeks. We also use WC and will migrate to 10.2 version mid winter. I had some not so good experience with Mentor Graphic trying to get a BOM let alone a Variant BOM. I found that Variant part for the most part not functioning. The mechanism that was used was to read an EDIF file extraction.
I'm replying to this not so much to be of help but let you know I would also be interested in this too. Jim
Thanks Jim, I don't see anything comming through in the EDIF that relates to the Variant name...at least not by searching the text in the EDIF. I am guessing this is also why the OOTB WGM doesn't find variants...as it is also working with the default edif information. The 'EXCEPT_ASSY' parameter does work, but I can't seem to figure out the syntax for stating multiple variants into the same parameter...i.e. var1 and var2 for a specific component. Everything seems to be coming through as a new unique variant, instead of two seperate existing variants.
1. Max, Again I have only attempted with a totally different tool and was not successful. Below are some of my questions when I attempted. Please note I found a special folder in the workspace. I'm hoping some who has been successful with your tool might jump in and help you as I know I will have the same trouble when I get there.
*********************************************
If I persist (variant) with this can you or someone that does totally understand guide me through the steps?
Apply the "EXCEPT_ASSY" property to the design components in DxDesigner and attempt BOM generation again (explain this)
Alternately, use hooks for variant generation in combination with the Mentor automated variant manager (assuming it can generate each variant in *.csv format). The *.csv file should be in the format with each RefDes per line with no redundant lines with summaries or other prints. Look at the example design.csv generated by Creo View ECAD Adapters. Is there a tool to run to generate the variant.csv template (like design.csv)? Once I have the template like the single level BOM is there an adapter (batch file to extract what is need by WGM and Windchill?)
I did some more looking for the .csv file. Which I believe is part of the key to my problem not being able to generate a variant WT structure. As a follow up to that, knowing when and what generates the BOM .csv file. Just running “generate data” or does this happen when checking in?
I’m hopeful this information and your discussion with folks in Iseral will be helpful in getting me past this step. I’m pretty much open for time today and tomorrow if you have the opportunity to help. Would you want to get someone from tech support to learn with us?
**************************************************
another email
**************************************************
CSV in my workspace folder is similar to yours but doesn’t have the EXCEPT_ASSY column. Looks like there is another file location for a variant BOM .csv!
The .csv file I first used to generate a BOM only had a couple columns and was found and made more by accident. I only mapped 3 things;
Number to DEVICE, Name to Part Desc, Reference Designator to Reference Designator.
Jim,
I'm a bit confused on your post...I think most of it is old, and hence I won't try to give my .02 why your situation wasn't working here.
Regardless, I believe I have figured out my solution. I have a .tcl script almost ready to read out all the variant BOMs in a design (it currently is only publishing out the items in the variant subgroup, now i just need to expand it to grab the general group too). Then I plan to execute this script in variant bom hook from Windchill. From there the WWGM should grab the CSV file and ... viola... a driven variant bom. It will not rely on the EXCEPT_ASSY parameter, as I could not get it to handle adding that property to the objects properly.
I'll post up here once I think I have something that is working. Now I need to get on with my real job, lol.
Best Regards
After a loooong time, I finally have this finished and working. My implementation is 3 layers deep, but is now successfully extracting a CSV file for each Variant listed in an OrCAD CIS schematic design. This can be customized for a variety of things, and configured for your precise CSV/BOM needs.
In essence here is the workflow:
1) Variant BOM hook is launched
2) The part number for the variant being developed is found
3) A custom .TCL script is made by the hook for the variant identified above
4) Capture is called passing the custom TCL script above
5) Capture will launch briefly on the users screen while the information is extracted
6) The CSV for each variant is now completed and in the Hook output location for each design
I hope someone finds it useful. Many thanks to those who have helped along the way. It has been a fun experience learning the details of OrCAD TCL scripting, batch scripting, and the ECAD WGM sequencing. Feel free to ask for any help on this, as I am sure it may be confusing at first.
Best! Max