Consulta a las bases de datos

 

ABCD-IA-OfficialVersion.pdf

ABCD-Site-GraphicInterface.4.0_en-OfficialVersion.pdf

ABCD-Site-Manual.4.0-OfficialVersion.pdf

Integrar en un solo ABCD-SITE la consulta de bases de datos provenientes de varias carpetas bases

ABCD permite tener varias carpetas de bases de datos para administrar diferentes instituciones o estructuras con una sola instalación del producto (ver: Carpetas con las bases de datos)

Bajo esta circunstancia es posible que queramos integrar en un solo site el acceso y búsqueda a las bases de datos distribuídas en varias carpetas “bases”. Si este fuera el caso tenemos que fijar los siguientes parámetros del archivo iah.def.php localizado en la carpeta htdocs/iah/scripts.

PATH_DATABASE
Indica el camino absoluto del directorio de base de datos en el servidor
Ej.:/ABCD/www/bases/
    
PATH_DEF
Indica la ruta absoluta del directorio que contiene los archivos de configuración 
de las bases de datos
Ej.: /ABCD/www/bases/par/

La carpeta /ABCD/www/bases/par/ contendrá los archivos DBN.def de todas las bases de datos que se van a integrar bajo el site. DBN puede corresponder con el nombre de la base de datos, pero también puede ser un nombre simbólico usado para vincular una base de datos en particular con sus recursos. En los parámetros al interior del DBN.def se hará mención al nombre verdadero de la base de datos identificada con ese nombre simbólico.

Ejemplo:

Supongamos que tenemos en una carpeta bases_1 la base de datos marc y en una carpeta bases_abcd/bases_2/ la base de datos biblo

Pasos a seguir:

  1. Seleccionar una de las carpetas como directorio raiz del Opac, digamos que es bases_1 hacer que los parámetros de configuración del iAH apunten a esa carpeta.
  2. En la carpeta bases_1/par colocar los archivos BIBLO.def y MARC.def y definir en ellos rutas absolutas hacia los recursos de las bases de datos
  3. En el site/admin configurar el acceso a las bases de datos biblo y marc

Si las bases de datos se llaman de la misma manera, supongamos que ambas se llaman marc, se deben usan nombres simbólicos para los archivos DBN.def, y asociar en el administrador a cada base de datos con el nombre simbólico del DBN.def correspondiente. Al interior de cada DBN.def se colocarán los nombres y rutas reales hacia las bases de datos

Ejemplo de BIBLO.def:

  [FILE_LOCATION]
   
  FILE DATABASE.*=/bases_abcd/bases_2/biblo/data/biblo.*
  FILE copies.*=/bases_abcd/bases_2/copies/data/copies.*
  FILE DATABASE.XML=/bases_abcd/bases_2/biblo/pfts/lilXML.pft
  FILE standard.pft=/bases_abcd/bases_2/biblo/pfts/%lang%/opac.pft
  FILE detailed.pft=/bases_abcd/bases_2biblo/pfts/%lang%/bbiblo.pft
  FILE loanobjects.*=/bases_abcd/bases_2/loanobjects/data/loanobjects.*
  FILE trans.*=/bases_abcd/bases_2/trans/data/trans.*
   
  [INDEX_DEFINITION]
   
  INDEX Tw=^1Palavras^2Palabras^3Words^4Mots^d*^xTW ^uTW_^yDATABASE^mTW_
  INDEX Ti=^1Palavras do título^2Palabras del título^3Title words^4Mots du titre^xTX   ^uTx_^yDATABASE^mTX_
  INDEX Tt=^1Título^2Título^3Title^4Titre^xTI ^uTI_^yDATABASE^mTI_
  INDEX Ab=^1Palavras do resumo^2Palabras del resumen^3Abstract words^4Résumé mots^xAB ^uAB_^yDATABASE^mAB_
  INDEX Au=^1Autor^2Autor^3Author^4Auteur^xAU ^uAU_^yDATABASE^mAU_
  INDEX Ai=^1Autor institucional^2Autor institucional^3Institutional author^4Institutionnel auteur^xAI ^uAI_^yDATABASE^mAI_
  INDEX Ma=^1Descritor de assunto^2Descriptor de asunto^3Subject descriptor^4Sujet descripteur^xMA ^uMA_^yDATABASE^mMA_
  INDEX Ma=^1Descritor geográfico^2Descriptor geográfico^3Subject geographic^4Sujet géographique^xDG ^uDG_^yDATABASE^mDG_
  INDEX Pa=^1País^2País^3Country^4Pays^xPA ^uPA_^yDATABASE^mPA_^tshort
   
  [APPLY_GIZMO]
   
  [FORMAT_NAME]
  FORMAT standard.pft=^1Longo^2Largo^3Large^4Grand
  FORMAT detailed.pft=^1Detalhado^2Detallado^3Detailed^4Détaillée
  FORMAT DEFAULT=standard.pft
  
  [HELP_FORM]
  HELP FORM=help_form.htm
  NOTE FORM F=note_form1.htm
  
  [PREFERENCES]
  AVAILABLE FORMS=F,A
  SEND RESULT BY EMAIL=OFF
  NAVIGATION BAR=ON
  DOCUMENTS PER PAGE=20
  FEATURES=XML

Nota ABCD, en su módulo de definición de bases de datos, provee un mecanismo para la edición de estos archivos


Publicar varios ABCD-Site bajo una misma instalación de ABCD

Para configurar varios sitios en la misma instalación de ABCD hay que tener en cuenta los siguientes archivos de configuración del iAH:

iah.def.php

Localizado en la carpeta htdocs/iah/scripts. Son importantes los siguientes parámetros:

PATH_DATA

Indica la ruta relativa a la raíz de la aplicación en el servidor Web donde se encuentran las páginas estáticas (IAH);

PATH_CGI-BIN

Indica la ruta absoluta del directorio de scripts de CGI

   Ej.: /ABCD/www/htdocs/iah/scripts/

PATH_DATABASE

Indica el camino absoluto del directorio de base de datos en el servidor

   Ej.:/ABCD/www/bases/

PATH_DEF

Indica la ruta absoluta del directorio que contiene los archivos de configuración de las bases de datos

   Ej.: /ABCD/www/bases/par/

Para mayor información ver: [1]

bvs-site-conf.php

Localizado en la carpeta htdocs/site/ contiene los parámetros de configuración de un sitio en particular. Merecen atención los siguientes:

DIRECTORY

Establece el directorio del site para ser accedido mediante HTTP.

   Ej.: DIRECTORY=/site/

SITE_PATH

Ruta completa a la carpeta donde está alojado el directorio del site.

   Ej.: SITE_PATH=/ABCD/www/htdocs/site/

DATABASE_PATH

Ruta completa al lugar donde están alojados los archivos del site en la carpeta de bases de datos

   Ej.: DATABASE_PATH=/bases/site/

DBN.def

Es un archivo de texto compuesto por seis secciones y localizado en la carpeta que indica el parámetro PATH_DEF del iah.def.php.

En estas secciones se define las rutas de acceso a la base de datos, índices, formatos de presentación y elementos requeridos por el interfaz iAH.

DBN puede corresponder con el nombre de la base de datos, pero también puede ser un nombre simbólico usado para vincular una base de datos en particular con sus recursos. En los parámetros al interior del DBN.def se hará mención al nombre verdadero de la base de datos identificada con ese nombre simbólico.

Basados en estos archivos de configuración vemos que para poseer varios sites bajo la misma instalación de ABCD, tenemos que replicar la carpeta htdocs/site/ tantas veces como instalaciones diferentes queramos tener. A fin de mantener la estructura propia de ABCD recomendamos tener una única carpeta htdocs/site/ y al interior de ella replicar su contenido en tantas carpetas como instalaciones vayamos a crear:

centro

Al interior de cada una de estas carpetas copiaremos los archivos contenidos en la carpeta htdocs/site/ original:
centro

Como ya se mencionó, archivo bvs-site-conf.php localizado en cada carpeta de un site, contiene los parámetros:

DIRECTORY para establecer el acceso via http al directorio base del site

SITE_PATH para establecer la ruta completa el directorio base del site

DATABASE_PATH para establecer la ruta completa al directorio de la carpeta de bases de datos donde se encuentran los archivos de configuración del site

En nuestro ejemplo el archivo bvs-site-conf.php del sitio facultad1 deberá especificar:

   DIRECTORY=/site/facultad1/
   SITE_PATH=/ABCD/www/htdocs/site/facultad1/

Entonces, para administrar el site facultad1 escribiremos en nuestro navegador:

   http://[HOST]/site/facultad1/admin/  

y para visualizar el site de la facultad1, escribiremos en nuestro navegador:

   http://[HOST]/site/facultad1/

Nota: La carpeta htdocs/site/bvs-mod contiene una sub-carpeta denominada FCKeditor que contiene el editor utilizado por ABCD para presentar los campos que ingresan como Area de HTML. La ruta relativa hacia esa carpeta se define en el archivo config.php mediante el parámetro $FCKEditorPath. Dado que esta carpeta es común a todos los “sites” pudiera permanecer en el carpeta original htdocs/site/bvs-mod y crear en las las carpetas de los diferentes ABCD-Site un Enlace simbólico hacia la carpeta bvs-mod evitando de esta forma replicar ésta en los diferentes sites

Acceso a las bases de datos

ABCD-SITE viene configurado, en su versión original, para acceder a las bases de datos contenidas en una única carpeta bases. Para estos efectos existen los parámetros PATH_DATABASE y PATH_DEF en el iah-def.php. El parámetro PATH_DATABASE está designado a sustituir la porcion %path_database% que conseguimos en los archivos DBN.def para así construir la ruta absoluta hacia los diferentes recursos de las bases de datos. El parámetro PATH_DEF se utiliza para localizar los archivos DBN.def definidos para cada base de datos.

Como el iah.def.php tiene el parámetro

  PATH_DEF=/ABCD/www/bases/par/ 

corresponde colocar en esa carpeta los archivos DBN.def de las bases de datos mencionadas en la configuración de cada site independiente. Por lo tanto si mantenemos en el DBN.def la referencia a los recursos de la base de datos a través del parámetro %path_database%las líneas del DBN.def que estén de la siguiente forma:

  FILE DATABASE.*=%path_database%biblo/data/biblo.*  

se convertirán a : FILE DATABASE.=/ABCD/www/bases/biblo/data/biblo. ya que el segmento %path_database% de todas las líneas del DBN.def apuntará a la carpeta /ABCD/www/bases/. Esto significa que si tenemos múltiples carpetas bases la opción es colocar rutas absolutas hacia los recursos de la base de datos, ejemplo,

  FILE DATABASE.*=/bases/facultad1/biblo/data/biblo.*.

Recuerde que DBN.def define un nombre simbólico para relacionar un conjunto de recursos con las páginas de iAH y no es necesariamente el nombre de la base de datos. Por lo tanto si en nuestras carpetas bases tenemos tenemos una base de datos denominada biblo en cada una, en lugar de tener el BIBLO.def podemos tener FACULTAD1.def para referenciar los recursos de ese site en particular.