Script para el proceso de préstamos

From ABCD Wiki
Revision as of 13:00, 7 August 2014 by Guilda (talk | contribs) (Página creada con «La rutina para otorgar préstamos se realiza mediante el script '''usuarios_prestamos_presentar.php''' localizado en la carpeta '''central/circulation'''. El flujo que se s...»)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

La rutina para otorgar préstamos se realiza mediante el script usuarios_prestamos_presentar.php localizado en la carpeta central/circulation. El flujo que se sigue en el proceso es el siguiente:

  • A partir de los valores leídos en la página prestar.php se determina si se está trabajando con copias o sin copias. Para estos efectos, si desde la página viene la variable db_inven se asume que se está trabajando sin copias y por lo tanto hay que utilizar el archivo de configuración de la base de datos catalográfica para determinar el prefijo de acceso al número de inventario y el tag del campo donde están las existencias. Si se trabaja con copias ya estos valores están fijos por la configuración de ésta base de datos. Como resultado de eelste análisis obtendremos:
       $prefix_in      con el prefijo a utilizar para leer el número de inventario
       $from_copies    Y/N según se esté trabajando con copias o sin copias
  • include("ec_include.php");
Este procedimiento utiliza el código del usuario que viene de la página prestar.php para leer los préstamos pendientes y las sanciones y generar la variable $ec_output con la información del usuario y sus préstamos y sanciones. Si el usuario está sancionado ($sanctions_output!="") borra los números de inventario solicitados (unset($arrHttp["inventory"])) y ademas coloca $continuar="N" para indicar que no se van a procesar préstamos para el usuario.
Si el usuario tiene préstamos pendientes (count($prestamos)>) se agrega a la variable $ec_output el enlace que permitirá devolver o renovar los préstamos
  • Se obtiene el código, tipo y vigencia del usuario construyendo un formato con los valores que han sido previamente leídos al inicio del script desde el archivo de configuración. Se lee el usuario y si no regresa información entonces se asume que el usuario no existe y se suspende el proceso
  • Si el usuario existe y no tiene suspensiones se analiza la fecha de vigencia del usuario leida en el paso anterior. Si está vigene se continúa con el préstamo.
  • Si el usuario pasa todos los controles de validación se entra a procesar cada uno de los ejemplares solicitados ( foreach ($invent as $arrHttp["inventory"]){)
  • Se localiza el número de inventario ($res=LocalizarInventario($arrHttp["inventory"]);)
LocalizarInventario
Esta rutina determina si se está prestando desde loanobjects o desde el catálogo. Si se está prestando desde el catálogo se construye el formato a aplicar para extraer el inventario ($formato_ex) utilizando lo