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

    Stripping parenthetical info from z13 and z68 ISBN

    • Article Type: General
    • Product: Aleph
    • Product Version: 18.01

    Description:
    We're working on creating a z13 for use in collection development.

    We have output the ISBN to the z13, using ISBN-ISSN in tab22, but the question has been raised: is there any way to strip parenthetical information from the ISBN?

    I can't find a way to do it with the tab_expand_join(s) which I have used to create virtual fields for use with tab22.

    So, is there another way to create a virtual field that would be able to output just the numerical portion of the ISBN for use in a user-defined field?

    ...and a related question .... is there any way to have the z68 either populated with an ISBN without the parenthetical information or _searchable_ without the parenthetical information. Right now, if you key in an ISBN in the Order bar, you get "view a list", unless you use the parenthetical information, which is highly unlikely for an inputter!)

    So, two questions relating to parenthetical information in the ISBN -- one relating to z13; one relating to z68.

    Resolution:
    *Z68*:

    The pc_acq_c0501 program calls ./acq/get_isbn_issn to get the isbn for populating the z68_isbn field. get_isbn_issn reads the bib record directly. It does not use the z13_isbn_issn field. There is no real way to affect get_isbn_issn's processing.

    But v18 rep_change 1720 addresses this issue. Its main purpose is to correct a problem with 13-digit ISBN's:

    Description: Generic Vendor Records Loader (file-96) - When loading records with two ISBN fields that contained the same ISBN (one being the 13-digit ISBN and the other being the 10-digit ISBN), the Z68-ISBN field was not populated. This has been corrected [get_isbn_issn.cbl] so that now Z68-ISBN is populated with the 13-digit ISBN in this case.

    But a side-effect -- since it now calls the filing_isbn routine -- is to generate a z68_isbn value with just the number (no parenthetical info).

    That will take care of future cases. To change existing z68_isbn's you could do the following SQL:

    SQL> update z68 set z68_isbn = substr (z68_isbn,1,13) where substr (z68_isbn,14,2) = ' (';
    SQL> update z68 set z68_isbn = substr (z68_isbn,1,10) where substr (z68_isbn,11,2) = ' (';
    SQL> commit;

    Note: you should back up the z68 table, using p_file_03, before running the preceding SQL.

    *Z13*:

    I can't think how to prevent the parenthetical data from being written to the z13.

    The following SQL could be used "after-the-fact" to generate a user-defined field without it:

    SQL> update z13 set Z13_USER_DEFINED_n = substr (z13_isbn_issn,1,13) where substr (z13_isbn_issn,14,2) = ' (' and Z13_USER_DEFINED_n is null and z13_isbn_issn is not null;

    SQL> update z13 set Z13_USER_DEFINED_n = substr (z13_isbn_issn,1,10) where substr (z13_isbn_issn,11,2) = ' (' and Z13_USER_DEFINED_n is null and z13_isbn_issn is not null;

    SQL> commit;

    Note: you should back up the z13 table, using p_file_03, before running the preceding SQL.


    • Article last edited: 10/8/2013