0
Buenas tardes:
Estoy aprendiendo cobol, estoy en leer un archivo, pero al querer leerlo, me sale el siguiente error:
captura.png
Esta es la estructura de la linea, me sale el error cuando quiero imprimir la linea del 38 al 41, pienso que es porque en esa linea hay espacio en blanco:CODE Código:
50502121 MM01000000000922000268 B04B1688035B4426 50538000 MM01000000000127420265 AA15 B04B115850952110
Aprovechando otra duda??
Como se declara variables decimales, y como se asigna el valor, tomando como ejemplo estas lineas:
Asi tengo de ejemplo de declarar variable decimal, 05 DIGITOS PIC S9(12)V9(2).CODE Código:
50502121 MM01000000000922000268 B04B1688035B4426 50538000 MM01000000000127420265 AA15 B04B115850952110
Para las primeras lineas seria: 2.68 y la segunda 2.65, pero el como pasar a decimal, es que no lo he encontrado.COBOL Código:
*------------------------------------------------- IDENTIFICATION DIVISION. *-------------------------------------------------- PROGRAM-ID. visorR3. AUTHOR. A DATE-WRITTEN. 2023 SECURITY. ============================================ ============================================ *------------------------------------------------------------------- ENVIRONMENT DIVISION. *------------------------------------------------------------------- CONFIGURATION SECTION. SOURCE-COMPUTER. UNIX. OBJECT-COMPUTER. UNIX. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT RTRES ASSIGN TO "./RR3DKBB.330" ORGANIZATION IS LINE SEQUENTIAL. *-------------------------------------------------------------- DATA DIVISION. FILE SECTION. FD RTRES. 01 REGISTRO. 05 TIPOREG PIC X(2). 05 R3 PIC X(156). 05 TIPOMOV PIC X(2). 05 CUENTA PIC X(5). 05 SOCIEDAD PIC X(4). 05 DIGITOS PIC S9(12)V9(2). 05 LUGAR PIC X(4). 05 CENT PIC X(5). ****************************************************************** WORKING-STORAGE SECTION. 01 FDR3. 05 WS-STUDENT-ID PIC 9(15). 05 WS-NAME PIC A(55). 01 FIN PIC A(1). ****************************************************************** PROCEDURE DIVISION. ****************************************************************** OPEN INPUT RTRES. PERFORM UNTIL FIN='Y' READ RTRES INTO FDR3 AT END MOVE 'Y' TO FIN NOT AT END IF FDR3(1:2) = "50" OR FDR3(1:2)= "40" DISPLAY "LINEA" MOVE FDR3(1:2) TO TIPOREG DISPLAY TIPOREG MOVE FDR3(10:13) TO SOCIEDAD DISPLAY SOCIEDAD MOVE FDR3(28:31) TO LUGAR DISPLAY LUGAR MOVE FDR3(32:36) TO CENT DISPLAY CENT DISPLAY FDR3(38:39)***********Esta linea es la que me marca error END-IF END-READ END-PERFORM. CLOSE RTRES. STOP RUN.
Marcadores