JP, others, After further investigation, I have worked out why the components with duplicated references were displaying incorrectly.
Patch_004 is attached, Thomas can you confirm that it fixes the display for you? Kind Regards, Oliver On Mon, Apr 17, 2017 at 7:53 AM, Oliver Walters < oliver.henry.walt...@gmail.com> wrote: > JP, > > Thanks for the feedback. > > In the component table, multi-unit symbols are "compressed" into a single > entry. Change a field value for one and it will change for all units of > that symbol. > > For "duplicate" references, perhaps the best approach is to only allow a > certain reference to be added once to the table? > > However this does not represent the true state of the schematic - > component count would be incorrect, for one. > > Any suggestions? > > On 17 Apr 2017 00:31, "jp charras" <jp.char...@wanadoo.fr> wrote: > > Le 16/04/2017 à 15:12, Oliver Walters a écrit : > > It's not KiCad that "knows" to exclude testing points, etc - my Python > BOM script has a series of > > regex filters that remove a whole swathe of virtual components. > > > > Sometimes you actually want test points to be in the BoM e.g. for > loading probe hooks onto the board. > > > > Eventually I want to add such filtering to this tool but I'd rather have > the first round merged > > first before the feature set becomes too complicated. > > > > Can someone with intimate knowledge provide some info on how components > in sheets that are > > referenced multiple times should be annotated in the BOM? I feel that > sending a BOM with duplicate > > references is wrong... > > > > See const wxString GetRef( const SCH_SHEET_PATH* sheet ) in sch_component.h > > The field F0 is not really the reference. It is the reference current > displayed on the screen. > It is the reference only for simple hierarchies, because there is only one > reference by symbol. > > Complex hierarchies (i.e. having more than one instance of a given sheet) > are always tricky to handle. > Especially, because the same component is shared by all instances, only > the reference is specific to > each instance. > By definition, all other fields are shared. > Therefore you cannot set for instance the value field (or the footprint > name field) of shared > components with different texts. > If a field is modified, it must be also modified in all rows linked to > this shared component in your > Component table viewer, which shows components as a flattened schematic > (like in a netlist). > (Perhaps all references of this shared component should be displayed in > the same row) > > Components with multiple unites by package are also a bit tricky to manage. > > Complex hierarchies having components with multiple unites by package are > *especially* tricky. > > -- > Jean-Pierre CHARRAS > > _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : kicad-developers@lists.launchpad.net > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp > > >
From f1f954cc80992bc095849a2ddc6cc3bffad4f417 Mon Sep 17 00:00:00 2001 From: Oliver Walters <oliver.henry.walt...@gmail.com> Date: Mon, 17 Apr 2017 12:08:21 +1000 Subject: [PATCH] Fixed display of references for duplicate sheets Display part reference rather than REFERENCE field value --- eeschema/bom_table_model.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eeschema/bom_table_model.cpp b/eeschema/bom_table_model.cpp index a43d749..5301e95 100644 --- a/eeschema/bom_table_model.cpp +++ b/eeschema/bom_table_model.cpp @@ -456,7 +456,7 @@ bool BOM_TABLE_COMPONENT::AddUnit( SCH_REFERENCE aUnit ) } break; case BOM_COL_ID_REFERENCE: - value = cmp->GetField( REFERENCE )->GetText(); + value = aUnit.GetRef(); break; case BOM_COL_ID_VALUE: value = cmp->GetField( VALUE )->GetText(); -- 2.7.4
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp