COBOL Foro

COBOL Foro (https://www.cobolforo.es/index.php)
-   NetCOBOL for Windows (https://www.cobolforo.es/forumdisplay.php?f=2)
-   -   [Sintaxis] Obtener los parámetros pasados ​​al ejecutar (https://www.cobolforo.es/showthread.php?t=1147)

diegodm 18 de mayo de 2020 21:32

Obtener los parámetros pasados ​​al ejecutar
 
En Java puedo obtener los parámetros pasados ​​al ejecutar. ¿Cómo me subo a Cobol?
Ej: app.exe "p1" "p2" "p3"
¿Obtener los parámetros p1 p2 y p3 dentro de Cobol?

Português Brasil
No java consigo pegar os parâmetros passado ao executar. Como faço para pegar no Cobol?
Ex: app.exe "p1" "p2" "p3"
Pegar os parametros p1 p2 e p3 dentro do Cobol?

JCantero 23 de mayo de 2020 14:28

La cuestion que propones la planteas para NetCobol y no se si funcionara igual que en rm/cobol

Yo utilizo estos metodos:

Cuando quieres pasar parametros a un programa cobol desde un script o linea de comandos se lo hago asi:

Código Bash:
  1. runcobol programa-cobol    -a="parametro1; parametro2; parametro3"

Y desde un programa java llamo a programas cobol asi:


Código Java:
  1. String parametrosx="-a="+parametro1+";"+parametro2+";"+parametro3;
  2.        
  3. try {
  4.         String [] cmd = {"runcobol", "programacobol", parametrosx};
  5.            
  6.     Process p = Runtime.getRuntime().exec(cmd);
  7.  
  8.         if(!p.waitFor(180, TimeUnit.SECONDS)) {
  9.                     p.destroy();
  10.             }
  11.                
  12.            
  13.                 System.out.println (ioe);

Y controlando siempre todas las excepciones.

Kuk 23 de mayo de 2020 19:00

@JCantero, yo creo que @diegodm quiere saber cómo recuperar los parámetros en el programa Cobol. Y esto, creo que depende del fabricante.

JCantero 23 de mayo de 2020 20:46

@Kuk, puede ser que si.

Para capturar los parametros pasados desde un script o un programa que llama a un programa de rm/cobol o acucobol seria asi:

Código COBOL:
  1.  
  2.       * Se define los parametros a capturar
  3.        01 datos-parametros.                                                                        
  4.             05 parametro1       pic x(20).
  5.             05 parametro2       pic x(20).
  6.             05 parametro3       pic x(20).
  7.  
  8.  
  9.  
  10.      *se define el paso de parametros
  11.        linkage section.
  12.        01 lk-parametros.
  13.           03 lk-long-param      pic s9(4) binary.
  14.           03 lk-misdatos.
  15.              05 lkcaracter pic x occurs 0 to 400 times
  16.                       depending on lk-long-param.
  17.  
  18.  
  19.        procedure division using lk-parametros.
  20. ------*                                                                        
  21.        programa section.                                                        
  22.                                                                                
  23.        programa-prin.
  24.      * aqui se capturan los parametros                                                          
  25.            unstring lk-misdatos delimited by ';'
  26.            into lk-parametro1
  27.                 lk-parametro2
  28.                 lk-parametro3


La franja horaria es GMT +1. Ahora son las 16:00.

Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2021, Jelsoft Enterprises Ltd.