Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-05-2014
gdlrinfo gdlrinfo is offline
Miembro
 
Registrado: may 2007
Posts: 131
Poder: 18
gdlrinfo Va por buen camino
llamar un stored procedure de sql desde delphi

Hola amigos yo tengo creado un estored procedure en sql que se llama proceso.sql y esta asi como lo muestro aqui

///////

use
interfazobrassociales
--- solo pasa a esa base de datos
Exec Intesinf.Control_Interfaz 9699

Exec Intesinf.pasar_liquidacion_a_plataforma 9699, 0

Exec Intesinf.control_liquidaciones_Resumido 9699

commit

---rollback

exec control_liquidaciones_resumido '19/05/2014'

//////

Mi pregunta es puedo llamarlo desde delphi sin tener que hacerlo por sql y como seria en este caso tambien necesitaria que antes de ejecutarlo se pudiera modificar la fecha por la actual y en algunos casos los numeros liquidaciones desde ya muchas gracias !
Responder Con Cita
  #2  
Antiguo 20-05-2014
Avatar de TiammatMX
TiammatMX TiammatMX is offline
Miembro
 
Registrado: jun 2006
Ubicación: Universo Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Puebla\Heróica Puebla de Zaragoza\Jardines de San Manuel\Home
Posts: 746
Poder: 19
TiammatMX Va camino a la fama
Cita:
Empezado por gdlrinfo Ver Mensaje
...Mi pregunta es puedo llamarlo desde delphi sin tener que hacerlo por sql...
Y la pregunta sería, ¿cómo piensas recuperar los datos que arroja como resultado el SP? Necesariamente deberías usar TADOQuery o TADOStoredProcedure para invocar tu SP.


Cita:
Empezado por gdlrinfo Ver Mensaje
...necesitaria que antes de ejecutarlo se pudiera modificar la fecha por la actual y en algunos casos los numeros liquidaciones...
Sencillo. Cosntruye una cadena que pondrás como contenido del SQL.Text de tu componente TADOQuery o TADOStoredProcedure, y ahí mismo le "pegas" la fecha y el número que necesites procesar...

Con éso tienes para comenzar.
__________________
Felipe Eduardo Ortiz López. Delphi programmers does it recursively...

"Un programador, es un creador de universos en donde sólo él es responsable. Universos de complejidad prácticamente ilimitada que se puede crear en forma de programas de ordenador." - Joseph Weizenbaum.

Témele a los profetas... y a aquellos que están listos para morir por "la verdad", ya que como regla general hacen morir a muchos otros con ellos, frecuentemente antes que ellos, y a veces en lugar de ellos. — Umberto Eco
Responder Con Cita
  #3  
Antiguo 20-05-2014
gdlrinfo gdlrinfo is offline
Miembro
 
Registrado: may 2007
Posts: 131
Poder: 18
gdlrinfo Va por buen camino
Gracias por la respuesta

hola amigo gracias por tu pronta respuesta te comento que los datos en este momento me los arroja sql en su ventana de consultas yo quisiera poder hacerlo desde delphi pero no logro darme cuenta como tendrias algun ejemplo ? gracias
Responder Con Cita
  #4  
Antiguo 20-05-2014
Avatar de ginkaku
ginkaku ginkaku is offline
Miembro
NULL
 
Registrado: nov 2012
Posts: 59
Poder: 12
ginkaku Va por buen camino
Perdon no entiendo.
Tienes una serie de consultas en sql y deseas hacer todo esto desde delphi?? Es asi?
Si fuera el caso, yo he colocado un tutorial en el club sobre el uso de SQl Server y Delphi, donde se ve como mostrar el resultado de consultas y ejecutar prodecimientos almacenados, te recomiendo que lo revises y ojala te ayude.
De igual manera hay gran información sobre esto en el FTP en la seccion de manuales
Responder Con Cita
  #5  
Antiguo 20-05-2014
gdlrinfo gdlrinfo is offline
Miembro
 
Registrado: may 2007
Posts: 131
Poder: 18
gdlrinfo Va por buen camino
Cita:
Empezado por ginkaku Ver Mensaje
Perdon no entiendo.
Tienes una serie de consultas en sql y deseas hacer todo esto desde delphi?? Es asi?
Si fuera el caso, yo he colocado un tutorial en el club sobre el uso de SQl Server y Delphi, donde se ve como mostrar el resultado de consultas y ejecutar prodecimientos almacenados, te recomiendo que lo revises y ojala te ayude.
De igual manera hay gran información sobre esto en el FTP en la seccion de manuales
Si amigo asi es tal cual lo describes miro la sección a ver que encuentro gracias como siempre
Responder Con Cita
  #6  
Antiguo 23-05-2014
gdlrinfo gdlrinfo is offline
Miembro
 
Registrado: may 2007
Posts: 131
Poder: 18
gdlrinfo Va por buen camino
Problemas

a ver chicos si me puedo explicar bien porque he intentando y no logro resolverlo pongo un ejemplo

yo abro el SQL Server Management Studio me conecto al server que uso y ahí voy a nueva consulta y por ejemplo pongo en la ventana de consultas lo siguiente ....

use interfazobrassociales

Exec Intesinf.Control_Interfaz 8888

Donde interfazobrassociales es la base de datos y el exec... es la consulta que me la muestra abajo en la ventana de consultas hasta ahí todo bien yo quiero hacer exactamente lo mismo pero desde Delphi y no logro entender como hacerlo desde ya muchas gracias
Responder Con Cita
  #7  
Antiguo 03-06-2014
gdlrinfo gdlrinfo is offline
Miembro
 
Registrado: may 2007
Posts: 131
Poder: 18
gdlrinfo Va por buen camino
Ya lo solucione

Hola amigos ya solucione lo del stored asi lo llamo

Código Delphi [-]
proc.ProcedureName := 'Intesinf.Control_Interfaz';
Proc.Parameters.CreateParameter('@IdLiquidacion',ftInteger,pdInput,0,0);
Proc.Parameters.ParamByName('@IdLiquidacion').Value:= '9860';
Proc.Open;

pero tengo otro inconveniente este me devuelve distintos valores por sql en 4 bloques quisiera saber como ver los 4 bloques en Delphi ya que solo me muestra el primer bloque dejo una foto para poder mostrar lo que digo gracias saludos !!!

el 4to bloque es el que tiene los datos que necesito gracias
Imágenes Adjuntas
Tipo de Archivo: jpg LLAMADO.jpg (12,0 KB, 12 visitas)
Responder Con Cita
  #8  
Antiguo 17-06-2014
Disnier Disnier is offline
Registrado
NULL
 
Registrado: mar 2012
Posts: 1
Poder: 0
Disnier Va por buen camino
asi es como se llama desde delphi

suponiendo que ya tienes un ADOConnection1 a la base de datos que esta trabajando.

tienes que tener un ADOStoredProc que se conecte a ese procedemiento almacenado y luegos llamas a ese procedimiento almacenado desde delphi pasando los parametros que tienes.. esto serai un ejemplo asi.. por ejemplo esto es un procedimiento almacenado que me inserta en una tabla pasando esto paramentros que cojo de un formulario de delphi asi es como lo hago.
Código Delphi [-]
      DataModule2.ADOStoredProcInsertarTestadoMed.Connection:= DataModule1.ADOConnection1; // para conectarme a la base de dato porque lo tengo dinamico
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[0].Parameters.ParamValues['@IdTestMed']:= co;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[1].Parameters.ParamValues['@Nome']:=trim(suiEdit1.Text);
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[2].Parameters.ParamValues['@Edad']:=suiEdit5.Text;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[3].Parameters.ParamValues['@IdS']:=suiDBLookupComboBox1.KeyValue;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[4].Parameters.ParamValues['@Data']:=DateTimePicker2.Date;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[5].Parameters.ParamValues['@CantDia']:=suiEdit4.Text;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[6].Parameters.ParamValues['@NRHC']:=suiEdit3.Text;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[7].Parameters.ParamValues['@IdTestServ']:=suiDBLookupComboBox2.KeyValue;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[8].Parameters.ParamValues['@Empresa']:=trim(suiEdit7.Text);
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[9].Parameters.ParamValues['@Diag']:=trim(suiEdit2.Text);
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[10].Parameters.ParamValues['@Recomienda']:=trim(suiMemo1.Text);
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[11].Parameters.ParamValues['@Cod_Medico']:=Form12.cod;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[12].Parameters.ParamValues['@Ver']:=val;
      DataModule2.ADOStoredProcInsertarTestadoMed.Open; // mando ejecutar el procedimiento almacenado
      DataModule2.ADOStoredProcInsertarTestadoMed.Close;// lo cierro

asi es como lo hago.. los insert update, select y delete espero que me entiendas.. saludos disnier

Última edición por ecfisa fecha: 17-06-2014 a las 05:59:55. Razón: Etiquetas [Delphi] [/Delphi]
Responder Con Cita
  #9  
Antiguo 17-06-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Disnier, bienvenido a Club Delphi

Por favor cuando incluyas código en los mensajes usa TAG's, para darle mas legibilidad, esta imágen explica el uso:



Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #10  
Antiguo 17-06-2014
gdlrinfo gdlrinfo is offline
Miembro
 
Registrado: may 2007
Posts: 131
Poder: 18
gdlrinfo Va por buen camino
Adostored

Cita:
Empezado por Disnier Ver Mensaje
suponiendo que ya tienes un ADOConnection1 a la base de datos que esta trabajando.

tienes que tener un ADOStoredProc que se conecte a ese procedemiento almacenado y luegos llamas a ese procedimiento almacenado desde delphi pasando los parametros que tienes.. esto serai un ejemplo asi.. por ejemplo esto es un procedimiento almacenado que me inserta en una tabla pasando esto paramentros que cojo de un formulario de delphi asi es como lo hago.
Código Delphi [-]
      DataModule2.ADOStoredProcInsertarTestadoMed.Connection:= DataModule1.ADOConnection1; // para conectarme a la base de dato porque lo tengo dinamico
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[0].Parameters.ParamValues['@IdTestMed']:= co;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[1].Parameters.ParamValues['@Nome']:=trim(suiEdit1.Text);
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[2].Parameters.ParamValues['@Edad']:=suiEdit5.Text;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[3].Parameters.ParamValues['@IdS']:=suiDBLookupComboBox1.KeyValue;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[4].Parameters.ParamValues['@Data']:=DateTimePicker2.Date;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[5].Parameters.ParamValues['@CantDia']:=suiEdit4.Text;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[6].Parameters.ParamValues['@NRHC']:=suiEdit3.Text;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[7].Parameters.ParamValues['@IdTestServ']:=suiDBLookupComboBox2.KeyValue;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[8].Parameters.ParamValues['@Empresa']:=trim(suiEdit7.Text);
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[9].Parameters.ParamValues['@Diag']:=trim(suiEdit2.Text);
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[10].Parameters.ParamValues['@Recomienda']:=trim(suiMemo1.Text);
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[11].Parameters.ParamValues['@Cod_Medico']:=Form12.cod;
      DataModule2.ADOStoredProcInsertarTestadoMed.Parameters[12].Parameters.ParamValues['@Ver']:=val;
      DataModule2.ADOStoredProcInsertarTestadoMed.Open; // mando ejecutar el procedimiento almacenado
      DataModule2.ADOStoredProcInsertarTestadoMed.Close;// lo cierro

asi es como lo hago.. los insert update, select y delete espero que me entiendas.. saludos disnier
Si lo del ADOStored ya esta puesto si miras figura como Proc, igual lo que yo quiero hacer es que en sql me lo tira como en distintas grillas yo quiero ver todas las grillas en una en Delphi gracias saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Llamar a un stored procedure de mysql y recuperar resultados tksko Conexión con bases de datos 4 05-11-2008 17:26:24
crear Stored Procedure desde delphi Milperrimo Firebird e Interbase 4 03-02-2008 19:52:53
Llamar Un Stored Procedure Desde Un Trigger ibuser Firebird e Interbase 3 26-08-2004 10:51:48
Llamar stored procedure con BDE Ricardo Alfredo Conexión con bases de datos 3 12-09-2003 04:09:31
Ver resultado de un Stored Procedure desde Delphi ElCherchu Conexión con bases de datos 6 10-06-2003 10:51:55


La franja horaria es GMT +2. Ahora son las 01:36:20.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi