What software or system do companies use to manage the BOM of products ? - Page 1
Forum section: electronics / general

author: Analog
author_rank: Contributor
timestamp: October 31, 2022, 09:08:10 pm
content: If I generate a BOM of specific part numbers and then the board house changes the component manufacture, I don’t have a good way to push this data back into the design. Plus allowing a BOM to be modified from two points in the cycle means there is a chance a BOM and design file get out of sync.I’ve been manually making the changes in the project but have to be very careful to not make a change that could bite be later. In a perfect world the .PCB file would be locked to prevent a change by mistake.Between CMs wanting to run their inventory, certain countries wanting to run their domestic brands, and the great parts shortage I’m spending too much effort on this.

author: krish2487
author_rank: Frequent Contributor
timestamp: October 31, 2022, 10:11:33 pm
content: Why would you even allow the CM to change a design you made ?The normal way would be to provide 1/2/3 alternate parts for a given BOM part no.Either you source it and send it to your CM or let them source it themselves.At no point, is it a normal occurrence that the CM changes a BOM part no and you are stuck with syncing it in your design..It is always the other way around.. ECO's originate from the design end.. not the manufacturing / assembly end..They can suggest a change resulting in an ECO.. not change the parts and ask you to generate a ECO..

author: Analog
author_rank: Contributor
timestamp: November 01, 2022, 02:34:52 am
content: In the past I've had CMs recommend I use some of their PNs. They have very large stock at very good prices and there would be little chance I could match it. Most times it is just Rs and Cs or version of a connector. That still leaves me with changes I'd want to make in my records to add the part. I'd probably make that my preferred part if it had been successfully run in volume. I could add their PN to an alternative list (or new PN) in my database but would need somehow select it in the schematic design to be able to generate a correct BOM. The goal being able capture the exact design to make future design revisions easier by starting with a manufactured design.

author: Pseudobyte
author_rank: Frequent Contributor
timestamp: November 02, 2022, 02:27:09 pm
content: If you are using a database library in Altium, you can add the alternate part number to the component in the database. Then you can update all the parts in a design from the database in a few mouse clicks. Incorporate the update from database as a standard part of your output process and you have now closed the loop.If you track PCB revision separate from PCBA revision (which you should) you can rev the assembly to update your BOM.

author: nctnico
author_rank: Super Contributor
timestamp: November 02, 2022, 04:53:22 pm
content: For generic stuff like resistors and capacitors, I only specify value and tolerance. It is up to the assembler to pick whatever they have in their stock. There is no need to specify specific part numbers.For parts that have specific requirements, you do have the specify a part number but such parts aren't easely replaced by other parts in general.

author: free_electron
author_rank: Super Contributor
timestamp: November 02, 2022, 05:31:13 pm
content: do not store such things in the design. you will forever and a day be busy recreating the output files....that's why you use an ERP and PLM system.Your design calls out 1k 0805 1% 25ppm aecq. called 1072458-0 and that's it.actual parts may change for whatever reason (price , availability with vendors , current in house stock, banned parts (quality issues) )Your design does not change. You have given the design specification for the part. The rest is not in your camp.That is linked to a part 1072458-0 in your plm system.In the plm system are attached manufacturers and manufacturer part numbers. NO VENDORS ! . only approved manufacturers and manufacturer part numbers.the PLM system creates the production BOM. that bom goes to the assembler. they will take that in and send it through the ERP system to check their internal stock , poll suppliers as to what they can get. that is their playground.you do not want to control any of this at design level. you need a 1k 0805 1% 25ppm part and you have designed your circuit to those specifications. the rest is up to other people.

author: Analog
author_rank: Contributor
timestamp: November 02, 2022, 09:39:32 pm
content: Yes, I think I need a simple PLM system. I also wish there was a simple project management type of tool that could capture all the documents and details so that I could rely less on manual processes. It's overwhelming to keep track of the things.

author: free_electron
author_rank: Super Contributor
timestamp: November 02, 2022, 11:50:59 pm
content: for every component you create a unique number. then in a simple relational database you create the cross references between that and manufacturer part numbersyou can use a free octopart account to push your boms and get crossreferenced parts.

author: nctnico
author_rank: Super Contributor
timestamp: November 03, 2022, 01:05:26 am
content: Quote from: free_electron on November 02, 2022, 11:50:59 pmUnless you really want to limit yourself to a selection of certified / approved parts, you don't have to go that far and just leave it up to the assembler. Unless you are dealing with complete idiots, they won't use parts that fail prematurely since they will be responsible for choosing those parts.

author: Analog
author_rank: Contributor
timestamp: November 03, 2022, 02:37:46 pm
content: The concept of having a system that can also be used to manage other components (and maybe data files) in the project is appealing.Defining the place in the workflow where CAD stops and another system takes over is something I need to figure out. I've been trying to manage too much in CAD.As for the substitutions, CMs always ask me to approve the BOM simply because they need to shift liability incase there's a problem.

author: nctnico
author_rank: Super Contributor
timestamp: November 03, 2022, 02:50:23 pm
content: Quote from: Analog on November 03, 2022, 02:37:46 pmThe typical workflow is what free_electron is describing. In the CAD package you have a component that is identified by a part number in a database. The actual information about the component (symbol, footprint, value, description) is in the database. When the database changes, the CAD needs to run an update cycle to make sure all part information is correct. What muddles the water is that you can typically mess up the information by placing non-database parts or alter values/footprint in the schematic. The latter is a big no.I'm don't know how Altium needs to be configured precisely to make it work with a database correctly; so far my limited experience makes me feel the Altium implementation is a bit messy and less solid compared to Orcad.

author: free_electron
author_rank: Super Contributor
timestamp: November 03, 2022, 03:42:24 pm
content: altium is simple.if you need to interface with a real PLM system (arena, windchill , teamcenter and a few others) get an enterprise server, shove all your footprints, symbols , designs , templates, outjobs and whatnot in there.It keeps track of what is used where , what is out of date, is version control ( no need to muck with git or svn) and enforces the workflows ( you can set the flowcharts )It 's a dream to work with. engineers can focus on doing engineering, librarians focus on building parts and layouters focus on layout. when all that is done : launch the managed outjob , the draftsman pdf file, gerber, odb and other output ends up in the right buckets in the PLM system and all parts are known.Most "throw it over the wall" systems are problematic cause the other sides doesn't see it coming. Enterprise server can also pull. You have visibility on what the other side does. what parts have been attached, pricing information and other business information that lives in the PLM system is realtime visible in Altium, but it does NOT affect your design data.This thing is different. The "design" is the whole of the cad data, the plm data , the mechanical data ( it can talk directly to creo, nx , solidworks). cross domain data is visible to all parties but lives in its own containers. Alterations to outside data update the"design" but not your container. you do not need to update your output because an outside dataset altered. it is all linked through the "internal part numbers"the server is headless, in the sense you install it ,it is self contained , can run on real hardware, a vm or on aws or azure. management is through altium designer. backup is also easy. you split the server in a boot and a data volume. all you have to do is make a copy of the data volume. The database is a self contained firebird file, all your libraries are a directory structure with one symbol or one footprint per file and your designs sit in a GIT repository on the datadrive.All you need is a disc clone for backup. if the thing goes down : spin up a new vm, install the server and tell it where the data drive is. you need a beefy server cause it does a lot of management and talking to the other services in your company. it will floor a Xeon Gold if it is indexing the database. Give it lots of ram so the database can be shadowed in ram and use nVME storage for lots of io operations.It is very snappy. search is near instantaneous , even with 300+ usersIf you can't do that your next best option is a dblib. MySQL or even a simple access database. you don;t interact with the database as Altium designer has a table browser built in you can edit the file there.Drop your footprints and symbols and dblib on a shared folder. librarians have write permission to symbol/footprint folder.use git or svn for project storage.it is more crude but it works.if you use an autonumber field as index and yuo store the internal part number as a regular field your BOM can spit out the cross reference as a csv file. set up the outjob to zip the files and drop stuff in a specific folder. design release is then a matter of sending out two zip files (one for board fabrication, one for assembly ) and a csv file containing the bom.

author: Fire Doger
author_rank: Regular Contributor
timestamp: November 05, 2022, 01:34:40 am
content: Using ERPs has a lot of benefits.In my company we are both the designer, and assembler.By using ERP designers don't care from where the purchase department will buy the parts.If purchase dep. has issues finding what they previous bought asks the designers for an alternative (preferably with same physical dimensions).Also they inform the designers where this part is being used so they can choose something that is compatible with all designs that use it.Assembly department don't care from where the parts purchased.The personnel who loads the pnp machines will view the list of ERPs, search on system were each reel is stored, pick it up, load them on the machine and press play...Every library on pnp is based on ERPs.The only "issue" that may occur is if you are using an AOI, when a part changes there is higher chance that you will need to update the library because recognition is more tightly connected to part looking. (pin 1 mark, polarity, text recognition, etc...)It's very easy to place a reel in different position, and if the parts swapped are identical (like resistors) you will end with very f*ed up boards if you don't detect it soon. That's why in AOI is very important to use OCR.So this is the only downside with ERPs, each time a common part changes we have to update the AOI libraries.