Cobol Foro
Navegación en el Foro
Retroceder   Cobol Foro Entornos de desarrollo y compiladores Cobol Fujitsu COBOL NetCOBOL
NetCOBOL El IDE basado en Eclipse para Windows, Linux y para .NET
 
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Duda] Leer dos archivos y crear uno nuevo. dariodr COBOL - General 5 19 de diciembre de 2023 11:46
[Herramienta] Pasar datos de Cobol (Archivos RMKF) a txt/Excel JuanPelaez COBOL - General 10 3 de enero de 2020 12:58
[Herramienta] Programa para crear archivos de ayuda HLP/CHM Josber COBOL - General 9 8 de noviembre de 2017 01:58
[Sintaxis] Crear generar un TXT Dasije WinDev 1 12 de noviembre de 2016 03:21
[Duda] Crear archivos DBF desde COBOL (sin ODBC) Joseg PowerCOBOL (ActiveX, v4 - v11) 4 16 de marzo de 2016 16:36

Respuesta
 
Herramientas

  #11
Antiguo 23 de septiembre de 2017, 00:58
KalEl
Forero Junior
Última Actividad 30.05.2018 21:37
Posts Posts: 14
Likes enviados Enviados: 1
Likes recibidos Recibidos: 0

Muy amable Kuk, me gustaría tener el código de esta rutina para poder usarla en los demas archivos.

Muchas Gracias!
KalEl is offline   Responder Con Cita
  #12
Antiguo 23 de septiembre de 2017, 07:45
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

KalEl, ¿tú tienes el compilador?

Por cierto, la estructura que has publicado no corresponde con el fichero, porque el fichero según el programa de antes, es de longitud 59 y la estructura 4+25+3=32



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #13
Antiguo 23 de septiembre de 2017, 21:30
KalEl
Forero Junior
Última Actividad 30.05.2018 21:37
Posts Posts: 14
Likes enviados Enviados: 1
Likes recibidos Recibidos: 0

Tienes Razon, encontre otro FD nuevo para ese archivo. Y da 59 el total.
Archivos Adjuntos
Tipo de Archivo: zip ar86.zip (224 Bytes)Descargas: 158
KalEl is offline   Responder Con Cita
  #14
Antiguo 24 de septiembre de 2017, 10:14
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

KalEl, aquí tienes el programa. Lo he probado y funciona. En la salida te crea fichero de texto plano, separando los campos por punto-coma, es decir formato CSV para poder verlo en Excel.

Desde el script CMD/Batch debes pasar los nombres de los ficheros separados por punto-coma:

Código:
CONVF001 "fichero.dat;fichero_salida.csv"
Código COBOL:
  1.  IDENTIFICATION DIVISION.
  2.  PROGRAM-ID.    CONVAR86.
  3.  
  4.  ENVIRONMENT DIVISION.  
  5.  INPUT-OUTPUT SECTION.
  6.  FILE-CONTROL.
  7.      
  8.      SELECT AR86-FILE
  9.      ASSIGN TO ZZZ-AR86
  10.      ORGANIZATION IS INDEXED
  11.      ACCESS MODE IS SEQUENTIAL
  12.      RECORD KEY IS RE-CO86
  13.      ALTERNATE RECORD RE-DE86 WITH DUPLICATES
  14.      FILE STATUS IS SW-FS.
  15.      
  16.      SELECT TXT-FILE
  17.      ASSIGN TO ZZZ-TXT
  18.      ORGANIZATION IS LINE SEQUENTIAL
  19.      FILE STATUS IS SW-FS.
  20.  
  21.  DATA DIVISION.
  22.  FILE SECTION.
  23.  FD  AR86-FILE.
  24.  01  RE-AR86.
  25.      02  RE-CO86      PIC 9999.
  26.      02  RE-DE86      PIC X(25).
  27.      02  RE-AMPLI86   PIC X(30).
  28.  
  29.  FD  TXT-FILE.
  30.  01  RE-TXT           PIC X(62). *> campos entrada + los ";"
  31.  
  32.  WORKING-STORAGE SECTION.
  33.  01  SW-FS            PIC X(2).
  34.      88  SW-FS-OK             VALUE '00' '02' '05'.
  35.      88  SW-FS-EOF            VALUE '10'.
  36.          
  37.  01  ZZZ-AR86         PIC X(50).
  38.  01  ZZZ-TXT          PIC X(50).
  39.  
  40.  01  CNT-1            PIC S9(9) COMP-5.
  41.  01  CNT-2            PIC S9(9) COMP-5.
  42.  
  43.  LINKAGE SECTION.
  44.  01  CMD-LINE.
  45.      05   CMD-LENGTH  PIC S9(4) COMP-5.
  46.      05   CMD-CONTENT PIC X(100).
  47.  PROCEDURE DIVISION USING CMD-LINE.
  48.  
  49.  DECLARATIVES.
  50.  ERR SECTION.
  51.      USE AFTER ERROR PROCEDURE ON AR86-FILE.
  52.  END DECLARATIVES.
  53.  
  54.      IF  CMD-LENGTH = 0
  55.          DISPLAY "No hay parametros en entrada. EXIT"
  56.          
  57.          GOBACK
  58.      END-IF
  59.      
  60.      UNSTRING CMD-CONTENT DELIMITED BY ";"
  61.          INTO ZZZ-AR86, ZZZ-TXT
  62.      
  63.      DISPLAY "Fichero AR86: " ZZZ-AR86
  64.      DISPLAY "Fichero TXT : " ZZZ-TXT
  65.      
  66.      PERFORM ABRIR-FICHEROS
  67.      PERFORM READ-AR86            
  68.      
  69.      PERFORM UNTIL SW-FS-EOF                
  70.          STRING RE-CO86 ";"
  71.                 RE-DE86 ";"
  72.                 RE-AMPLI86 ";"
  73.                 DELIMITED BY SIZE INTO RE-TXT
  74.          
  75.          WRITE RE-TXT
  76.          
  77.          IF  SW-FS-OK
  78.              ADD 1 TO CNT-2
  79.              
  80.          ELSE
  81.              DISPLAY "ERROR WRITE TXT, FS: " SW-FS
  82.          
  83.              GO TO 9999-ABEND
  84.          END-IF
  85.                                
  86.          PERFORM READ-AR86
  87.      END-PERFORM
  88.      
  89.      DISPLAY "Registros leidos AR86 : " CNT-1
  90.      DISPLAY "Registros escritos TXT: " CNT-2
  91.      
  92.      CLOSE AR86-FILE, TXT-FILE
  93.      
  94.      DISPLAY "Tratamiento de datos OK"
  95.      
  96.      GOBACK
  97.      .            
  98.      
  99.  ABRIR-FICHEROS.
  100.  
  101.      OPEN INPUT AR86-FILE
  102.      
  103.      IF  NOT SW-FS-OK
  104.          DISPLAY "ERROR OPEN AR86, FS: " SW-FS
  105.          
  106.          GOBACK
  107.      END-IF
  108.      
  109.      OPEN OUTPUT TXT-FILE
  110.      
  111.      IF  NOT SW-FS-OK
  112.          DISPLAY "ERROR OPEN TXT, FS: " SW-FS
  113.          
  114.          GOBACK
  115.      END-IF
  116.      .
  117.      
  118.  READ-AR86.
  119.      
  120.      READ AR86-FILE
  121.      
  122.      IF  SW-FS-OK
  123.          ADD 1 TO CNT-1
  124.          
  125.      ELSE
  126.          IF  NOT SW-FS-EOF
  127.              DISPLAY "ERROR READ AR86, FS: " SW-FS
  128.          
  129.              GOBACK
  130.          END-IF
  131.      END-IF
  132.      .
  133.          
  134.  9999-ABEND.
  135.      
  136.      DISPLAY "ABEND - exit"
  137.      
  138.      CLOSE AR86-FILE, TXT-FILE
  139.      
  140.      MOVE 8 TO RETURN-CODE
  141.      
  142.      GOBACK
  143.      .
  144.          



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #15
Antiguo 24 de septiembre de 2017, 22:30
KalEl
Forero Junior
Última Actividad 30.05.2018 21:37
Posts Posts: 14
Likes enviados Enviados: 1
Likes recibidos Recibidos: 0

Kuk, muchisimas gracias, al compilarlo estoy recibiendo los siguientes errores:
(seguramente estoy armando mal el proyecto en general)

Código:
Create Type Library for compilation...

Create H:\XXX\Red.cob...
Redexcel Redexcel-Opened(-3) : F5DC410305I-W There is no PROCEDURE DIVISION.
STATISTICS: HIGHEST SEVERITY CODE=W

Revise line information into H:\XXX\Red.cob ...
STATISTICS: HIGHEST SEVERITY CODE=I

Compile H:\XXX\Red.cob...
** DIAGNOSTIC MESSAGE ** (REDEXCEL)
Redexcel Redexcel-Opened(145) :  JMN1044I-S  The program contained within program 'POW-SCRIPTLET1' must end with an end program header. An end program header is assumed.
STATISTICS: HIGHEST SEVERITY CODE=S, PROGRAM UNIT=1

** The build has failed **
KalEl is offline   Responder Con Cita
  #16
Antiguo 24 de septiembre de 2017, 22:43
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

KalEl, este programa no lo tienes que compilar en PowerCOBOL sino en NetCOBOL (Eclipse) porque es un programa Batch.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #17
Antiguo 20 de junio de 2022, 16:42
luisbago
Forero Junior
Última Actividad 20.09.2026 07:34
Posts Posts: 48
Likes enviados Enviados: 5
Likes recibidos Recibidos: 17

algo parecido para rm/cobol, tengo el fd
luisbago is offline   Responder Con Cita
  #18
Antiguo 21 de junio de 2022, 09:13
JCantero
El Foro es mi casa
Activista del Foro: Activista del Foro - Issue reason: Por participación activa Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos de parte de los Foreros 
Última Actividad 02.09.2026 00:15
Posts Posts: 442
Likes enviados Enviados: 167
Likes recibidos Recibidos: 269

@luisbago, Si, puedes utilizar el ejemplo anterior (el fuente) lo modificas poniendo tu SELECT y FD para reemplazar (AR86-FILE) por el el tuyo.

Lo compilas en rmcobol y lo ejecutas.
JCantero is offline   Responder Con Cita
  #19
Antiguo 21 de junio de 2022, 18:01
jmeza
Forero Senior
Última Actividad 23.05.2026 02:04
Posts Posts: 106
Likes enviados Enviados: 26
Likes recibidos Recibidos: 4

KaIEI, este programa ejemplo te puede ayudar, leer un archivo .DAT y lo traspaso a TXT
slds
Archivos Adjuntos
Tipo de Archivo: rar RENT1887.rar (5,2 KB)Descargas: 33
jmeza is offline   Responder Con Cita
  #20
Antiguo 23 de junio de 2022, 18:01
luisbago
Forero Junior
Última Actividad 20.09.2026 07:34
Posts Posts: 48
Likes enviados Enviados: 5
Likes recibidos Recibidos: 17

Citación del post de JCantero Ver Mensaje
@luisbago, Si, puedes utilizar el ejemplo anterior (el fuente) lo modificas poniendo tu SELECT y FD para reemplazar (AR86-FILE) por el el tuyo.

Lo compilas en rmcobol y lo ejecutas.
Pues no pude, corregí varios errores pero me quedaron 2 y varios warnig, ya no se como corregir.

mando cbl, fd.cbl y el lst
Archivos Adjuntos
Tipo de Archivo: rar IDX2CVS.rar (4,5 KB)Descargas: 27
luisbago is offline   Responder Con Cita
Respuesta



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

Saltar a Foro


La franja horaria es GMT +2. Ahora son las 14:52.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.