Cobol - Migrar base de datos de Cobol

 
Vista:
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (8 intervenciones) el 15/04/2022 03:39:59
Buenas, estoy haciendo un programa con python y necesito extraer la base de datos de uno hecho en cobol... mis conocimientos de cobol son nulos pero tengo absolutamente todos los archivos necesarios...

Hay posibilidades de pasar todo a un excel?


Desde ya muchas Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (8 intervenciones) el 15/04/2022 04:05:05
Olvidé mencionar que la versión de cobol con la que crearon el programa es RM/COBOL RUNTIME <Ver 2.1A >
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Leonardo Daniel A.
Val: 8
Ha mantenido su posición en Cobol (en relación al último mes)
Gráfica de Cobol

Migrar base de datos de Cobol

Publicado por Leonardo Daniel A. (8 intervenciones) el 15/04/2022 06:15:10
pues te tocara leer los programas en cobol y buscar donde definen las columnas de los archivos, porque no son mas que archivos de texto, a menos que los hayan encriptado, pero no creo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (8 intervenciones) el 15/04/2022 09:12:46
Buenas, los archivos no estan encriptados xq los pude ver, el problema es que como dije no tengo conocimientos de cobol y no se como extraer esos datos de forma ordenada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Leonardo Daniel A.
Val: 8
Ha mantenido su posición en Cobol (en relación al último mes)
Gráfica de Cobol

Migrar base de datos de Cobol

Publicado por Leonardo Daniel A. (8 intervenciones) el 16/04/2022 06:45:06
https://www.programacionfacil.org/cursos/cobol/capitulo_23_archivos_logicos_y_fisicos.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Migrar base de datos de Cobol

Publicado por Oswaldo (10 intervenciones) el 17/04/2022 03:56:27
Hola.

Tiene codigo fuente y diseños ?

de ser asi , puede escribirme al correo y con gusto esta Fundacion lo asesora y convierte sus archivos a la base de datos que requiera

Abrazo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (8 intervenciones) el 17/04/2022 17:20:04
Hola Oswaldo... Tengo todos los archivos... Si me pasas el correo para enviarte los archivos te agradecería muchisimo...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Migrar base de datos de Cobol

Publicado por Oswaldo (10 intervenciones) el 18/04/2022 19:56:44
Hola Manuel ... mira es [email protected] mandemelos y los voy mirando pero en semana estoy super ocupado los voy mirando pero me demoro vale ? me manda diseños , archivo de BD a convertir .. abrazo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (8 intervenciones) el 20/04/2022 01:29:22
Buenas, logré realizarlo. Muchísimas Gracias por el ofrecimiento de todas formas... Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (2 intervenciones) el 18/04/2022 21:59:22
Hola. Mira casi seguramente los datos estén en Archivos de formato de longitud fija (hay otras opciones pero básicamente es lo mismo, pero sin tener que separar los campos), en donde cada campo ocupa una serie de espacios y si el contenido ocupa menos se rellena de 0 o espacios. Así un campo puede ser desde la posición 5 a la 9 por ejemplo y ese es el código de municipio, o la posición del 15 al 43 la una dirección... Si viera un par de ejemplo te decía claramente en concreto, pero bueno, lo que te diré sirve para lo que quieres.

Pero bueno, ya veo que comentaste que puedes ver el contenido, por tanto no está encriptado. Pero estaría bien que tuvieras el diseño de registro, así sabrías que es cada campo, tamaño, etc. Pero no pasa nada, simplemente tienes un poco de trabajo extra.

Toca empezar, pero lo primero es ver la página de códigos y ponerla (UTF y dentro de UTF pues UTF-8, UTF-16, ANSI, UCS...) y menos probable, también mirar juego de caracteres... puede que tengas que convertir. Otra opción también es el tipo de salto de línea (tipo DOS, UNIX, MAC)... Para eso con Notepad++ que además es gratis y siempre viene muy bien, pues puede convertir, cambiar salto de línea, etc, de forma fácil.

Bien, una vez que tienes el archivo listo, pues tu hablas de Excel y se puede hacer, pero mi recomendación es otra y es Access, el asistente de importación de archivos de texto (sirve para estos, archivos CSV, etc) hará la mayor parte del trabajo por ti, podrás fijar nombres de campos, tipos, etc. Bien, pues llegado a este punto toca abrir Access e iniciar la importación, ahí ya detectará muchos de los campos por ti, el resto definirás los que no detecte, les darás nombre, tipo, etc. Y finalmente procesar y ya tendrás una tabla de Access con la que trabajar, o después exportar para llevar a SQL o a Excel (si quieres en Excel), etc. Pero si no tienes Access y el destino es SQL Server, por ejemplo pues en tareas importar, pues tendrás un asistente similar al de Access para archivos de texto en el SQL Server Management Studio o SSMS (la versión que venía con el SQL Server 2014 funciona especialmente bien para estos fines, aunque ya algo antigua).

Pero hay muchas otras herramientas, por ejemplo si son para llevar a Azure, pues Azure proporciona Data Factory en donde podrías procesar los archivos de tamaño fijo mediante flujos de datos de asignación... aunque es más flexible, requiere un trabajo extra importante, lo bueno es que si vas a hacerlo en el futuro, pues lo puedes dejar listo para más importaciones iguales. Pero aunque es muy sencillito, los asistentes comentados arriba, te hacen la vida más fácil y acabas mucho antes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (8 intervenciones) el 20/04/2022 01:29:41
Buenas, logré realizarlo. Muchísimas Gracias por la ayuda de todas formas... Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (8 intervenciones) el 20/04/2022 01:28:10
Buenas, al fin logré extraer los datos... Dejo acá los pasos para que quede registro por si alguien lo necesita...

En primer lugar, al ser archivos de una versión vieja de RM/Cobol (v2.1) tuve que actualizarlos a la nueva versión:

1. Descargar una versión mas actual del programa (Yo descargué la v5.36 de aquí) (Es de 32 bit porque yo lo hice todo desde una máquina virtual).
2. Abrir la consola de windows
3. Colocarse en la ruta donde se encuentra el RM/Cobol y ejecutar
1
runcobol rmifca
4. Colocar la ruta y nombre del archivo .INX
5. Colocar la ruta y nombre del archivo que contiene los datos (en mi caso sólo doy enter porque se llaman de la misma forma que el .INX pero sin extensión)
6. Dar enter cuando pregunta BLOCK CONTAINS (los deja en 0)
7. Dar enter cuando pregunta RECORD CONTAINS (lo deja en predet.)
2rmifca
8. Colocar ruta y nombre para el nuevo archivo actualizado (Asegurarse que sea una ruta existente)
9. Luego compilar el rmifcb ejecutando
1
rmcobol rmifcb.cbl
10. Una vez compilado ejecutar
1
runcobol rmifcb
11. Cuando lo solicite escribir "y" y luego enter
12. El programa comenzará a trabajar, el proceso puede demorar algunos minutos dependiendo el tamaño del archivo. Presionar enter cuando finalice

* Acá les dejo un link al instructivo en inglés que incluye otras versiones.

Luego, una vez actualizado el archivo hay que utilizar una herramienta diseñada por JCantero llamada Mira (La pueden descargar de acá).

1. Abrir la consola de windows
3. Colocarse en la ruta donde se encuentra Mira y ejecutar
1
mira ruta_y_nombre_archivo_actualizado
4. Una vez ejecutado, se inicia el proceso y al finalizar (nuevamente, demora depende el tamaño del archivo) se abre un archivo llamado "A" en un block de notas (ese archivo se encuentra en la carpeta de Mira)

Una vez realizado todo este proceso se debe importar al Excel. Yo lo hice con la versión 2013, dependiendo la versión puede diferir:

1. Ir a la pestaña "DATOS", y luego en el apartado "Obtener datos externos" seleccionar "Desde texto".
2. Seleccionar la opción "De ancho fijo" y las demás opciones según lo que necesite en cada situación y darle a "Siguiente"
3. Seleccionar donde se delimitará cada columna (un click agrega, dos clicks borra y para mover se debe arrastrar), luego darle a "Siguiente"
4excel
4. Establecer el formato deseado de cada columna y darle a "Finalizar"
5. Seleccionar desde donde se ubicarán los datos dentro de la hoja

Espero que le sirva a alguien porque a mi me hizo renegar bastante todo esto...

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Manuel

Migrar base de datos de Cobol

Publicado por Manuel (2 intervenciones) el 20/04/2022 20:17:04
+1 Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Migrar base de datos de Cobol

Publicado por Oswaldo (10 intervenciones) el 20/04/2022 23:14:52
Hola Manuel, pues me satisface saber que logro su acometido al solucionar su problema, aunque el termino renegar no es el adecuado, lo felicito por la gran ilustración que nos presenta y explicación de la solución, y debe tener en cuenta que en cobol existen diversos tipos de archivos, ( texto, secuenciales, indexados, relativos ) y por fortuna usted mantenia copia de uno texto. Un abrazo y exitos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar