Hi Migell, As per your script '$phys_format' is a subfield (line 146), which is nothing but text. The function 'as_string()' can be used only for field objects, not subfields. So, your line 153 should read:
if($phys_format =~ /Paperback/i ){ # Ignore the case sensitivity using 'i' switch Hope this helps. Regards, Saiful On Tue, Apr 15, 2008 at 6:39 AM, Migell Acosta <[EMAIL PROTECTED]> wrote: > Hello all, > > I am working on a script that will take a MARC record from Baker and > Taylor's Title Source and pre-process it so that I can use it in SirsiDynix > Symphony 9XX loader - which takes MARC records and converts them into bib > records (of course) and Purchase Order records. > > Mostly my script takes individual subfields in the 949 and re-combines > them in several ways so that I get the codes I need. However, I also want > to take information in the 951 and do some logic on it, like "if the > physical format is 'Paperback' then assign a vendor ID of 1234." > > So, I need to do pattern matching, I think from the docs I'm supposed to > do it like this: if($phys_format->as_string() =~ /Paperback/ ). I think I > need the "as_string" in order to do regular expressions, yes? > > However, what I get back from the interpreter is "Can't locate object > method 'as_string' via package Paperback (perhaps you forgot to load > Paperback)?" > > The error is on line 153 of the attached script. I've also attached the > MARC record I've been testing. > > Can anyone help out a newb? Thanks so much. > > Migell Acosta > County of Los Angeles Public Library > [EMAIL PROTECTED] > 562-940-8553 > -- Saiful Amin +91 9343826438 "I think we can find excuses in life or we can find inspirations. I've always tried to find inspirations." - Andre Agassi