Cobol Foro
Navegación en el Foro
Retroceder   Cobol Foro Entornos de desarrollo y compiladores Cobol Fujitsu COBOL PowerCOBOL (ActiveX, v4 - v11)
PowerCOBOL (ActiveX, v4 - v11) Versiones del IDE basadas en ActiveX
 
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[PowerCOBOL + WinAPI] Ventanas estilo MDI Kuk Cocina PowerCOBOL 0 6 de enero de 2023 09:29
[Aporte] WinSpy - permite ver Style y ExStyle de ventanas Kuk Software 0 18 de enero de 2021 13:08
[Sintaxis] Crear ventanas virtuales ENRIQUE ALONSO RM/COBOL 0 2 de agosto de 2020 06:54

Respuesta

  #1
Antiguo 2 de abril de 2019, 23:35
Breew
Patrocinador del Foro
Última Actividad 09.05.2022 07:47
Posts Posts: 125
Likes enviados Enviados: 104
Likes recibidos Recibidos: 8
Predeterminado Ventanas Flotantes
0 Inactivo Inactivo

Hola .

Quisiera abrir una ventana de consulta, y poder desplazarla por la pantalla, para seguir trabando en el form principal.
He pensado en un form secundario,

Código COBOL:
  1. INVOKE POW-SELF "OpenForm" USING "Consulta-log".

Esto me permite volver al form principal , pero cuando efectuo otra consulta, me indica que el form Consulta, ya lo tengo abierto.

No me permite poner en multipleinstancia en el formsecundario , me indica que
Cita:
The form cannot be generated in multiplesby the COBOL85 LANGUAGE specification
La idea seria que abriera tantos form como consultas este realizando.

Alguna idea?

Saludos
Breew is offline   Responder Con Cita
  #2
Antiguo 3 de abril de 2019, 21:16
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Breew, tienes que
  1. Crear una copia del proyecto
  2. Abrir el nuevo proyecto en una instancia nueva de PowerCOBOL
  3. Eliminar todos los scripts de eventos que tengas en el proyecto antiguo
  4. Cambiar el modo de COBOL85 a OO-COBOL
  5. Crear uno a uno todos los eventos en el proyecto, fijándote en el otro proyecto (copia) que tienes abierto en la otra instancia de PowerCOBOL, copiando el contenido (código) de cada uno de esos eventos en el correspondiente que acabas de crear

No sé si me explico



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #3
Antiguo 3 de abril de 2019, 22:56
Breew
Patrocinador del Foro
Última Actividad 09.05.2022 07:47
Posts Posts: 125
Likes enviados Enviados: 104
Likes recibidos Recibidos: 8

Uffff!!!!

Justamente es una historia enormeeee

Intentare hacer una prueba, y luego te comento

Muchas gracias
Breew is offline   Responder Con Cita
  #4
Antiguo 4 de abril de 2019, 20:12
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Breew, es verdad que es bastante coñazo. Pero te toca hacerlo, por desgracia.

Yo lo hice en su día para uno de mis proyectos, y funciona. Salvo algún que otro ajuste, como por ejemplo que la palabra reservada GLOBAL ya no es necesaria, y hay que quitarla porque el compilador se queja, y vamos, cuatro tonterías de estas.

No encontré otro modo de hacerlo, cosa que me parece normal, porque dependiendo del dialecto, todo el código que se genera automáticamente (mira los ficheros *.prc por ejemplo) es diferente, y seguramente el mecanismo de anclaje del código nuestro en el generado también difiere, y digamso el IDE "no se atreve" o más bien no podría garantizar la transformación del código generado existente con el nuestro ya anclado. Así que directamente lo han capado.

Es por eso que hay que definir el dialecto desde el principio, sin haber codificado ninguna línea de código. Pero nos damos cuenta tarde.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #5
Antiguo 4 de abril de 2019, 23:09
Nitzer
Guru de COBOL
Activista del Foro: Activista del Foro - Issue reason: Por Videoconferencia-Webinar Guru de los Gurus: Por solidos y amplios conocimientos - Issue reason: Por aportar conocimientos excepcionales 
Última Actividad 05.08.2026 17:33
Posts Posts: 200
Likes enviados Enviados: 70
Likes recibidos Recibidos: 157

Kuk, una pregunta inocente, (nunca me he metido con el oocobol)
Como le pasas unas variables a una dll programada en oocobol desde un exe en Cobol "normal"

---------- Post añadido : 23:09 ---------- Post anterior : 22:50 ----------

Me autorepondo, he leido un post anterior y parece que lo que no se puede poner es Global, pero si External.
Haré alguna prueba, aunque he hecho lo esencial y cuando intento abrir 2 veces el form, me dice que ya está abierto :o y lo he creado bien.
Nitzer is offline   Responder Con Cita
  #6
Antiguo 5 de abril de 2019, 21:32
Breew
Patrocinador del Foro
Última Actividad 09.05.2022 07:47
Posts Posts: 125
Likes enviados Enviados: 104
Likes recibidos Recibidos: 8

Hola.

De momento , se queja por GLOBAL, EXTERNAL Y EXIT PROGRAM.

Debo de definir todas las variables comunes de los programas en la working general?

El Exit program lo utilizo para finalizar el programa y poner las subrutinas debajo.
Por que otra instruccion lo puedo sustituir?

Gracias
Breew is offline   Responder Con Cita
  #7
Antiguo 5 de abril de 2019, 21:43
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Nitzer, cuando estás en el modo OO-COBOL, en las propiedades de un Form aparece una nueva opción "MultiInstance" que por defecto está en False. Hay que ponerla en True

---------- Post añadido : 21:43 ---------- Post anterior : 21:38 ----------

Breew, en OO-COBOL, las variables de la working general son todas GLOBAL de por sí.

El EXTERNAL no debería, supongo que lo tienes junto a GLOBAL y por eso te lo menciona también.

Citación del post de Breew Ver Mensaje
Por que otra instruccion lo puedo sustituir?
Puedes hacer lo siguiente:

Código COBOL:
  1.  IF ...
  2.      GO TO SALIDA
  3.  ...
  4.  
  5.  SALIDA.
  6.      EXIT.

Evidentemente, SALIDA debe siempre ser el último párrafo.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #8
Antiguo 5 de abril de 2019, 23:20
Breew
Patrocinador del Foro
Última Actividad 09.05.2022 07:47
Posts Posts: 125
Likes enviados Enviados: 104
Likes recibidos Recibidos: 8

Hola.

Parece ser que el error de external, unicamente me lo da en la working general.

Tambien me da problemas la instruccion
Código COBOL:
  1. CALL "NUEVA PROCEDURE".
Como doy paso a una nueva procedure?.

Gracias
Breew is offline   Responder Con Cita
  #9
Antiguo 6 de abril de 2019, 20:12
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Breew, tienes que crear un método nuevo, clic derecho en el Form -> "Insert Custom Method", llamarlo como la procedure que tenías. Luego abrir el único evento que tiene "Invoked" y pegar el texto de la procedure dentro.

Donde tengas CALL "MIPROCEDURE" tendrás que reemplazarlo por:

Código COBOL:
  1.  INVOKE POW-SELF "MIPROCEDURE" USING ...

En el editor de código, si escribes POW-SELF, lo seleccionas y haces clic con el botón derecho del ratón, en la lista de métodos también te aparecerá el tuyo.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #10
Antiguo 6 de abril de 2019, 22:35
Nitzer
Guru de COBOL
Activista del Foro: Activista del Foro - Issue reason: Por Videoconferencia-Webinar Guru de los Gurus: Por solidos y amplios conocimientos - Issue reason: Por aportar conocimientos excepcionales 
Última Actividad 05.08.2026 17:33
Posts Posts: 200
Likes enviados Enviados: 70
Likes recibidos Recibidos: 157

Muchas gracias kuk )

He conseguido ejecutarlo múltiples veces y el EXTERNAL lo he colocado en la working del opened y ha ido perfecto.

Seguiré investigando a ver lo que puede ofrecernos el OOCOBOL

Aunque para mi, lo que sería increible es poder ejecutar por hilos, ejecutar varias acciones a la vez sin dejar el ejecutable "parado"
Nitzer is offline   Responder Con Cita
Respuesta


Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado

Saltar a Foro


La franja horaria es GMT +2. Ahora son las 17:07.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.