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
[Sintaxis] Máximo valor de una variable Begoguay COBOL - General 6 4 de mayo de 2020 19:46
[Duda] Traspaso de Excel a ListView Socavi Fujitsu COBOL 16 7 de abril de 2020 19:39
[Sintaxis] Traspasar el valor de una variable jmeza PowerCOBOL (ActiveX, v4 - v11) 2 30 de mayo de 2019 01:20
[Sintaxis] Lanzar forms desde uno principal. Breew PowerCOBOL (ActiveX, v4 - v11) 2 12 de febrero de 2019 16:04
[Compilador] Programa Traspaso en RMCOBOL V12 JuanPelaez RM/COBOL 5 2 de junio de 2018 15:18

Respuesta

  #11
Antiguo 13 de noviembre de 2018, 11:05
lfortuny
Forero Junior
Última Actividad 05.07.2026 12:35
Posts Posts: 20
Likes enviados Enviados: 17
Likes recibidos Recibidos: 3

Buenos días.
Tengo una serie de variables definidas como GLOBAL EXTERNAL.
Cargo los valores en un programa, llamo a otro y en este segundo al abrir, antes de hacer nada, muestro las variables GLOBAL EXTERNAL y algunas han perdido el valor. Cuando regreso al programa llamador, los valores de las variables siguen con su valor.
¿Me podrían ayudar con alguna idea para poder saber qué está pasando?, ¿por que algunas pierden su valor? ¿quizás usar 'cbl_alloc_mem'? (aunque no encuentro ningún programa de ejemplo de como usarla)
He revisado que no estén definidas en alguna working excepto la principal, no se inicializan,....

Gracias de antemano....
lfortuny is offline   Responder Con Cita
  #12
Antiguo 13 de noviembre de 2018, 11:14
Josber
Moderador Global
Activista del Foro: Activista del Foro - Issue reason: Por aportar manuales y enriquecer  Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos 
Última Actividad 20.09.2026 12:17
Posts Posts: 883
Likes enviados Enviados: 418
Likes recibidos Recibidos: 492

lfortuny,

Las defines en ambos programas en la WORKING "Global", no en la WORKING del evento o del control, ¿no?

Un saludo.-
Josber is offline   Responder Con Cita
  #13
Antiguo 13 de noviembre de 2018, 20:24
Armando
Forero Junior
Última Actividad 27.08.2026 19:00
Posts Posts: 34
Likes enviados Enviados: 5
Likes recibidos Recibidos: 19

Citación del post de jmeza Ver Mensaje
La solución fue GLOBAL EXTERNAL
Agradecido.

Estimados tengo otra duda como solucionar algo similar a lo anterior, pero de Pawercobol a Cobol
Como estoy emigrando todo de Rmcobol85 a Powercobolv9
Y mis reportes están en Cobol con Cobview

INVOKE el reporte que necesito desde un Form
INVOKE pow-self "executesync" USING "Runcobol lisorden.cob".

Pero necesito que lleve una variable con un valor para que el programa receptor
Ejecute el reporte Ejemplo: Nro_factura

Un amigo hace un tiempo me dio la solución que creara un archivo y grabara el valor
El programa receptor lee la variable del archivo y ejecuta el programa.
Esto funciona ok, pero es algo adicional que hay que hacer.

Si alguien sabe de alguna solución para que me diga cómo hacerlo
Así me evite de hacer los reportes de nuevo
Saludos
Hola ,

seria :

Pasaje de par*metros externos a los programas:

Código COBOL:
  1. a)
  2.     linkage section.
  3.     01  var-param.
  4.         03 largo-param  pic 9(4) binary.
  5.         03 texto-param.
  6.             05 filler pic x occurs 1 to 100
  7.                 depending on largo-param.
  8.     PROCEDURE DIVISION using var-param.
  9.              
  10.     En este caso se recibe un texto de hasta 100 caracteres que se
  11.     puede manejar moviendolo a otro campo por ej:
  12.    
  13.         if largo-param not < 4
  14.             move texto-param(1:largo-param) to clavepan
  15.          
  16.     El llamado del programa en DOS es el siguiente:
  17.  
  18.         RUNCOBOL INT0001 A="01"
  19.          
  20.     donde lo que va entre comillas es el campo de 0 a 100 posiciones.
  21.    
  22.     b) se pueden con la misma filosof¡a traer variables de ambiente.
  23.     Podr¡amos por ejemplo cargar en una variable de ambiente (USUARIO)
  24.     el usuario de una red y la estaci¢n en la cual trabaja(PS)
  25.    
  26.     el llamado ser¡a el siguiente:
  27.    
  28.         RUNCOBOL PRUEBA A="%USUARIO%,%PS%"
  29.        
  30.     dentro del programa el par*metro se toma como uno, igual al ejemplo
  31.     anterior, pero buscamos los 2 par*metros que est*n separados por
  32.     comas con el comando UNSTRING.
  33.  
  34.         UNSTRING TEXTO-PARAM DELIMITED BY "," INTO
  35.             QUIEN, DONDE

espero que te sirva,
saludos
Armando
Armando 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 18:15.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.