Company Parts List Export Altium Managed Components - Page 1
Forum section: electronics / general

author: TGPCB
author_rank: Newbie
timestamp: April 03, 2023, 09:42:47 am
content: We currently use a Database library (MS Access) for all of our components. Like most companies we use a company part number (Design ID) and this maps to a Manufacturer Part Number.For example we have a company part number of RES10K00040201001 and this maps to 4 different manufacturer part numbers. This allows us to export a spreadsheet of all out company part numbers (design IDs) and what MPNs can be used for each. This I believe is not uncommon, I have personally always done it this way as has my current company and previous. This saves updating BOMs every time you cannot get hold of a jellybean passive for example. Rather than updating a BOM every time you want to get boards built you just supply the assembly house with your approved parts list.We are about to migrate from a database library to Altium Managed Components but we are told there is no way to do this. You can have a company part number in the form of a Design ID and then add multiple parts choices per part but it appears there is no way to export this.Does anyone use Altium Managed Parts and has a way of exported all components with there part choices on a single report/document? I probably haven't explained myself very well but AFAIK it's very common to have a company parts list/approved parts list, this seems to be a missing function in Altium.

author: redkitedesign
author_rank: Regular Contributor
timestamp: April 03, 2023, 11:28:40 am
content: I'm familiar with this way of organizing part databases (internal partID used in Design, maps to one or more actual Manufacturer partnumbers that the assembly house (or department!) is allowed to use).However, in the two companies where I set this up, I kept the design database and actual Manufacturer part number database separated.The reason is that there are a lot of non-technical parameters attached to each part (price, quality of conflict material reporting, expected lifetime, country of production, number of hookers sent to the CFO, breast size of said hookers, etc) that are not relevant or even interesting for engineering, but matter a lot for the beancounters.And those parameters tend to change during the production run of a product.So I didn't need any Manufacturing Part numbers in Altium, and the beancounters held there own database-system, independent of out CAD tool. Which made switching between CAD tools a lot less hassle too.

author: Psi
author_rank: Super Contributor
timestamp: April 03, 2023, 11:49:06 am
content: Quote from: TGPCB on April 03, 2023, 09:42:47 amNot sure i quite follow what the issue is.You can simply add your own parameters to any component. AltPart1_CompanyName1 AltPart2_PartNumber etc.And then when you generate a BOM you can have a column for all those parameter.

author: TGPCB
author_rank: Newbie
timestamp: April 03, 2023, 06:44:34 pm
content: Quote from: Psi on April 03, 2023, 11:49:06 amThe issue is we don't want to issue a BOM every time we can't source a specific 1K resistor. Our BOMs remain the same with just a company part number and then our CEM uses our Approved Parts List to purchase the actual MPNs. Most large organisations I have been involved with seem to do it like this so it's not uncommon, I've just never been the person in charge of the database before.

author: ANTALIFE
author_rank: Frequent Contributor
timestamp: April 03, 2023, 11:26:04 pm
content: Why not specify the alts in the BOM? Like instead of just specifying Manufacturer & Manufacturer's Part Number, you also have:Manufacturer 2 & Manufacturer's Part Number 2Manufacturer 3 & Manufacturer's Part Number 3...

author: redkitedesign
author_rank: Regular Contributor
timestamp: April 04, 2023, 07:37:56 am
content: Quote from: ANTALIFE on April 03, 2023, 11:26:04 pmBecause for Product A, which is a Military/Defense type of product, no Japanese parts may be used.And for Product B, which is a telecoms type of product, all components need a verified 10yr lifetime expectancy.There are not enough parts in the world to satisfy both requirements, and have a decent choice of parts leftover. Especially not if Product C and Product D are also included.But manufacturing must get a shopping list with ONLY the allowed parts (for that product) on it.Just putting in Manufacturer A and Manufacturer B columns won't cut it.

author: Psi
author_rank: Super Contributor
timestamp: April 04, 2023, 10:19:05 am
content: You can have a separate document that you supply, alongside the BOM, which matches internal part numbers in the bom to a range of acceptable component part numbers. Then you only have 1 document to update if you want to add/change a new alt part.Afaik altium has no internal feature for this. So you'd have to create something in excel or something.

author: ANTALIFE
author_rank: Frequent Contributor
timestamp: April 04, 2023, 11:36:14 am
content: Quote from: redkitedesign on April 04, 2023, 07:37:56 amSounds like product A & B need to use a different company part number for that 10K RES, with each one stating the suitable alternatives 🙃And that shopping list sounds like a BOM provided in the PCBA datapack, which becomes a single source of truth for which components they can use. Seems kinda silly to try manage this with a spreadsheet that links to another, like why not just use Altium's database capability?

author: Psi
author_rank: Super Contributor
timestamp: April 04, 2023, 12:42:48 pm
content: If you do have a spreadsheet/table that matches internal part numbers to a list of external parts, then you can also haveinternal part numbers listed as alternatives to other internal part numbers. This allows 1-way cross-use.Eg 1% resistors internal part number can be given as an alt part for a 5% resistor while blocking the other direction.

author: Pseudobyte
author_rank: Frequent Contributor
timestamp: April 04, 2023, 06:58:42 pm
content: Yeah I would probably just build a macro into your excel BOM template. Export the BOM, click a button to run a macro that populates an empty column using whatever the existing source of Company PN -> Manufacturer PNs mappings.I do wonder why you are making the move to managed components.

author: TGPCB
author_rank: Newbie
timestamp: April 04, 2023, 07:48:14 pm
content: Quote from: Psi on April 04, 2023, 10:19:05 amThis is exactly what we do currently, we have a Access database which contains one table with internal part numbers and another with MPNs, we can then map the two together with a form and our alternative parts list. I'm probably doing a shit job of explaining myself as this is definitely not uncommon, every company who deals with a decent number or PCBAs that I've dealt with uses internal part numbers on their BOMs.https://www.siliconexpert.com/acl/The reason we can't update BOMs is because of our change control process as we produce medical products, our alternative parts process allows us to add a new part to our alternative parts list (providing it has the same parameters) with much less hassle. This is especially important the last year or so, without doing it like this we'd be redoing BOMs every build.We want to use Managed Components in Altium (Pro or Enterprise) as we want to get the benefit of the other features such as built in where used reports, supply chain information, revision control, custom workflows such as part creation and requests etc. The managed components feature gets us halfway there, you have a design ID and then use part choices to add specific MPNs. It just seems to be a missing feature not being able to export the complete list.An example of a segment of our APL:DesignID Manufacturer MPNCPN01 Texas Instruments INA180A2IDBVRCPN01 Texas Instruments INA180A2IDBVTCPN02 Texas Instruments INA181A3IDBVRCPN02 Texas Instruments INA181A3IDBVTCPN03 Texas Instruments HD3SS214IZXHRCPN03 Texas Instruments HD3SS214ZXHRCPN04 Texas Instruments CDCDB800RSLRCPN04 Texas Instruments CDCDB800RSLTCPN05 Texas Instruments TUSB8020BIPHPCPN05 Texas Instruments TUSB8020BIPHPRCPN05 Texas Instruments TUSB8020BPHPCPN05 Texas Instruments TUSB8020BPHPR

author: redkitedesign
author_rank: Regular Contributor
timestamp: April 05, 2023, 08:00:58 am
content: Quote from: ANTALIFE on April 04, 2023, 11:36:14 amThat would work from the beancounter perspective, but it sucks from a engineering perspective.Because every time a new non-technical requirement appears (e.g. RoHs, non-Russian, no conflict materials, RoHS without exceptions etc.) you need to create new company part numbers for all common components.And if that new requirement appears after the initial design, you need a redesign.Much easier to add a property to the MPN database, and see which parts are a problem when you run the CPN to MPN translation.(And then you still need engineering to find and vet replacement for all parts that do not satisfy the new requirement)But you are right, this is not a job for a spreadsheet. You need a proper database, with proper database logic. SAP can do it, any decent database programmer can do it but you don't want it in your CAD tool.

author: Pseudobyte
author_rank: Frequent Contributor
timestamp: April 05, 2023, 01:34:22 pm
content: Yeah unfortunately all of the intelligence that Altium baked into the part choices focuses on the relationship between a single MPN and the various Supplier PNs.You could always write the integration yourself with C# using Altium's SDK. You have to reach out to them and sign a usage/arbitration agreement but I have had alot of success automating and integrating the way we work here at my org. They get a bit touchy if you talk about PLM integration though.I always advocate for not using their managed components. I can do whatever I want with a postgresql database on the backend to make Altium see what I want it to. Then if you go the extra mile and write some GUI apps you can do everything Altium does and more. I recognize not every organization is equipped to take on the maintenance of a system like that. But, if you have the resources I would say go for it.

author: redkitedesign
author_rank: Regular Contributor
timestamp: April 05, 2023, 05:31:06 pm
content: Quote from: Pseudobyte on April 05, 2023, 01:34:22 pmExactly! And while you're at it, that GUI app can be just a simple CGI script. No need for flashy GUI's for an internal app with a captive audience.I've done that before, and after a few weeks worth to get it up and running, it costed me a few hours per month for maintanance.There are very few good PLM systems that can be had for that amount of investment.

author: TGPCB
author_rank: Newbie
timestamp: April 05, 2023, 06:56:51 pm
content: Cheers for all the input. We're getting a bit side tracked though, I never said our way of doing things is the right way it's just how it's done so need to make Altium work. I work for a large organization so cannot change the process any time soon.I was just seeing if it is possible to get Altium to spit out a list but it seems like it's not possible, we're not alone for wanting this though:https://bugcrunch.live.altium.com/#/bug/20809please upvote if you can.Ideally we would just update our process to suit the tool and not try the other way around.