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

    Does X-Server API call "renew-all" exist and/or work?

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

    Description:
    [Version 18] It appears that there is an undocumented X-Server call, "renew-all", that we would like to try out, but it's not clear to me whether it's truly functional or even exists in a stable state.

    In the GUI client, under Staff Privileges, there is an entry under the X-Services portion of Access rights that indicates there is an X-Server function that allows one to "Renew all loans for Patron." In the /exlibris/aleph/u18_1/alephe/www_x_eng area there are transform-mechanism files for an X-server function "renew-all" (renew-all.trn and renew-all.tag), indicating that the API call may be "renew-all". Furthermore, three years ago I inquired about this "renew-all" API call (SI#8192-19544), and was told to use the X?op=explain&func=<func_name> URL pattern to find out about this call since it wasn't documented in the PDF X-Services documentation. (The ticket's resolution wasn't very clear whether the call existed, however.) When I try this URL pattern out on our development server, I am not very successful:

    http://alephdev.lib.duke.edu/X?op=explain&func=renew-all

    This informs me that "No explanation exists for this subject," because of a missing HTML file (explain-renew-all). And indeed, when I look in the www_x_eng area for the documentation (/exlibris/aleph/a18_1/aleph/www_x_eng), there is no file for explain-renew-all (there is for explain-renew).

    When I try to call the "renew-all" function in a URL so that I can see if the function still exists and to find out what its parameters might be (X?op=renew-all), I get the following nodeset:

    <login>
    <session-id>{session-id}</session-id>
    <error>Missing op program</error>
    </login>

    This leads me to believe that the function may not exist anymore, if it ever existed.

    We would like to try this API call out if possible, as it can be slow to process a large number of loan-renewals individually for a patron. But at this point we're not sure how to even test this function.

    Resolution:
    It appears to me from examination of the code that a renew-all X-Service call was contemplated or even planned, but has never been implemented. The X-Services code does a check on the "op=" code to make sure it is a valid X-Service before it permits it to go forward. The code includes a "renew-all" function in this test. However, there is no other code anywhere that actually implements such a call.

    [From Al Rykhus: "There is a renew-all in the Restful API. If you are running version
    20 or newer, I would suggest looking at that. It is a lot nicer, cleaner interface. I just finished implementing it, overlaying the old X-services calls. Much better."

    [From Yoel Kortick:] You may be interested in the file "How to make a custom service run the X service for renew on a group of patrons.ppt".
    It is on the Documentation Center under:
    Aleph > Support > How To from Support by subject > Circulation


    • Article last edited: 10/8/2013