Migración a MARC de bases Isis utilizando mx y procs

A continuación se enuncia un procedimiento para migrar bases Isis al formato Catalis/MARC21 según la estructura descripta en http://inmabb.criba.edu.ar/catalis/catalis.php?p=estructura:

Verificar el contenido de la BD de origen según el diccionario de datos (FOCAD, CEPAL, BIBUN, etc.)

Seleccionar campos a migrar de la base original, estableciendo un orden por prioridad

Definir tabla de mapeo de campos entre la tabla de definición de campos del formato de origen y Catalis/MARC21

Implementar el mapeo para cada campo utilizando cuando existan algoritmos predefinidos

Comparar registros seleccionados entre la base de origen y la resultante

Herramientas

Para llevar adelante el procedimiento antes descripto, se propone usar las rutinas CISIS (Utilitarios CISIS); principalmente mx (mx) y la opción proc del mismo; definiendo una secuencia apropiada de comandos mx, cada una para la migración de un campo distinto.

Se muestra a continuación parte de una secuencia de comandos de migración, partiendo de una base de origen (b_focad) en formato FOCAD:

...
mx b_focad "proc='d1a1~',mfn(6),'~'" copy=b_focad now -all
mx b_focad "proc='d3a3~AR-BaUNS~'" copy=b_focad now -all
mx b_focad "proc='d5a5~',left(date,8),mid(date,10,6),'.0~'" copy=b_focad now -all
mx b_focad "proc='d8a8~041125b######################000#0#####d~'" copy=b_focad now -all
...
mx b_focad "proc='d20d10', if p(v10) then 'a20~##',mhl,if v10^v='0' then '^a' else '^z' fi,v10^*,'~' fi" copy=b_focad now -all
...
mx b_focad "proc=@idioma.prc" copy=b_focad now -all
mx b_focad "proc='d250d44',if p(v44) then ('a250~',mhl,'##^a',v44,'~',/) fi" copy=b_focad now -all
...

Ventajas

Esta forma de trabajo permite analizar campo por campo de la base de origen y su/s equivalente/s en la base de destino.

Facilita la comunicación entre el personal informático y el personal bibliotecario involucrado en todo el proceso, ya que aisla casos particulares (cada campo) para su tratamiento.

Al momento de corregir errores debe revisarse solamente el comando que trata al campo con el errror.

Desventajas

Se debe garantizar la correcta secuencia de comandos ya que una secuencia equivocada puede arrojar resultados inesperados.