On Fri, Mar 04, 2011 at 10:00:02PM +0100, Repke de Vries wrote:
> Apologies Dan for the long gap discussing this - and thanks for your fix 
> (part of the 2.0.2 release) that makes the Global Flag "Cat: Use internal ID 
> for TCN value"  when set to TRUE, have the same effect for command line 
> importing bib records as it already had  for importing through the GUI. 
> 
> However:  also the other Global Flag "Maintain 001-003-035 according MARC"  
> when set to TRUE,  behaves differently when importing bib records from the 
> command line then through the GUI:
> 
> - through the GUI  the Control Number in the imported bib record's 001 field 
> gets pushed to the 035 as expected and the 001 receives the Evergreen 
> Internal Record ID etc.; and because of the Global Flag "Cat: Use Internal ID 
> for TCN Value" the TCN follows this Internal Record ID 
> - importing from the command line the Global Flag setting is ignored however 
> and the Control Number in the imported bib record's 001 field becomes the new 
> Evergreen Record ID;  the TCN also ignores it's Global Flag Setting -  this 
> latter behaviour has been fixed now (as I understand it)

I think there's a misunderstanding here. The --idfield parameter says
"Set the internal record ID to the value of (whatever field --idfield
points to)" - which describes the behaviour you're seeing, I think.

If you want to disregard the existing 001 value in the records that
you're importing, and just use whatever Evergreen gives you, you can
import your records as follows:

marc2bre.pl input.mrc | pg_loader.pl -or bre -a bre

If you're importing from MARC21XML, you'll need to add the "--marctype
XML" flag to marc2bre.pl, but you have that part sorted out already.
Just drop the --idfield (and --idsubfield) flags entirely if you don't
care about them. The part to focus on is the "-a bre" flag from
pg_loader.pl; it says "let the database assign a value for this object".
So pg_loader.pl doesn't assign any value to the "id" column of
biblio.record_entry, in this case; the column isn't specified in the
COPY command and the database automatically assigns the next value in
its sequence for the biblio.record_entry.id column. And that, in turn,
will ensure that the 001 gets populated with that record ID and the old
001 gets pushed to the 035, etc.

I think that's what you're looking for?

Reply via email to