Evaluar la declaración en COBOL

Evaluar la declaración en COBOL
La evaluación en COBOL es similar a la "Declaración de caso Seleccionar" en Microsoft Visual Basic. La declaración "Evaluar" se introdujo con COBOL-85 y puede usar la evaluación COBOL para una variedad de fines. Desde la perspectiva de rendimiento, la declaración de evaluación de Cobol es mejor que los IFS anidados de Cobol. Debido a esta razón, solo se recomienda que reemplace su declaración anidada-if con la declaración de evaluación de COBOL.

La principal diferencia entre el caso Evaluate y VBA Select es que Evaluate no requiere una declaración de "ruptura" porque el control sale automáticamente de la declaración de evaluación tan pronto como se cumpla una condición.

Formatos:
Antes de mirar la sintaxis y el ejemplo de la declaración de evaluación, nos gustaría mencionar que la declaración COBOL Evaluate tiene cuatro formatos diferentes. Discutamos cada formato con cada sintaxis.

La sintaxis básica de la declaración de evaluación es:

Evaluar verdadero
Cuando la condición-1
Declaración…
Cuando otros
Declaración…
EMO-Evaluate.

La cláusula "When" se usa generalmente para especificar su condición. En los siguientes ejemplos, especificamos la declaración que debe ejecutarse para ese evento en particular. La evaluación de la declaración termina con una explicación clara del final de su alcance.

Programación Ejemplo 1:

División de identificación.
ID de programa. EMP001.
División de datos.
Sección de archivo.
Sección de almacenamiento de trabajo.
01 WS-File-SW Pic X (01) Valor 'N'.
88 Valor E-O-F 'Y'.
88 Not-e-o-f valor 'n'.
División de procedimiento.
000-Mayor-Para.
Evaluar verdadero
Cuando E-O-F
Realizar A00-WRT-TRL-REC
Cuando no-e-o-f
Realizar B00-WRT-DTL-REC
Realizar B10-REC-NXT-REC
Cuando otros
Realizar z00-cll-rim
Fin final.
Parada.
A00-WRT-TRL-REC.
Mostrar 'final del archivo'.
B00-WRT-DTL-REC.
Mostrar 'no final del archivo'.
B10-REC-NXT-REC.
Mostrar 'no final del archivo'.
Z00-CLL-ERR.
Mostrar 'error'.

Producción:

Papan@Papan -VirtualBox: ~/Desktop/Eva $ COBC -XJF 4.CBL
No final del archivo
No final del archivo

Explicación:
En este ejemplo de programación, observamos el párrafo que se menciona en la división de procedimientos que es 000-main-para. Usamos la declaración de evaluación en este párrafo. Dice "evaluar verdadero" al comienzo de la declaración de evaluación y dice cuándo.

La primera condición establece que si no hay registro en el archivo, significa que es el final del archivo. En ese caso, simplemente vaya y escriba el rendimiento A00-WRT-TRL-REC. Si no es el final del archivo y hay pocos registros más, simplemente siga adelante y escriba el registro B00-WRT-DTL-REC que ya está en el búfer, y vaya al siguiente registro que es B10-REC-NXT -Cec.

En caso de que no se cumpla ninguna de las condiciones proporcionadas, use el control yendo a la otra sección. Luego ejecuta Z00-CLL-ERR. Se llama "error" que va al manejo de excepciones.

Programación Ejemplo 2: Evaluar cuándo también está

División de identificación.
ID de programa. EMP002.
División de datos.
Sección de archivo.
Sección de almacenamiento de trabajo.
01 WS-File-SW Pic X (01) Valor 'N'.
88 Valor de fin de archivo 'Y'.
88 Valor no-end de la base 'n'.
01 WS-P PIC 9 (3).
01 WS-Q Pic 9 (3).
01 WS-R Pic 9 (3).
01 WS-S Pic 9 (3).
División de procedimiento.
000-Mayor-Para.
Mostrar "Ingrese el valor de WS-P".
Aceptar WS-P.
Mostrar "Ingrese el valor de WS-Q".
Aceptar WS-Q.
Mostrar "Ingrese el valor de WS-R".
Aceptar ws-r.
Mostrar "Ingrese el valor de WS-S".
Aceptar WS-S.
Evaluar verdadero también verdadero
Cuando WS-P = WS-Q también WS-R = WS-S
Visualización 'El caso 1 es verdadero'
Cuando WS-P> WS-Q también WS-R < WS-S
Visualización 'El caso 2 es verdadero'
Cuando otros
Mostrar 'otro caso es verdadero'
Fin final.

Producción:

Papan@Papan -VirtualBox: ~/Desktop/Eva $ COBC -XJF 2.CBL
Ingrese el valor de WS-P
300
Ingrese el valor de WS-Q
100
Ingrese el valor de WS-R
169
Ingrese el valor de WS-S
500
El caso 2 es verdadero

Explicación:
Pasemos a la siguiente variante de la declaración de evaluación que es "evaluar también con también". Esta variante de la declaración de evaluación es similar a lo que discutimos en el ejemplo anterior. La única diferencia es que en esta variante, verificamos más de una condición al mismo tiempo.

En este ejemplo, la evaluación verdadera también verdadera significa que si ambas condiciones que se especifican en la cláusula When se satisfacen, solo la declaración podría ejecutarse. Los valores de "WS-P" y "WS-Q" deberían coincidir, y los valores de "WS-R" y "WS-S" también deberían coincidir en esta declaración. Entonces, solo la declaración "verdadera" que está en el caso se muestra como una salida de la declaración particular.

Programación Ejemplo 3: Evaluar cuándo con múltiples condiciones

División de identificación.
ID de programa. EMP003.
División de datos.
Sección de archivo.
Sección de almacenamiento de trabajo.
01 Martial-Status Pic x (01) Valor 'M'.
01 WS-PGE PIC X (02) Valor 36.
01 WS-Gen Pic x (01) Valor 'F'.
División de procedimiento.
000-Mayor-Para.
Evaluar el estado marcial
Cuando 'M'
Exhibir 'casado'
CUANDO ES'
Cuando 'D'
Mostrar 'single'
Cuando otros
Mostrar 'no especificado'
Fin final.
Evaluar verdadero
Cuando WS-PGE> 10 y WS-Gen = 'M'
Muestra 'Masculino con edad> 10'
Cuando WS-PGE> 10 y WS-Gen = 'F'
Exhibir 'mujer con edad> 10'
Cuando otros
Mostrar 'criterios no satisfacer'
Fin final.

Producción:

Papan@Papan -VirtualBox: ~/Desktop/Eva $ COBC -XJF 1.CBL
CASADO
Mujer con edad> 10

Explicación:
En este ejemplo, a pesar de usar "verdadero", usamos el nombre de la variable real y verificamos los valores de esas variables, el posible valor de esa variable particular en la cláusula When.

En este ejemplo, hay un campo llamado "estado marcial". Verificamos el valor de este campo en particular, ya sea que estén casados, solteros o divorciados. Si la persona está casada, muestra "casado". Si la persona es soltera, muestra "soltero".

Programación Ejemplo 4: Evaluar cuándo con a través de

División de identificación.
ID de programa. Emp004.
División de datos.
Sección de archivo.
Sección de almacenamiento de trabajo.
01 WS-File-SW Pic X (01) Valor 'N'.
88 Valor de fin de archivo 'Y'.
88 Valor no-end de la base 'n'.
01 ws-number pic 9 (2) valor cero.
División de procedimiento.
000-Mayor-Para.
Visualizar "Ingrese un número:"
Ingrese el valor del número de WS
Evaluar el número de WS
Cuando 1
Pantalla '1'
Cuando 2
Visualización '2'
Cuando 3 a 6
Mostrar 'número en el rango de 3-6'
Cuando otros
Mostrar 'número no en el rango'
Fin final.

Producción:

Papan@Papan -VirtualBox: ~/Desktop/Eva $ COBC -XJF 3.CBL
Ingrese un numero:
4
Número en el rango de 3-6

Explicación:
Esta variante de la declaración de evaluación también es similar a los ejemplos anteriores. El código utiliza la palabra clave "a través" al especificar las condiciones dentro de la cláusula when de la declaración de evaluación para indicar un rango de valores para la variable que se está evaluando. En este caso, tenemos la declaración de evaluación y utilizamos una variable llamada "Number WS". Lo que hacemos es verificar los diferentes valores en la cláusula When.

El primero es que el valor de número de ws es 1. Entonces, mostramos "1". Del mismo modo, si el valor es dos, se muestra el valor "2", etc. A pesar de escribir varias veces por un solo valor, lo que hacemos es verificar un valor entre 3 y 6, y el valor de salida está en el rango de 3 a 6.

Conclusión

En este artículo en particular, cubrimos todas las perspectivas y la aplicación de la declaración de evaluación para que entendamos el mecanismo de la declaración de evaluación de una manera bien. Aclaramos todo el tema de las declaraciones de evaluación que están presentes en el lenguaje de programación COBOL.