You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Back in the day when our contract with our former ILS vendor limited us to < 500K titles it became necessary to put several non-circulating titles into a separate MySQL db named Louisa.

Louisa has 2 db tables:

mysql> describe titles;
+------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+----------------+
| mrc | mediumtext | YES | | NULL | |
| tcn | varchar(20) | YES | | NULL | |
| ckey | int(11) | YES | | NULL | |
| createDate | date | YES | | NULL | |
| titleID | int(11) | NO | PRI | NULL | auto_increment |
+------------+-------------+------+-----+---------+----------------+

mysql> describe items;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| cnA | varchar(100) | YES | | NULL | |
| cnD | varchar(50) | YES | | NULL | |
| cnType | varchar(10) | YES | | NULL | |
| collection | varchar(15) | YES | | NULL | |
| barcode | varchar(15) | YES | | NULL | |
| hLocation | varchar(20) | YES | | NULL | |
| cLocation | varchar(10) | YES | | NULL | |
| itemType | varchar(10) | YES | | NULL | |
| titleID | int(11) | YES | | NULL | |
| ckey | int(11) | YES | | NULL | |
| createDate | date | YES | | NULL | |
| itemID | int(11) | NO | PRI | NULL | auto_increment |
+------------+--------------+------+-----+---------+----------------+
12 rows in set (0.01 sec)

After these titles and items are in FOLIO their MARCs will need to be re-written with FOLIO 999s and added to the records db table so before loading them into FOLIO they should be added to the folio:marcRecords MySQL table (see Parse) from whence bibLoad.pl should be able to do what needs to be done. So, the trick is going to be to write an /opt/folio/parse/Louisa2folio.pl script to get that job done. Note that Louisa's MARCs do not have 999s - since that is the case, rather than copying data from Louisa:items to folio:itemData it would probably be better to have bibLoad.pl look at Louisa:items where it would other wise parse the 999.

So, all that Louisa2folio needs to do is map three fields from Louisa:titles to folio:marcRecords:

Louisa:titlesfolio:marcRecords
mrcmarc
ckeycatalogKey
createDate (yyyy-mm-dd)catalogedDate (yyyymmdd)

I'm adding a field to Louisa:titles to indicate that the data has been copied to folio:marcRecords : Louisa:titles.copied (Y or NULL)

Once those 240,??? Louisa titles are loaded into the marcRecords table then I can see about tweaking the bibLoad.pl script to load them into FOLIO...

  • No labels