Skip to main content
  • Subscribe by RSS
  • Ex Libris Knowledge Center

    GDC: Delete All Records in a Hierarchy

    • Article Type: General
    • Product: Voyager
    • Product Version: 9.0.0 and higher


    How to delete all records in the record hierarchy (bib, holdings, and items) using Global Data Change (GDC)?


    1. Create a record set containing the bibliographic or holdings records to be deleted (see "Note" below).
    2. In Rules tab, create a Data Change Rule Set with a Data Change Rule that uses a "generic" and "always true" Condition such as "MARC Control Field Exists" with Field set to "LDR"1.
    3. In Rules tab, add to the Data Change Rule created in step 2 a Record Disposition consequence of "Delete All".

      Example of "Delete All" Record Disposition Consequence:


    4. Add the Data Change Rule Set to a Data Change Rule Set Group.
    5. Pro Tip: Don't forget to use the Preview function and/or the "Do not update database" option to test before you delete!
    6. In Job Management tab, submit Data Change Job with Record Set from step 1 and Rule Set Group from step 4. 
    7. Review log and output files in View Running/Completed when job completes.

    If you provide the BIB ID the entire hierarchy will be deleted (Bib/MFHD/Item).  If you provide a MFHD ID, the MFHD/Item will be deleted but the BIB will remain.

    Additional Information

    Don't forget you can also use Suppress and Suppress All, instead of Delete and Delete All, if your goal is that the items do not appear in the OPAC.

    If there are related records such as circulation activity, purchase orders, fines/fees, etc., GDC does not delete the record and logs an error. Any blocks that prevent record deletion are logged.  As per the Release Notes for Voyager 9.0: "Records that can not be deleted will be automatically suppressed from OPAC display."  For more information See: Basic overview of catalog record batch deletion and suppression in Voyager

    1The use of an "always true" Condition such as "MARC Control Field Exists" with Field set to "LDR" is predicated on the fact that the record set is correct and contains only those records you want to delete.

    Support strongly recommends previewing all data changes before committing them to the database.

    See also:

    • Article last edited: 02-Oct-2020
    • Was this article helpful?