Skip to main content
  • Subscribe by RSS
  • ExLibris Dev

    How to bulk delete holdings (mfhd) and corresponding bibliographic records?

    • Article Type: Q&A
    • Product: Voyager
    • Product Version: 8.0.0
    • Relevant for Installation Type: Total Care; Dedicated-Direct; Direct; Local


    Batch delete mfhds and corresponding bibliographic records via BulkImport


    Parameters in Voyager Bulkimport program (Pbulkimport) will delete mfhds/holdings records and the corresponding bib records. Requirements to use these parameters:

    • Interleaved file of bibs and mfhds.
    • Bulk Import with interleaved file and -r parameter (delete holdings) and -x (delete bibs).
    • MFHDs cannot be associated with Items or Purchase Orders (POs).

    Additional Information

    Voyager Technical User's Guide for more information on BulkImport and MarcExport

    1. Use MarcExport (Pmarcexport) to create an interleaved file of bib and mfhds
      1. Use -rG parameter (bib/mfhd group record type parameter).
      2. export mode (-m parameter) can be a file of bibliographic ids,  bib_id range, bibs marked as OK to export or other parameters.
      3. resulting file of bibs and mfhds will be in /m1/voyager/xxxdb/rpt & named marc.exp.yyyymmdd.hhmm.
    2. Create Bibliographic Duplicate Detection Profile and Bulk Import Rule.
      1. System Administration > Cataloging > Bibliographic Duplicate Detection Profile
        1. Duplicate handling = Replace
        2. Field Definitions tab: match on index BBID (bib id).
      2. System Administration > Cataloging > Bulk Import Rules
        1. Select Bib Dupe Profile from step 2.a.
        2. Expected Character Set = MARC21 UTF-8 
        3. Load Bib/Auth only
    3. Import file from step 1.c. using BulkImport (Pbulkimport) with -r parameter (delete mfhds) and -x (delete bibs), and Bulk Import Rule from step 2.b.

    IMPORTANT: See Step 4 before executing this step.
    Pbulkimport -f/m1/voyager/xxxdb/rpt/marc.exp.yyyymmdd.hhmm -i<import_code> -r -x

    1. Ex Libris highly recommends testing 1 record first to make sure that it works before doing the entire file. To do so

    Pbulkimport -f/m1/voyager/xxxdb/rpt/marc.exp.yyyymmdd.hhmm -i<import_code> -b1 -e4 -r -x


    1. use the -b and -e parameters in Bulk Import for begin and end record. For example, to test the first 4 records in file
    2. Check import log which will be created in /m1/voyager/xxxdb/rpt with name log.imp.yyyymmdd.hhmm. This will tell you the bib and mfhd that were deleted.
    3. If deletion successful, return to step 2 and execute deletion of full file.


    There are equivalent options in WebAdmin for the command line options described above:

    • MarcExport / Pmarcexport = "Bulk Export MARC Records"
    • -rG = Record Type: Bib-Mfhd Groups
    • BulkImport = "Bulk Import MARC Records"
    • -r parameter = "Delete holdings records matched in import file?"
    • -x parameter = "Delete bib records matched in import file?"
    • -b parameter = "Begin Record"
    • -e parameter = "End Record

    Additional Information

    See GDC: Delete All Records in a Hierarchy for steps to using GDC for this process in 9.0.0 and higher.


    • Article last edited: 14-Feb-2017
    // feedback widged