"""Return MARCXML string of record revision specified by RECID and JOB_DATE.
"""
returnrun_sql("""SELECT marcxml FROM hstRECORD
WHERE id_bibrec=%s AND job_date=%s""",
(recid,job_date))
defget_record_revisions(recid):
"""Return dates for all known revisions of record RECID."""
returnrun_sql("""SELECT id_bibrec,
DATE_FORMAT(job_date, '%%Y%%m%%d%%H%%i%%s')
FROM hstRECORD WHERE id_bibrec=%s
ORDER BY job_date DESC"""%recid)
defget_record_last_modification_date(recid):
"""Return last modification date, as timetuple, of record RECID."""
returnrun_sql('SELECT modification_date FROM bibrec WHERE id=%s'%
recid)[0][0].timetuple()
defreserve_record_id():
"""Reserve a new record ID in the bibrec table."""
returnrun_sql("""INSERT INTO bibrec (creation_date, modification_date)
VALUES (NOW(), NOW())""")
defget_related_hp_changesets(recId):
"""
A function returning the changesets saved in the Holding Pen, related
to the given record.
"""
returnrun_sql("""SELECT changeset_id, changeset_date FROM bibHOLDINGPEN WHERE id_bibrec='%(identifier)s' ORDER BY changeset_date"""%{"identifier":recId})
defget_hp_update_xml(changeId):
returnrun_sql("""SELECT changeset_xml, id_bibrec from bibHOLDINGPEN where changeset_id=%s""",(str(changeId),))[0]
defdelete_hp_change(changeId):
returnrun_sql("""delete from bibHOLDINGPEN where changeset_id=%i"""%(changeId,))