Ir al Portal Ir al Foro
 

Ejecucion de comandos SQL desde Cobol

Todo lo relacionado con Cobol en ambientes batch, online(CICS,IMS) con bases de datos(DB2, Adabas) etc.

Ejecucion de comandos SQL desde Cobol

Notapor pilarcarmenate » 22 Feb 2010, 06:55

Hola:

Necesitaría saber, en caso de ser posible, cómo ejecutar un comando SQL desde un programa cobol, en este caso desde un procedimiento almacenado. El comando en cuestion es el START PROCEDURE.

Muchas gracias y un saludo.
pilarcarmenate
Usuario
Usuario
 
Mensajes: 4
Registrado: 12 Feb 2010, 09:13
País: España
Ciudad: Soraluce
Ocupación: Analista funcional

Re: Ejecucion de comandos SQL desde Cobol

Notapor Horacio Villa » 27 Feb 2010, 10:43

No me imagino la necesidad de ejecutar ese comando desde un programa aplicativo.
Se puede hacer muy fácilmente en REXX , pero no me imagino la necesidad de ejecutar ese comando desde un programa aplicativo.
Seguro que lo que necesitas es el comando START PROCEDURE y no el llamado al Procedure?
HV
Avatar de Usuario
Horacio Villa
Colaborador avanzado
Colaborador avanzado
 
Mensajes: 136
Registrado: 04 Dic 2003, 13:11
País: Argentina
Ciudad: Buenos Aires
Ocupación: Auditor de sistemas certificado

Re: Ejecucion de comandos SQL desde Cobol

Notapor pilarcarmenate » 01 Mar 2010, 03:08

Hola:

La necesidad viene dada porque en caso de casque de un PA este se queda colgado y la única forma que conozco de funcione nuevamente es resetearlo con D.7 o recompilarlo. Si hubiera forma de ejecutar esta sentencia desde otro PA, podría aprovechar que Java sabe del casque para levantarlo automáticamente.

Muchas gracias y un saludo.
pilarcarmenate
Usuario
Usuario
 
Mensajes: 4
Registrado: 12 Feb 2010, 09:13
País: España
Ciudad: Soraluce
Ocupación: Analista funcional

Re: Ejecucion de comandos SQL desde Cobol

Notapor Horacio Villa » 03 Mar 2010, 18:13

Comandos DB2 se pueden ejecutar:
- desde la consola
- desde DB2I
- vía IFI calls (ver DB2 Administration Guide Appendix1.5.7 - habla sólo de Assembler y PL/I)
- via el sample Stored Procedure DSN8ED2 (requiere C instalado)
- una sesión de DSN bajo TSO
- con CLIST o REXX

Para mi lo mas sencillo sería ejecutar el comando llamando a un REXX o con un job que llame al DSN bajo TSO.
BAJO TSO:
//PASO01 EXEC PGM=IKJEFT01,DYNAMNBR=100
//STEPLIB DD DISP=SHR,DSN=xxxx (si hace falta)
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DSN)
-START PROCEDURE (schema.name) (ver sintaxis del comando)
END
/*

Con REXX
/* REXX */
arg ssid proc
queue "-START PROCEDURE("proc")"
queue "END"
Address TSO "DSN SYSTEM ("ssid")"
exit

Claro, a esto le faltan validaciones, atrapar el resultado del comando, .... o sea, es bien básico en lo indispensable.
HV
Avatar de Usuario
Horacio Villa
Colaborador avanzado
Colaborador avanzado
 
Mensajes: 136
Registrado: 04 Dic 2003, 13:11
País: Argentina
Ciudad: Buenos Aires
Ocupación: Auditor de sistemas certificado

Re: Ejecucion de comandos SQL desde Cobol

Notapor pilarcarmenate » 04 Mar 2010, 02:47

Hola HV,

Muchísimas gracias por tu ayuda. Me quedaré con la opción del job, la domino mejor. Cuando lo pruebe te cuento.

Un afectuoso saludo, Pilar.
pilarcarmenate
Usuario
Usuario
 
Mensajes: 4
Registrado: 12 Feb 2010, 09:13
País: España
Ciudad: Soraluce
Ocupación: Analista funcional


Volver a Cobol

cron

MKPortal ©2003-2008 mkportal.it