Allegro Editor ( 16.2) generates Bill of Material Report(Condensed). The report columns are SYM_NAME,COMP_DEVICE_TYPE,COMP_VALUE,COMP_TOL,COMP_CLASS, QUANTITY and REFDES.
This simplified report gives the quantities and used component REFDES in same line.
SYM_NAME COMP_DEVICE_TYPE COMP_VALUE .... REFDES
0402 CAP_SMD-GRM155R71C103KA88D-0402,10NF_50V,GRM155R71C103KA88D 10NF_50V ..... C3,C5.....
What I want to do is to genarate a report like this simplified one but with PART_NUMBER not COMP_DEVICE_TYPE. Because COMP_DEVICE_TYPE is always long and does inculde extra information other than PART_NUMBER, I wish to use only the PART_NUMBER intsead of COMP_DEVICE_TYPE.
I have checked every option and could not find a simplified report like this one. QUANTITY doesn't exist in generating reports. I want to see the quantity in one line only. So my report can be like this
SYM_NAME PART_NUMBER COMP_VALUE .... REFDES
0402 GRM155R71C103KA88D 10NF_50V ..... C3,C5.....
Thank you for your helps.
If you can use/learn SKILL, it is not too difficult at all. Go to the Allegro SKILL library in Cadence Online Support and check out rep_bom_ignore.il. You can use that program as a template to create your own custom reports. If you already know SKILL, it will be trivial.
In reply to EvanShultz:
Thanks for your suggestion.I have examined the skill code, which is so far for me right now. I have tried few of them and this skill code is worked but I want to ask if there is QUANTITY property in database? In condensed BOM there is a field QUANTITY and all the components go into one line. On other report generations there is no option for this. I wish I have defined my problem correctly. Anyway I am gonna work with this skill code and begin to learn skill as soon as possible.
Thank you for replying.
In reply to ahmetozsoy:
We are trying to figure out how to generate a condensed BOM with different fields and have run into the same problems and same questions. Were you able to figure out how to use Skill code to generate the report you wanted?
In reply to flash:
Not sure if Ahmet figured out an easy way to do this but one very easy way to add the PART_NUMBER field to the standard BOM is by making a slight tweak to BOM_REP.TXT then place it in the same folder as the Allegro database.
The Master file for BOM_REP.TXT can be found in ( %CDSROOT%\share\pcb\text\views ). Save a local copy and add the PART_NUMBER line to any line after the COMP_BOM_IGNORE line but do not remove any other lines because the report will not work. Once the modified BOM_REP.TXT file is in the same folder as the Allegro Database you can run the standard Bill of Materials Report (Condensed) and you should get what you are looking for.
Here is an example of a modification: (PART_NUMBER will be added as the first column in the report - the order of the columns are based on the line order in the file)
#COMPONENT#COMP_BOM_IGNORE = ''## Extract: package, refdes, device_type,# value, tolerance, comp_class#PART_NUMBERSYM_NAMECOMP_DEVICE_TYPECOMP_VALUECOMP_TOLCOMP_CLASSREFDES_SORTREFDES#
You could place the modified copy of this file in you library then modified the TEXTPATH Allegro Env Variable path to find it so you don't have to keep on copying it all over the place. Below is an example of an entry in your %HOME%/pcbenv/env file - it is VERY important to include the $TEXTPATH as the last entry in the setting. (C:/LIBRARY/EXTRACT_VIEWS is a made up path and can really be anywhere but making it a location in your library probably makes sense so everyone can use it.)
set TEXTPATH = C:/LIBRARY/EXTRACT_VIEWS $TEXTPATH
Hope this helps,Mike Catrambone
In reply to mcatramb91:
Hi Mike, Thank you for your response. You and I have met at several of the CDNLive! meetings over the years. I've always admired your depth of knowledge, and willingness to help other users.
We would like a Condensed BOM report with custom properties and order defined, but we haven't been able to figure out how to get the Quantity field into the report just as Ahmed's post stated.
We are able to create a custom BOM report (we can add, remove, change order etc.) for the properties of interest just as your example shows.
This is how we want to see the QUANTITY and REFDES fields our customized Condensed BOM. If you run the canned Condensed BOM this is how they are listed.
I opened, (and closed), a Case with Cadence Support. They directed me to the Skill Code Library, Skill Code documentation etc. They said the Condensed BOM is part of the basic code and not a simple .txt file like the bom_rep.txt or bom_rep_view.txt. (these both gave me the same results, I don't see any differences in them).
They said the Condensed BOM uses extracta commands in conjunction with Skill or Perl code and they are not supposed to help users write or debug Skill so we are trying to figure this out.
Any other information you can offer would be appreciated. I will post back when we have a solution.
Thanks for all the compliments, I really appreciate it.
I apologize, but I think I am missing something. If I run the Bill of Material Report (Condensed) from Tools > Reports or Tools > Quick Reports I do get a Quantity column. I can then add the PART_NUMBER line and it comes out in the report as well. If I move the REFDES_SORT and REFDES Lines to the top of the list in BOM_REP.TXT then the first column is Quantity and the second column is Ref Des. (See attached image)
Unfortunately, you will not be able to condense it any further because, as Support indicated, there is a behind the scenes script that is running to the format the output so all the fields are required for it to work, but you could add extra fields.
I think that it is the bom_rep.txt that needs to be changed, "hacking" bom_rep_view.txt seems to do little. The report file must retain the name of bom_rep.txt to get called as the "condensed bom extract control". The default configuration will find the local version and use that instead of the default installation version. If the default textpath of ".", current directory, has been removed from the User Preferences, one of the textpath locations will need to be used instead to get the txt file found. Looking at the menus, the "Reports" looks to invoke "reports" which is, in turn, coded internally, this must take the "BOM (Condensed)" report selection and wrap it into the (post) processing to get the "condensed" report version.
(Also changing the field order in the regular BOM report control file has no effect on the field positions in the report, so there looks to be "something" in the (post) processing of the "condensed" version that handles this)
In reply to oldmouldy:
Thanks oldmoudly - You are right! I specified the wrong file in my previous posts, it is bom_rep.txt that could be updated NOT bom_rep_view.txt. Sorry about that.
It looks like we will have to figure out post processing the custom file we generate outside of Cadence for now. Thanks for the feeback everyone.
If we can't figure it out, I'll get in touch with you. Thank you for offering to help us.
Sorry to dredge up this old post, but I was wondering if anyone since this original post has come up with a SKILL routine to create custom BOM's in the PCB Editor? I downloaded the rep_bom_ignore.il from the SKILL library in hopes of modifying that, but I can't even get that to load. I am hoping, like the original poster is to have a BOM report with just the following:
PART_NUMBER QUANTITY REF_DES(condensed)
Having it show up in the Quick Reports window would be an added bonus. That is where the rep_bom_ignore was supposed to show up, but I can't seem to make it work. Anybody have this working with 16.6?
In reply to chads108:
cond_bom.zipHere you go. This works the same as the rep_bom_ignore, axlReportRegister registers the report in Tools>Reports and Tools>Quick Reports when the SKILL routine is loaded at startup. This report is identified as "Forum Condensed BOM" in the reports list.
I tried this as sent and the report is now showing up in the Reports and Quick Reports menus, but I am getting an error message in the command line when I try to execute. Error message is:
E- *Error* alphalessp: argument #1 should be either a string or a symbol (type template = "SS") - nil
Any ideas on the cause?