At 12:40 PM 1/30/2002 +1100, Ian Wilson wrote:
>>So there is no way to restore all the links properly, I suspect the 
>>programmer thought. Except that if two primitives are identical, it 
>>really doesn't matter much which one of them gets updated with which 
>>copy. Given this understanding, it should be possible to reconnect a 
>>spreadsheet and schematic.
>I could make massive changes, wholesale changes, inside the spreadsheet, 
>including, I suspect, but have not tried, library reference 
>changes.  Certainly I can change the coordinates of a component, its 
>designator etc etc.  So without the unique handle how do you deal with the 
>mess?  If you have all the possible info exported then I guess it would 
>not matter, in fact you could simply delete all the components and add new 
>ones containing all the required attributes.  But what happens when I 
>export only a subset of component attributes, but then go and make 
>wholesale changes to that subset?  I would not support a solution that 
>*only* worked if you export all attributes of all components.  It make it 
>needlessly hard to find/change the data you want and manipulation macros 
>can (in some cases) become more complex.

Yes, it is necessary to be able to identify the original primitive when 
making changes through spreadsheet. My comment was regarding two 
*originally* identical primitives. Same location, same everything. 
Essentially, preserving the *was* information in the spreadsheet would 
accomplish this. To make changes one might add change fields to the 
spreadsheet, the exact scheme would take some thought.

>>So if an Update is attempted and the links are missing, Protel should 
>>recreate them, just as it can create links between Schematic and PCB.
>But it does this via designators (on the first pass of the Synch).  I may 
>have made big changes to the designators in my spreadsheet and so now what 
>are you going to map on?  I would *not* support any change that relied on 
>designators as an identifier.

Well, having the facility to create the links based on designator would be 
useful. That way one could use the spreadsheet to manipulate all other 
aspects. The other way to recreate links would be through physical 
location. In other words, if one had a spreadsheet where designators had 
been changed, one could still restore links through physical location. This 
would be *very* useful to recover schematic-PCB correspondence where 
someone had reannotated the schematic.

I once had a client do that, with a Tango Schematic, after editing it with 
many changes for a very complex PCB. I had the original schematic files, 
fortunately, so I was able to establish the physical location of each part 
-- from the ASCII file -- and I used that to recover the original reference 
designators. New parts that could not be clearly identified were given ? 
designators. Because Tango supported WAS-IS reannotation files, it was 
relatively easy to take this data back into the schematic database.

>And anyway the ASCII format data can be imported into Excel - using '|' as 
>a separator.  So we have this - it is just called Save-As rather than export.

Yes, we can do it now. However, this must be done with closed and exported 
files, which must then be reimported, and the process is cumbersome.

First of all, Schematic ASCII is not, unlike PCB, self-documenting. It's 
moderately easy to read, but it is not readily separated into records nd 
fields, rather records are hierarchical. On the PCB side, however, the 
database has labelled records and is field-delimited with "|".

To work with a PCB ASCII file and bring it back in, here is what I do:

Save As PCB ASCII file. Good idea to rename it at the same time, this will 
mean that you will be working with a copy, assuming that all previous work 
has been saved. (You can also use Save Copy As, which will leave your 
original file open, probably not what you would want).

Export the file (rt.-click, Export). I open Excel 97 and use File/Open 
(Files of type, all files) to open the file. Excel pops up an Import 
Wizard. It already recognises the file as delimited. Next. 
Delimiters/Other:|. (enter the pipe symbol, often displayed as a broken 
vertical line). Next. Finish.

I'm now looking at the raw ASCII database for a PCB file, organised into 
records and fields. It is pretty much self-explanatory. There is a lot of 
overhead stuff at the beginning, such as layer name setups, printer 
options, etc. Beyond that are the substantial PCB records. I edit them, 
being careful to keep all the field names (for example, a selection field 
will either be SELECTION=TRUE or SELECTION=FALSE, SELECTION is the field name).

When I'm done, I save the file as a Tab-delimited text file (File/Save 
automatically pops up the Save As dialog since this is an imported file). 
Then I load this file into Word and substitute "|" for all tabs. The file 
may then be saved and imported back into the Protel .ddb. To open it with 
PCB, I will probably need to rt.-click on it and change its file type 
(rt.-click on file name, Properties, Type: PCB Document.)

I'd be very careful about checking an ASCII-edited file thoroughly before 
allowing the old unedited version to pass from memory. Any slip-up in 
manipulating the text, there is no telling what would happen.

Abdulrahman Lomax
Easthampton, Massachusetts USA

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* To post a message: mailto:[EMAIL PROTECTED]
* To leave this list visit:
* Contact the list manager:
* Forum Guidelines Rules:
* Browse or Search previous postings:
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Reply via email to