Generar la base de datos de usuarios a partir de una hoja Excel
Experiencia explicada por: Ing. Redel Pérez Pupo
Estoy utilizando el ABCD 1.2 Transitional en un servidor linux Debian6 en nuestra Biblioteca Universitaria, y voy a usar el módulo interno de préstamos, tengo los datos de más de 1600 usuarios en formato .xls de excel, los cuales son:
Identidad
Nombre
Apellidos
Dirección
Carrera
Facultad
Fecha de Matrícula
Sexo
Con estos datos creé un fichero de texto separado por comas con el excel (txt.txt) y luego creé una base (dbname), especificando la coma "," como separador:
mx "seq=txt.txt," create=dbname -all now
Fui al servidor y convertí la base users del módulo de préstamos a windows con crunchmf para utilizar la misma base que utiliza el ABCD y además no perder los datos que contenía.
./mx users crunchmf target=windows
Descargé la base users a mi estación de trabajo windows 7 32 bits, luego agregé los datos de la base dbname (creada a partir del txt separado por comas), utilizando el parámetro "proc" desde un fichero nombrado prc.prc el cual se corresponde con la estructura utilizada por ABCD, cuyo contenido es el siguiente:
'd*'
'<10>','^aest^bEstudiantes','</10>'
(if v8='Femenino' then
'<12>','^aF^bFemenino','</12>'
else
'<12>','^aM^bMasculino','</12>'
fi)
'<15>',v7*8.2,'/',v7*5.2,'/',v7*0.4,'</15>'
'<18>',v7*0.4,v7*5.2,v7*8.2,'</18>'
'<20>',v1,'</20>'
'<30>',v2," ",v3'</30>'
'<35>',v1,'</35>'
'<40>',v6,'</40>'
'<45>',v5,'</45>'
'<110>',v4,'</110>'
'<600>',v2,mfn(1),'</600>'
'<610>',v2,mfn(1),'</610>'
ejecuto:
mx dbname proc=@prc.prc apend=users -all now
luego:
mx users crunchmf target=linux
subo los datos para el servidor y genero el archivo invertido:
./mx users fst=@users.fst fullinv=ansi -all tell=100 now