@JonathanDemons_123, con FDR3(38:39), le estás diciendo que de esa variable, empiece en la posición 38, y te muestre 39 posiciones más, (que hace un total de 77 posiciones, 38 + 39 = 77), la variable tuya, tiene un máximo de 70 posiciones, por lo que no te debe de funcionar, no sé que es lo que realmente quieres "displayar" pero cuando lo haces de esa manera, el formato es
VARIABLE (n:p)
donde n es donde quieres empezar y p es la cantidad de posiciones que quieres manejar
algunos compiladores, permiten la sintaxis como
VARIABLE (n: )
que significa, desde esa posición hasta el tamaño máximo de la variable (el definido en la WORKING, no el usado), pero ya te comento que no lo soportan todos los compiladores
No sé si me explico bien ...
En respuesta al tema de los decimales, COBOL, no almacena los decimales de ninguna manera, cuando tú guardas por ejemplo, la cifra 1234 en una variable definida como PIC S9(6), ésta se almacena como +001234, si le añades decimales, por ejemplo 1234,567 en una variable PIC S9(6)V999, la cifra se almacena como +001234567, realmente es "la máscara" definida en la PICTURE, la que le da la estructura al dato, lo más cerca que puedes estar para definirlo y que se almacene lo más "natural" posible es que le añadas la cláusula USAGE DISPLAY a la variable y, dependiendo de compilador que uses te lo hará bien o no.
Un salu2.-
Última edición por Josber fecha: 29 de enero de 2024 a las 20:14.
|