Iniciar Sesión

Ver la Versión Completa : [Duda] Duda con Visual Studio + COBOL


DestinedBroken
27 de octubre de 2021, 14:29
Hola gente,

Tras llevar un tiempo usando OpenCobol en Windows he tenido que dejarlo porque se estaba volviendo muy pesado y molesto. Al escribir se queda pillado (escribes y tardan en aparecer los caracteres), la detección de "errores" no termina de funcionar bien del todo, ya que muchas veces se arreglan solos al reiniciar el programa y ademas, cuando compila, me salta el Avast con sus Security Captures que he intentado desactivar muchas veces sin éxito. En fin, esto solamente me sirvió para mudarme a otro entorno. Bicheando, vi que MF regalaba el Visual COBOL para el VS (tengo el Community, pero sirve con cualquier versión vaya). Tras instalarle el Cobol, estaba dispuesto a lanzar un programa cualesquiera de los que tengo para ver que me sale una ventana estilo consola que nada mas terminar de ejecutarse el programa se cierra.

¿Cómo se puede dejar esa consola abierta sin que se autocierre? Llevo ya 2 días intentando probar de aquí y allá pero nada.
https://i.ibb.co/Q8FWC47/cobol-vs19.jpg

Por otra parte, en estas veces que uno intentado el Plan B, C, y demás; termine viendo que para el VSCode también tienen los de MF un plugin. Me lo instalo y demás pero va peor que el anterior. Tengo que rellenar el config.json pero al hacerlo me tira el error que podéis ver. ¿Alguna idea?
https://i.ibb.co/YQD74T8/cobol-vscode.jpg

Para evitar confusiones solo decir que no busco programar cobol en los 2 entornos, sino aquel en el que sea mas fácil y rápido de arreglar el problema que tengo entre manos.

Kuk
27 de octubre de 2021, 21:58
@DestinedBroken, hola.

A ver, la ventana "dos" que ves con cada ejecución no se puede dejar abierta porque se abre al iniciar el ejecutable.

Yo no uso VS, hace poco me lo he instalado para ver qué tal pero lo he visto muy poco.

Yo siempre he usado Eclipse, que es lo más común porque antes Visual COBOL de MF solo funcionaba con VS de pago.

Eclipse tiene una vista llamada "consola" integrada en el IDE. Esto lo que hace en la mayoría de casos es redirigir STDOUT y STDERR hacía la consola de Eclipse y no se abre una ventana nueva.

Intuyo que en caso de VS Code debe ser el caso de la vista (pestaña) "OUTPUT".


Qué tipo de ejecutable estás generando?

Posiblemente habría que jugar con
CONSOLE IS ...


Cuéntanos también lo del plugin, que no me he entero. Tenías que descargar el VS Code + VC de MF e instalarlos. Pero qué plugin has instalado en VS Code por separado?

DestinedBroken
29 de octubre de 2021, 17:39
Hola @Kuk y gracias por responder,

¿Tienes Eclipse con Cobol? ¿Cómo lo has conseguido? Me enteré de eso, pero tras visitar la página de Eclipse, vi que el proyecto lo tenían archivado en un .tar que al descomprimirlo lo único que tenía era un montón de carpetas y archivos...

Me vendría genial trabajar en Eclipse, conozco el IDE gracias a llevar años programando Java con ellos. Me he buscado en el marketplace por si era un plugin o algo pero nada:
https://i.ibb.co/j6BGpfB/eclipse.jpg
Supongo que me tengo que bajar su instalador desde su página web, ¿no?

Sobre MF y VS: Ahora al menos sé que la ventana no se puede mantener fija. Pensé lo que dices, pero al ver que no era un consola MS-DOS de Windows, sino del MF, igual se podría configurar pero bueno...
VSCode tiene un marketplace con plugines de todos tipos y colores (reconocer sintaxis de lenguajes, autocompletar, subir archivos X sitio, etc). Entre ellos estaba el de MF con Cobol. Al instalarlo e intentar lanzar el código .cbl que tenía me pasó lo que viste arriba.

De todas formas, si me dices que es posible programar Cobol en Eclipse me quedo más tranquilo.

Kuk
29 de octubre de 2021, 17:47
@DestinedBroken, no se puede bajar desde Marketplace porque no está en libre uso.

Échale un ojo a este tema: [Noticia] Visual COBOL Personal Edition (GRATIS) - COBOL Foro (https://www.cobolforo.es/showthread.php?t=341)

Tendrás que volver a registrarte con otro mail, y te llegará un mail con el enlace de descarga del paquete entero: compilador + Eclipse IDE con sus plugins MF presintalados.

Los que venían en Marketplace de Eclipse eran plugins para OpenCobol (GNU Cobol) y no MF.

DestinedBroken
29 de octubre de 2021, 18:17
Échale un ojo a este tema: [Noticia] Visual COBOL Personal Edition (GRATIS) - COBOL Foro (https://www.cobolforo.es/showthread.php?t=341)



Hola @Kuk,

Desde ese hilo precisamente es desde donde me descargué el Visual Cobol, pero solo está para VS. Ambos enlaces te llevan a la misma página. No hay enlace a Eclipse.
Navegando por la web di con el enlace:
Visual COBOL for Eclipse for Windows Free Trial | Micro Focus (https://www.microfocus.com/products/visual-cobol-eclipse/free-trial)
viene de esta página:
Try Visual COBOL today | Micro Focus (https://www.microfocus.com/en-us/products/visual-cobol/product-trials/)

Kuk
29 de octubre de 2021, 18:55
@DestinedBroken, joder me he equivocado de enlace, ya está corregido en el hijo de origen también... :mm:

Aquí tienes el enlace para VC for Eclipse: https://www.microfocus.com/es-es/products/visual-cobol/visual-cobol-for-eclipse/personal-edition/windows/trial/


Por cierto, estás bajo una VPN? El foro detecta el país solito y a veces se equivoca pero es que te pone cada vez país diferente :D


P.D. intenta revocar la licencia que ya tienes adquirisa para VC for VS, lo mismo así te deja obtener el VC for Eclipse con el mismo mail. Si no, tendrás que usar otro mail que no sea el que hayas usado para VC for VS.

---------- Post añadido el 31 de octubre de 2021 a las 12:12 ----------

@DestinedBroken, qué pasa compañero? Has podido instalarte el VC Eclipse?

DestinedBroken
2 de noviembre de 2021, 14:39
Perdona @Kuk, con este pasado puente he desconectado.

He conseguido meterme el VC for Eclipse sin problemas durante la descarga e instalación. Desgraciadamente me salta esto cuando quiero lanzar cualquier .cbl que quiera lanzar. Lo que he hecho es un COBOL Project usando la plantilla de x64bits que te ofrecen en el wizard. A ese projecto le he importado el directorio de archivos que manejo para guardarme los ficheros cobol.

https://i.ibb.co/J5RmLLx/mf-eclipse-error.jpg


Por cierto, estás bajo una VPN? El foro detecta el país solito y a veces se equivoca pero es que te pone cada vez país diferente :D


( ͡° ͜ʖ ͡°)

yo lo que veo que está raro es que en el perfil aparece "soluiones" en vez de "soluciones"

---------- Post añadido el 2 de noviembre de 2021 a las 15:05 ----------

Ya que parece que no puedo editar el mensaje, mando aquí otro:

Buscando, al parecer el error está en que VCobol no puede lanzarme los ficheros .cbl que tengo porque nunca antes lo ha hecho; hay que configurarlo previamente.
Aquí (https://stackoverflow.com/questions/20380792/eclipse-error-the-selection-cannot-be-launched-and-there-are-no-recent-launch) un pibe se quejaba de algo parecido pero usando Android+Eclipse...

Se puede ver cómo en la propia ventana de la configuración ya hay un error:
https://i.ibb.co/VYRvDzf/eclipse-cobol.jpg

¿Cómo puedo arreglarlo? Me pierdo un poco por aquí y no sé si por las variables del entorno (cosas que me dan bastante respeto tocar).

Kuk
2 de noviembre de 2021, 16:10
aparece "soluiones"
Gracias, corregido. ;)

¿Cómo puedo arreglarlo?
Los *.cbl son los fuentes, no puedes lanzarlos. Debes generar un ejecutable.

Para ello haz clic derecho sobre el fuente y elige "Compile" o si no haz "Build Project"

DestinedBroken
2 de noviembre de 2021, 16:45
Para ello haz clic derecho sobre el fuente y elige "Compile" o si no haz "Build Project"

https://i.ibb.co/ZTZ9mgX/1.jpg

https://i.ibb.co/9whxYct/2.jpg

??? Esto es lo único que encuentro

Kuk
3 de noviembre de 2021, 09:32
@DestinedBroken, si Project->Build Automatically está activo, no aparece la opción Compile.

Ahora mismo estás generando (por defecto) un solo ejecutable con todos los programas del proyecto. Veo que tienes un programa con error, el "Hola Mundo".

Haz lo siguiente:

Vete a propiedades de Proyecto->Micro Focus->Build Configuration->Link y en Target Type elige All Int/Gnt Files
Luego a propiedades de Proyecto->Micro Focus->Project Settings->COBOL y en Compile to .gnt elige Yes

DestinedBroken
3 de noviembre de 2021, 12:07
Hola @Kuk,

Gracias a tus instrucciones he conseguido que tire y me ejecute el código de todos los programas .cbl que tengo:

https://i.ibb.co/DgNs9Qk/it-works.jpg

No quiero marearte más de lo que he hecho, pero me sorprende que el resultado se muestre en una consola externa MS-DOS en vez de la integrada en el IDE de Eclipse. Interpreto que no queda otra, ¿no?

El programa "Hola Mundo" a parte de mostrar el típico saludo de novato por consola, lo utilicé para rellenar todas las divisiones. Hay secciones que actualmente están en desuso, pero para tenerlo como curiosidad las incluí también, y así no se me queda un código tan cortito con el display "Hola Mundo".

https://i.ibb.co/ZVZXN4Q/sections.jpg

Kuk
3 de noviembre de 2021, 14:00
Interpreto que no queda otra, ¿no?
Porque el formato GNT pasa por el Run-Time, no es la ventana DOS.

Si quieres que pase por la consola de Eclipse debes generar binarios nativos, *.exe. Para ello cambia en LINK All Int/Gnt files por All Executable Files y asegúrate de añadir la excepción del directorio en tu Antivirus.

Échale un ojo a la sintaxis, [OPTIONAL] con paréntesis cuadradas no vale, quítaselas. Lo de RMEARKS olvídalo.
Además, Cobol tiene varios estándares y dialectos, que se pueden manejar via directivas de compilación. Pero de momento, si eres novato no entres en estos bosques. ;)

Y pregúntame lo que necesites, que para eso estamos. :bien:

DestinedBroken
3 de noviembre de 2021, 16:07
Perdona mi ignorancia, le mando "MS-DOS" a toda ventana consolera que tenga el fondo negro y letras blancas de impresión. Efectivamente, se las pasa al run-time, que supongo es el compilador incorporado que trae MF en tiempo de ejecución...


Si quieres que pase por la consola de Eclipse debes generar binarios nativos, *.exe. Para ello cambia en LINK All Int/Gnt files por All Executable Files y asegúrate de añadir la excepción del directorio en tu Antivirus.


Le he metido las excepciones al Avast y ahora me sale una consola cmd.exe (supongo que esto ya sí se puede llamar MS-DOS). Podría trabajar así, aunque me es incómodo y no termina de funcionar bien... es decir, cuando introduzco datos por consola se comen la línea superior sin que se puede ver ni lo que había antes ni lo que he introducido. Dejo ejemplo en video

DestinedBroken
4 de noviembre de 2021, 13:53
Entiendo que esto es así y no hay otra manera? @Kuk

Kuk
4 de noviembre de 2021, 14:39
@DestinedBroken, si no recuerdo mal, en las versiones anteriores se podía pasar la salida a la consola de Eclipse. Aunque me puedo estar equivocando, porque he trabajado con Fujitsu COBOL bajo Eclipse, Cobol-IT bajo Eclipse etc.

O sea que lo mismo MF Visual COBOL no lo permite, porque lo he probado yo también y no lo consigo.

En cuanto a que se coma las líneas de arriba, supongo que te refieres al buffer de la consola DOS. Esto se modifica así:

https://www.isunshare.com/images/article/windows-10/change-screen-buffer-size-of-cmd-in-windows-10/right-tap-title-bar-and-choose-properties.png