Gracias Rui Pinto (Rapinto)
COBOL Foro
Foro dedicado a COBOL, a la Programación y a la Informática.
Retroceder   COBOL Foro > IDE-s y compiladores COBOL > Fujitsu COBOL > NetCOBOL for Windows
NetCOBOL for Windows El IDE basado en Eclipse.
Noticias y Avisos
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Herramienta] Pasar datos de Cobol (Archivos RMKF) a txt/Excel JuanPelaez COBOL - General 7 25 de abril de 2018 22:30
[Herramienta] Programa para crear archivos de ayuda HLP/CHM Josber COBOL - General 9 8 de noviembre de 2017 01:58
[Sintaxis] Rutina de filtrado de palabras Gatomalo RM/COBOL 4 10 de marzo de 2017 09:09
[Sintaxis] Crear generar un TXT Dasije WinDev 1 12 de noviembre de 2016 03:21
[Información] Crear archivos DBF desde COBOL (sin ODBC) Joseg PowerCOBOL (ActiveX, v4 - v11) 4 16 de marzo de 2016 16:36
Respuesta
 
Herramientas

  #1
Antiguo 21 de septiembre de 2017, 18:41
IDENTIFICATION DIVISION
KalEl
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de KalEl
DATA DIVISION
Forero desde (Registrado)septiembre 2017
Argentina
UbicaciónSan Fco
Edad33 años
Última Actividad30.05.2018 20:37
PROCEDURE DIVISION
PostsPosts: 14
Ha dicho GraciasEnviado: 1
Ha recibido agradecimientosRecibido: 0
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
KalEl is an unknown quantity at this point
Predeterminado Crear Rutina que exporte archivos DAT a TXT?

Que tal amigos, soy muy nuevo en cobol, pero lo único que necesito es crear un pequeño programa que exporte la información de los archivos .dat a txt, con los respectivos nombres de columna.

Tengo los archivos CPY y FD, que creo son necesarios para poder hacer la exportación.
El fin de todo esto es poder tomar la información para trabajarla con sistemas de Business Intelligence.

Como puedo empezar a hacerlo? Alguien tiene alguna rutina de ejemplo?

Desde ya muchas gracias.
KalEl no ha iniciado sesión   Responder Con Cita
Mejores respuestas Soluciones: 1
  #2
Antiguo 21 de septiembre de 2017, 19:26
IDENTIFICATION DIVISION
Josber
Super Moderador
ENVIRONMENT DIVISION
Avatar de Josber
DATA DIVISION
Forero desde (Registrado)febrero 2015
España
UbicaciónAlicante
Última Actividad17.10.2019 20:19
PROCEDURE DIVISION
PostsPosts: 466
Ha dicho GraciasEnviado: 187
Ha recibido agradecimientosRecibido: 202
Mejores respuestasSoluiones: 31
Medallas recibidas: 1Medallas: Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Razón: Por muchos agradecimientos 
ReputaciónReputación: 18
Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road
Predeterminado

KalEl, No hay rutinas ya hechas para eso, es muy sencillo de hacer, abres el fichero origen para lectura, (OPEN INPUT fichero_origen), el de destino para escritura, (como tiene que ser un fichero LINE SEQUENTIAL, has de abrirlo con OPEN EXTEND fichero_destino), y después, te posicionas en el fichero_origen con un START, lo lees de manera secuencial con un READ NEXT, montas en una variable alfanumérica los campos con un STRING, grabas esa variable en el fichero destino con un WRITE y cuando termines, haces un CLOSE de los dos ficheros y ya lo tienes.

Sólo has de tener en cuenta, si los campos en el fichero destino, son de longitud fija o variable, porque lo que yo te he puesto es para longitud fija.

Si no lo entiendes bien, dilo e intentaremos poner algún ejemplo sencillo.

Un saludo.-
Josber no ha iniciado sesión   Responder Con Cita
  #3
Antiguo 21 de septiembre de 2017, 22:39
IDENTIFICATION DIVISION
KalEl
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de KalEl
DATA DIVISION
Forero desde (Registrado)septiembre 2017
Argentina
UbicaciónSan Fco
Edad33 años
Última Actividad30.05.2018 20:37
PROCEDURE DIVISION
PostsPosts: 14
Ha dicho GraciasEnviado: 1
Ha recibido agradecimientosRecibido: 0
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
KalEl is an unknown quantity at this point
Predeterminado

@Josber, Gracias por responder.
Lo voy a probar.
Te paso un .dat de ejemplo, para ver si me puedes orientar con este y hacer algunas pruebas. Y Así sigo yo con todos los demas. Lo deje adjunto en este mensaje.


Muchas gracias!
Archivos Adjuntos
Tipo de Archivo: zip AR86.zip (35,6 KB, 16 descargas)
KalEl no ha iniciado sesión   Responder Con Cita
  #4
Antiguo 21 de septiembre de 2017, 22:55
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad17.10.2019 15:47
PROCEDURE DIVISION
PostsPosts: 1.417
Ha dicho GraciasEnviado: 318
Ha recibido agradecimientosRecibido: 540
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

KalEl, es un fichero indexado RMKF, o sea que puede ser perfectamente tratado por PowerCOBOL.

¿Tú lo que quieres es aprender COBOL o simplemente una "herramienta" que te haga la conversión? Si quieres aprender, intenta ir haciendo cosas y te iremos guiando y ayudando. Si es una necesidad puntual, podemos hacerte el programa nosotros.

¿Los ficheros CPY y FD que tienes son los mismos para todos los ficheros o hay juego para cada fichero de datos?

Para poder ver el fichero de datos que has colgado, tienes que pasarnos también esos 2 ficheros CPY y FD que corresponden al mismo.


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
  #5
Antiguo 22 de septiembre de 2017, 00:37
IDENTIFICATION DIVISION
KalEl
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de KalEl
DATA DIVISION
Forero desde (Registrado)septiembre 2017
Argentina
UbicaciónSan Fco
Edad33 años
Última Actividad30.05.2018 20:37
PROCEDURE DIVISION
PostsPosts: 14
Ha dicho GraciasEnviado: 1
Ha recibido agradecimientosRecibido: 0
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
KalEl is an unknown quantity at this point
Predeterminado

No me interesa mucho aprender Cobol, solo necesito poder extraer las información de los ficheros siempre que lo necesite a TXT.
Ya se otros lenguajes como PHP, Basic, JScript, etc. Asíque creo que puedo entender la lógica si logro tener al menos un ejemplo funcional de este tipo de extractores.

Tengo un CPY que es general y los FD son por cada archivo.

Acá los adjunto.
Archivos Adjuntos
Tipo de Archivo: zip Archivos-AR86.zip (3,2 KB, 9 descargas)
KalEl no ha iniciado sesión   Responder Con Cita
  #6
Antiguo 22 de septiembre de 2017, 07:34
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad17.10.2019 15:47
PROCEDURE DIVISION
PostsPosts: 1.417
Ha dicho GraciasEnviado: 318
Ha recibido agradecimientosRecibido: 540
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

KalEl, de todos estos ficheros, el único que nos interesa es el FD, que contiene lo siguiente:

Código COBOL:
  1.        FD  LOCA.
  2.        01  R86.
  3.            02 CO86 PIC 9999.
  4.            02 DE86 PIC X(25).
  5.            02 HS86 PIC 999.

Lo cual quiere decir, que:
  • Los primeros 4 bytes es númro
  • Los siguientes 25 bytes es texto
  • Los siguientes 3 bytes es númro

Siendo tán pequeño, te puede interesar el siguiente programa genérico que extrae los datos: [Información] Visor archivos RM/COBOL modo texto - COBOL Foro

Luego según la información que te he dado, puedes formatear el fichero de texto en Excel.

Ya nos cuentas qué tal te ha ido.


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
  #7
Antiguo 22 de septiembre de 2017, 12:26
IDENTIFICATION DIVISION
KalEl
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de KalEl
DATA DIVISION
Forero desde (Registrado)septiembre 2017
Argentina
UbicaciónSan Fco
Edad33 años
Última Actividad30.05.2018 20:37
PROCEDURE DIVISION
PostsPosts: 14
Ha dicho GraciasEnviado: 1
Ha recibido agradecimientosRecibido: 0
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
KalEl is an unknown quantity at this point
Predeterminado

Gracias Kuk, acabo de probar el link que me pasaste al programita genérico, pero no me extrae la información.. Solo me muestra un resumen del archivo que abro, O no lo estoy usando bien jeje.

Al menos no me extrajo la información en ningún lado.

Luego de saber como es la estructura del archivo, como puedo indicarle esto a un script para que me genere un txt?
KalEl no ha iniciado sesión   Responder Con Cita
  #8
Antiguo 22 de septiembre de 2017, 13:01
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad17.10.2019 15:47
PROCEDURE DIVISION
PostsPosts: 1.417
Ha dicho GraciasEnviado: 318
Ha recibido agradecimientosRecibido: 540
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

KalEl, en cuanto que abras el fichero, en el mismo directorio te aparece un nuevo fichero con el mismo nombre terminando por *.out. Es decir, te generará AR86.DAT.out

Lo he comprobado y extrae bien las primeras 2 columnas, la tercera por lo visto simepre contiene nulos.


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
  #9
Antiguo 22 de septiembre de 2017, 14:51
IDENTIFICATION DIVISION
KalEl
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de KalEl
DATA DIVISION
Forero desde (Registrado)septiembre 2017
Argentina
UbicaciónSan Fco
Edad33 años
Última Actividad30.05.2018 20:37
PROCEDURE DIVISION
PostsPosts: 14
Ha dicho GraciasEnviado: 1
Ha recibido agradecimientosRecibido: 0
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
KalEl is an unknown quantity at this point
Predeterminado

Perfecto, ahora lo que necesitaría es el código de ese programa, ya que necesito pasar unos 15 archivos a txt cada 2 días.
O al menos que ese programa se pueda usar por línea de comando con un .bat digamos y así armarle el script para que pase uno por uno atomaticamente.
KalEl no ha iniciado sesión   Responder Con Cita
  #10
Antiguo 22 de septiembre de 2017, 16:02
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad17.10.2019 15:47
PROCEDURE DIVISION
PostsPosts: 1.417
Ha dicho GraciasEnviado: 318
Ha recibido agradecimientosRecibido: 540
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

KalEl, entonces este programa no te sirve.

Como has dicho que todos los ficheros tienen el mismo formato, te puedo crear el programa que necesitas. Eso sí, ando un poco mal de tiempo, a ver si este fin de semana te lo puedo hacer.


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
Respuesta

Tags
extraer , fichero , powercobol , rmkf


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado



La franja horaria es GMT +1. Ahora son las 07:28.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2019, Jelsoft Enterprises Ltd.