Skip to main content


  • Subscribe by RSS
  • Ex Libris Knowledge Center

    Batch procedure for checking-in items


    • Product: Aleph
    • Product Version: 20, 21, 22, 23
    • Relevant for Installation Type: Dedicated-Direct, Direct, Local, Total Care



    Is there an Aleph Service or utility for checking-in items in batch?


    There is no Aleph Service to batch return / check-in items on loan.

    There are two possibilities:  

    1.  Create an offcirc.dat file, in the offline-circulation format, and input it as described in the article  How to upload offline circulation transactions to server  .   The offcirc.dat format looks like this:

            01  TRANS-LINE.
              02 TRANS-DATE                 PICTURE 9(8).
              02 TRANS-TIME                 PICTURE 9(4).
              02 TRANS-LOAN-FLAG            PICTURE X(1).
              02 TRANS-ITEM                 PICTURE X(80).
              02 TRANS-BOR                  PICTURE X(255).

    A return / check-in record would look like this:


    The "R" stands for "Return"; bbbbbbbbbbbbbb is the item barcode; and, for a return, the TRANS-BOR is blank.

    2. Use SQL to delete the z36 loan records for these items.   Note that when this SQL-deletion of the z36 (loan) records occurs none of the following records are written (as they would be in the case of a GUI check-in):

    * z36h (loan history)
    * z35  (circ event for return)
    * z309 (circ logger return)

    The z35 and z309 return records are fairly extraneous since z35 and z309 records have already been written for the loan of the item.
    The z36h record is written only upon return of the item.  As noted in the article  "The z36h displays the loan history for a particular patron or item in GUI."  You should consider how important this is for these items.

    SQL for deleting z36 loan records for a particular patron:

    SQL> delete from z36 where z36_id = 'nnnnnnnnn' and z36_loan_date <= 'yyyymmdd' and z36_loan_date >= 'yyyymmdd';

    SQL for deleting z36 loan records for a particular sublibrary:

    SQL> delete from z36 where z36_sub_library = 'nnnnnnnnn' and z36_loan_date <= 'yyyymmdd' and z36_loan_date >= 'yyyymmdd';

    SQL for deleting z36 loan records for a particular Z30-DEPOSITORY-ID:

    SQL> delete from z36 where z36_rec_key in (select z30_rec_key from z30 where z30_depository_id = 'XXXXX') and z36_loan_date <= 'yyyymmdd' and z36_loan_date >= 'yyyymmdd';

    Note:  the " and z36_loan_date <= 'yyyymmdd' and z36_loan_date >= 'yyyymmdd' " may be omitted if not relevant or useful.
    Also, if this option is used, be sure to back up the z36 table, using the file-03 Service, before doing such SQL.



    • Article last edited: 31-May-2018