Hawker said:
Sounds like you must work more in a lab environment than a product
environment. Since all parts need to be approved by purchasing and have
purchasable part numbers as well as alt parts we don't use generic
parts. So a CAD library is 0603_X7R_10V_.01uF not 0603_cap. Also each
ties to a PCB library. So the schematic library is mated to an IPC7351
and 782 (if I got those numbers correct) footprint. If I want to change
footprints I need to change the schematic and ECO back. If I didn't do
it this way I would make an even bigger mess for purchasing. So I need
to make a cad library for each part I use and that library ties be to a
specific part and package size. Also I could care less about lab stock
issues. It is stocking production parts, and pick and place feeders that
is the issue. Takes time and money to swap that roll of 0603 10k parts
out to 0805 10k on the pick an place machine to build a different board.
Well, Cadsoft Eagle is quite smart in that domain: You click on, say, a
resistor, transistor, whatever. Something that comes in various
packages. Provided you created the library correctly that'll give you a
drop-down menu just like Windows Explorer does, with that little plus
sign. Click that and you'll get the package versions. If you discover
after placement that you could get away with a larger version you can
use a routine "change" -> "package". Then it replaces the original part
with a smaller part that has a different ID. This change will also be
reflected when you run the BOM.
Unfortunately Eagle does not yet allow additional part fields. This will
come with the next release, after some petitioning by us industry guys.
So currently it is difficult to do the linking to the partmaster
database. But it is possible via special BOM routines. In Eagle you can
write your own user language program to create, say, a "Hawker-BOM". In
it you can specify how it will merge with part numbers from the
partmaster. The next release should make things easier, then all you
need is the actual partmaster number in a third part field. Since I work
for several clients at a time it would have to be a cross reference
number in my case, or I just create one dedicated set of libraries for
each client.