Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Llamar a otro sistema

Estas en el tema de Llamar a otro sistema en el foro de SQL Server en Foros del Web. Buenas Tardes: Quería saber si al hacer un UPDATE(o INSERT) en una tabla llamar a un sistema externo. Se podría hacer con un triggers pero ...
  #1 (permalink)  
Antiguo 21/04/2010, 11:58
Avatar de mauro_bernal_rios  
Fecha de Ingreso: abril-2008
Ubicación: Mendoza
Mensajes: 88
Antigüedad: 16 años, 7 meses
Puntos: 2
Pregunta Llamar a otro sistema

Buenas Tardes:
Quería saber si al hacer un UPDATE(o INSERT) en una tabla llamar a un sistema externo.

Se podría hacer con un triggers pero no se como hacer que ejecute un sistema externo.

Anteriormente pregunte esto pero nadie me dio una mano
http://www.forosdelweb.com/f87/assem...2005-a-794697/

Yo lo quise hacer con assemblies pero no pude. Cualquier sugerencia es util..

Gracias.
__________________
Mauro Bernal
Sistemas y Web
http://maurobernal.com.ar
[email protected]
  #2 (permalink)  
Antiguo 21/04/2010, 12:08
 
Fecha de Ingreso: febrero-2009
Mensajes: 312
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Llamar a otro sistema

Hola

A qué te refieres con llamar a sistema externo?

- Si es otro SQL, la solución estaría en crear un servidor vinculado.
- Si es lo que pones en el otro POST yo no me complicaría la vida y utilizaría el "xp_cmdshell"

Saludos
  #3 (permalink)  
Antiguo 21/04/2010, 12:46
Avatar de mauro_bernal_rios  
Fecha de Ingreso: abril-2008
Ubicación: Mendoza
Mensajes: 88
Antigüedad: 16 años, 7 meses
Puntos: 2
Respuesta: Llamar a otro sistema

Cita:
Iniciado por ejbsoft Ver Mensaje
Hola

A qué te refieres con llamar a sistema externo?

- Si es otro SQL, la solución estaría en crear un servidor vinculado.
- Si es lo que pones en el otro POST yo no me complicaría la vida y utilizaría el "xp_cmdshell"

Saludos
La idea es llamar un sistema hecho en VB .NET.
Con respecto al xp_cmdshell probe llamar a un exe del VB.NET pero la consulta se queda detenida como esperando algo, y el exe no inicia. Probé colocar en el xp_cmdshell un comando de DOS (DIR) y alli me trajo como resultado los datos del directorio.
No se si con el xp_cmdshell podes ejecutar otro exe.?
__________________
Mauro Bernal
Sistemas y Web
http://maurobernal.com.ar
[email protected]
  #4 (permalink)  
Antiguo 21/04/2010, 13:14
 
Fecha de Ingreso: febrero-2009
Mensajes: 312
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Llamar a otro sistema

Ejemplo:

declare @cmd varchar(8000)
set @cmd = 'cmd.exe /C "c:\program files\program.exe "' + CAST(@Id as
varchar)
EXEC master..xp_cmdshell @cmd

Saludos
  #5 (permalink)  
Antiguo 21/04/2010, 14:32
Avatar de mauro_bernal_rios  
Fecha de Ingreso: abril-2008
Ubicación: Mendoza
Mensajes: 88
Antigüedad: 16 años, 7 meses
Puntos: 2
Respuesta: Llamar a otro sistema

Gracias por tu paciencia...
Dos cosas. Le mandas al exe un parametro @ID. No se si era un ej.

Otra cosa. Esto es lo que hago yo ahora:

Te cuento:

Código:
declare @cmd varchar(8000)


set @cmd = 'cmd.exe /C "c:\Ticket_Alarma.exe parametro'
EXEC master..xp_cmdshell @cmd
Nunca arranca visualmente el exe. Abrir el administrador de tareas y vi que esta abierto el proceso "Ticket_Alarma". Al matar el proceso vuelve la respuesta al SQL.

Pero si bien esta corriendo no lo veo visualmente a la aplicacion.
__________________
Mauro Bernal
Sistemas y Web
http://maurobernal.com.ar
[email protected]
  #6 (permalink)  
Antiguo 21/04/2010, 14:51
 
Fecha de Ingreso: febrero-2009
Mensajes: 312
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Llamar a otro sistema

No. Lo copié de un ejemplo...

Como lo expones está correcto.

Lo de no ver la aplicación puede ser por varios motivos:

Corre sobre IIS o está compilado directamente a .exe?

- Si corre sobre IIS, habría que mirar posibilidades del iexplore.exe...
- Si es .exe, se me ocurre que lo invoques por shell...

Saludos
  #7 (permalink)  
Antiguo 21/04/2010, 18:02
Avatar de mauro_bernal_rios  
Fecha de Ingreso: abril-2008
Ubicación: Mendoza
Mensajes: 88
Antigüedad: 16 años, 7 meses
Puntos: 2
Respuesta: Llamar a otro sistema

El sistema esta hecho en vb net. No corre bajo IIS.

-A que le llamas ejecutar desde "shell"

A esto cmd.exe /C "c:\Ticket_Alarma.exe parametro
Desde cmd lo puedo ejecutar sin ningun problema.

Probe llamar al notepad y otros mas. Y si bien aparece el proceso en el administrador de tareas no aparece el programa de forma visible.

Probe que al cargar la aplicacion se haga modal, visible y foco en ella. Pero no pasa nada.
__________________
Mauro Bernal
Sistemas y Web
http://maurobernal.com.ar
[email protected]

Etiquetas: llamar, sitemap
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:56.