Comandos esenciales en ISPF para programar en COBOL
En las clases anteriores vimos cómo utilizar el entorno que utilizaremos para crear nuestros programas COBOL. Este entorno de desarrollo, conocido como Interactive System Productivity Facility dentro del sistema operativo MVS, nos permite como programadores acceder a las diferentes opciones para generar programas y ejecutarlos, también para ver el resultado de esta ejecución.
En esta clase podrás repasar cómo moverte en el entorno utilizando los diferentes comandos. Practica conforme avances para dominarlo.
Teclas de función
Las teclas de función son:
F3 retroceder, cerrar, salir.
F2 abrir una nueva ventana dentro del emulador. Podemos tener abiertas hasta 16 ventanas.
F9 cambiamos entre cada ventana, esto en modo de carrete. Al llegar al final empieza de cero.
F7 desplazamiento hacia arriba.
F8 desplazamiento hacia abajo.
F10 desplazamiento a la derecha.
F11 desplazamiento a la izquierda.
F12 regresa a pantalla los comandos que hemos escrito.
Abriendo el archivo
Para abrir un archivo debes ubicarte en el inicio de tu entorno una vez que has hecho login y tecleas la opción 1 en la línea de Option.
Después teclea la opción 2, que corresponde a Edit, en la línea COMMAND.
Escribe como se muestra a continuación los diferentes campos del proyecto, usuario, tipo y member. Este último es clave por ser el nombre del archivo. Para este caso abriremos un archivo que creamos en la clase anterior, el archivo PRUEBA.
Finalmente da enter para entrar al editor.
Desplazamiento en el archivo
En la imagen de arriba observamos el indicador de desplazamiento. Con los siguientes comandos escritos en la línea de SCROLL podemos desplazarnos al usar las teclas F7 o F8:
CS nos desplazamos al CURSOR.
HF a la mitad de página (HALF-PAGE).
PG al final de la página (PAGE).
Si das enter después de probar los comandos, se cerrarán las líneas que habías desplazado. Para ingresar una nueva línea, nos posicionamos en la columna de comandos de la izquierda y tecleamos I para insertar una nueva línea:
Guía de columnas
En la línea de comandos COMMAND, el comando COLS nos es de ayuda para mostrar la guía de líneas, cruces y números para ver en qué columna estamos posicionados.
Búsqueda de palabras y caracteres
En la línea de comandos podemos efectuar búsqueda de una palabra o carácter específico. Para ello teclea FIND o F seguido de un espacio y el carácter o palabra. La palabra debemos incluirla dentro de apostrofes.
Al presionar enter se resaltarán las letras o palabras que se buscaban en la primera línea que encuentra.
Cambiar un texto por otro
También podemos efectuar un cambio de un carácter o conjunto de caracteres tecleando en la línea de comandos COMMAND el comando C seguido de un espacio, después las letras del texto que queremos cambiar, seguidas de un espacio, y al final las letras que reemplazarán al texto original.
Al igual que con el comando buscar, solo cambiará el primer texto que encuentra.
Desplazar texto hacia la izquierda o derecha (identar)
Recuerda que con la configuración de la clase anterior puedes moverte entre líneas y llegar directo a la columna de comandos de la izquierda con la tecla control izquierda.
Ahora en la columna de comandos teclea:
línea que encuentra)n 🡪 donde n es el número a desplazarse a la derecha.
(n 🡪 donde n es el número a desplazarse a la izquierda.
Por ejemplo, en la fila 2 desplazamos 3 posiciones a la derecha el texto “ABC”.
Al escribir el comando )3 y dar enter se mueve automáticamente.
Repetir una línea
Para repetir una línea inmediatamente después de ella inserta en la columna de comandos el comando R.
Al escribir el comando en la fila del texto a repetir y dar enter se copiará el texto como se ve en la imagen de abajo.
¿Recuerdas qué sucede si después del comando R pones un número? Si es así déjalo en la sección de comentarios con un ejemplo de lo que hiciste?
Repetir un bloque de texto
Para repetir un bloque que comprenda varias líneas de texto escribir en la columna de comandos el comando RR en la fila donde inicia el bloque y nuevamente en la fila donde termina. Esto se observa mejor en la imagen a continuación.
Una vez escrito, al dar enter se duplicará automáticamente debajo del texto original.
Copiar una línea de texto
Para copiar una línea de texto en la posición que quieras utiliza los comandos C y B o A.
Primero ingresa el comando C en la columna de comandos en la fila que quieres copiar.
Presiona enter para copiar.
Después ingresa el comando B (de before) para pegar el texto copiado en la fila antes de donde escribes el comando. Utiliza el comando A (de after) para pegarlo después.
Presiona enter para pegar.
Copiar un bloque de texto
Copiar un bloque de texto es muy similar a repetir uno. Solo hay que usar el comando CC en la columna de comandos en la línea donde inicia el bloque y donde termina como se observa a continuación.
Después ingresa el comando B o A en la columna de comandos.
Presiona enter para pegar el bloque.
Eliminar una línea o bloque de texto
Para eliminar una línea de texto escribe el comando D en la columna de comandos para borrar esa línea y presiona enter para borrarla.
Para borrar un bloque de texto utiliza el comando DD en la fila donde inicia el bloque y en la fila donde termine dentro de la columna de comandos. Presiona enter para borrar todo el bloque.
Cómo cerrar tu entorno de desarrollo COBOL
Para finalizar la sesión y cerrar el entorno de desarrollo, es superimportantísimo, que lo realices como te explico a continuación.
En la pantalla principal del entorno, teclea la tecla de función F3.
A continuación se presenta la siguiente pantalla.
Escribe el comando SHUTDOWN y da clic en el botón Enter.
Por último escribe el comando LOGOFF seguido de la tecla Enter.
Verifica en la pantalla donde ejecutaste el comando MVS para iniciar el sistema emulado, que la finalización y cierre del sistema esté siendo realizada, espera a que concluya este proceso, el cual tarda entre 3 y 4 minutos en finalizar.
Una vez que ha terminado, verás la siguiente pantalla.
¡Listo! Ya estamos preparados para continuar con el curso. Te veo en la siguiente clase para seguir aprendiendo de este entorno y de COBOL.
Lo que hace el comando R seguido de un numero es repetir la linea actual el numero de veces elegido.
Así es Edgar. Mejor explicado, imposible! 😎
Al principio me explotó la cabeza, pero enseguida le coges la costumbre.
A mi me pasó que tras aprender, muchas veces en la terminal de linux o windows, sin darme cuenta pulsaba F3 para salir de un menú jajajajaja
Aun estoy recogiendo los cachitos de mi cabeza.. jajajaja
Para los que se preguntaban como ver cuantas ventanas tienes aparece al lado de COMMAND
Ey, que buen ojo tienes René! Muchas gracias por compartirlo 😃
Yo se que no es la clase adecuada para estas preguntas pero al momento de realizar los ejercicios se me pasaron por la cabeza.
¿Es muy complicado cambiar todo un sistema realizado en cobol a otro lenguaje? Por ejemplo se dice que en la mayoría de sistemas bancarios todo esta hecho así, supongo que por temas de dinero no es puesto que que un banco tendría para hacerlo.
Si se opta por seguir mantenido este lenguaje para esos tipos de sistemas, por cuantos años mas creen que siga este lenguaje.
Y por ultimo si tengo experiencia aprox de 1 año y estoy en losúltimos semestres de la U, puedo ser recibido en una empresa, he visto miles de ofertas para este lenguaje con buenos sueldos.
Hola Sebastián! Has dado en el clavo en un tema super interesante 😀
Respondiendo a tu primer pregunta: no es complicado; si es muy caro, pero las instituciones que manejan COBOL créeme que tienen el capital para costear una migración; yo mismo he participado en migraciones de COBOL a otros lenguajes de programación; sin embargo el meollo y gran tema es que siempre que esta migración se ha realizado, -al menos en el tiempo que llevo laborando-, los sistemas donde residen los programas a donde se hizo la migración, no soportan la carga de trabajo que un mainframe tiene. Por lo cual un pequeño porcentaje de código y que no se encarga de la lógica del negocio, se mantiene migrado, mientras el resto se retorna a COBOL.
🐱🐉 COBOL-Mainframe es la pareja ganadora 😎
A tu inquietud de cuantos años más le quedan a COBOL, te diré mi cifra, y es a título personal, ++COBOL ha cumplido sus primeros 60 y estará 60 años más++, no por nada instituciones gubernamentales, financieras, de retail, y gran parte de las empresas listadas en el FORTUNE 500 han mantenido vigente este lenguaje con el uso que le dan.
Y respondiendo a tu última cuestión: Sí, este lenguaje tiene una puerta de entrada muy amigable al ambiente laboral donde serás bien recibido.
Saludos, seguiré al tanto de saber como te va en este curso 😃
Que genial todo esto, no lo sabia pero pues lo tendré en cuenta de aquí en adelante.
¡Muchísimas gracias por tu respuesta!
El comando de )3 no lo conocía! es bastante util cuado se requiere llevar una identación del codigo y hacerlo mas entendible...
Tambien esta el comando CUT(Copiar?) y PASTE (Pegar) para cuando es entre mas de un archivo...pasar del archivo A al B
Hola, veo con mucha preocupación los defectos que tienes algunos videos [3-8], no sé si lo corta con una intención; sin embargo le exhorto a revisar estos inconvenientes causados hasta lo momento. Deja mucho que decir.
Hola Orlando como estas? acabo de revisar esto que comentas, no pude detectar anomalía, podrías por favor comentarme en que punto lo has visto? Esto para poderme acercar al equipo de edición, en caso necesario.
Saludos.
¿Qué significa que F12 «regresa a pantalla los comandos que hemos escrito»? ¿Que ejecuta el programa?
no se ven las imagenes en el texto de la clase 8, estoy usando Edge y Windows 10
Retiro la solicitud, no se ven las imágenes de esta clase, gracias.
Hola, listo ya se visualizan las imágenes :smiley_cat:
Nunca pares de aprender~ 💚
Hola Carlos, estupenda tu explicación para crear el entorno para el COBOL. Estas configuraciones aplican para instalar en una laptop? o requiere equipo con alta configuración de ram y DD?
Hola, ¿Cómo estas?
En realidad no requiere gran capacidad en hardware, de hecho he tenido estudiantes que han instalado en raspberry pi.
Déjame saber como te va a lo largo de este curso, estaré al pendiente de resolver tus dudas y comentarios.
Saludos. 😃
Hola hay una comunidad o grupo de personas en programación COBOL? Desde Venezuela
Es complicado, la vieja escuela no tiene mucho este tema de comunidades :(
Como salgo de la pantalla sin guardar los cambios? Entré a esta parte del curso con el otro 3270 y no podia hacer lo de newline. sali y entre con el terminal vista 3270 y solo asi pude asignar lo del teclado para [ctrl]. Pero no me es posible intertar texto.
pude salir cambiando el comportamiento de las teclas de f1-f12, las tenia para la segunda funcion(activar brillo, volumen etc..) presionando fn+esc.
Super bien Néstor. Si, cuando estas con el teclado de laptop generalmente hay que oprimir esa combinación.
Saludos!
Escribiendo R en la columna de comandos al lado de la línea del código, lo que sucede es que esa línea de código se repite y se ubica debajo de la línea principal:
cuando escribo algo no sale lo mismo que hace el profe, quiero borrar lo que he creado para iniciar nuevamente, utilizo la opción: D - DELETE ENTIRE DATA SET y me dice que presione enter para borrar, lo hago, pero cuando quiero iniciar nuevamente a crear los directorios, siguen apareciendo ahí los datos y no puedo realizar las mismas acciones que esta ejecutando el profe, demostrando así que no se han borrado. Que debo hacer para eliminar correctamente eso
Hola no tengo este mensaje
Respondiendo a la pregunta del módulo:
Si pones un número después del comando R:
==>> Repite esa línea n veces
R+NUM = Se repite la cantidad de veces que indicaste con el NUM
cuando escribo algo no sale lo mismo que hace el profe, quiero borrar lo que he creado para iniciar nuevamente, utilizo la opción: D - DELETE ENTIRE DATA SET y me dice que presione enter para borrar, lo hago, pero cuando quiero iniciar nuevamente a crear los directorios, siguen apareciendo ahí los datos y no puedo realizar las mismas acciones que esta ejecutando el profe, demostrando así que no se han borrado. Que debo hacer para eliminar correctamente eso?