![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
...
Pero dejaria de funcionarme el Stored Procedure, ya que esta hecho para recibir o no tal parametro.
Yanina Genia Última edición por YaninaGenia fecha: 19-07-2006 a las 20:00:54. |
|
#2
|
||||
|
||||
|
Umm tienes razon en eso.
Si es en sql Server puedes en la creacion del stored procedure decirle a el parametro que si no viene ningun valor tome uno por defecto. Create procedure dbo.FiltersResultOrden (@client int, @createdDate datetime = '20000101', @deliverDate datetime = '20000101', @sendDate datetime = '20000101') AS SELECT * FROM Orden WHERE ((cliente = @client)or(@client = 0)) AND ((fechaCreada = @createdDate)or(@createdDate is null)) AND ((fechaEnviada = @deliverDate)or(@deliverDate is null)) AND ((fechaEntregada = @sendDate)or(@sendDate is null)) Pregunta, en esos campos se pueden almacenar valores nulos.?
__________________
Optimus Prime |
|
#3
|
||||
|
||||
|
tambien puedes igualar el valor del parametro a null.
__________________
Héctor Geraldino Software Engineer |
|
#4
|
|||
|
|||
|
....
No puedo preguntarle por null ya que no se pueden enviar parametros nulos al stored procedure, si le envio ese valor me da un cartel de error diciendo que faltaron esos parametros.
Yanina Genia |
|
#5
|
|||
|
|||
|
Cita:
No me va a servir porque el SP va a buscar las fechas con esos valores que yo le asigne en lugar de NO buscar. Cita:
Yanina Genia |
|
#6
|
||||
|
||||
|
Yanina:
Cuando asignas un valor a un parametro al momento de declararlo, automaticamente el parametro es considerado opcional, por lo que no es necesario pasarle valores al parametro (o pasarle un valor nulo), y el procedimiento se ejecutara sin problemas. En el ejemplo que plantee, puedes verificar que tiene justamente ese comportamiento. Si quieres prueba desde el query analyzer con: EXEC FiltersResultOrden idcliente, null, fecha EXEC FiltersResultOrden idcliente, fecha EXEC FiltersResultOrden idcliente, null, null, fecha Todos deben ejecutarse correctamente. Lo mismo sucederia en el desarrollo, cuando no le especifiques un valor al parametro, simplemente el valor para el procedimiento sera null, por lo que las condiciones especificadas en el WHERE se ejecutaran de la forma deseada.
__________________
Héctor Geraldino Software Engineer |
|
#7
|
|||
|
|||
|
Hector tenias razon, lo que hice para arreglar mi aplicacion fue modificar el Query del stored procedure:
Código:
ALTER PROCEDURE dbo.FiltersResultOrden (@client int, @createdDate varchar(10) = null, @deliverDate varchar(10) = null, @sendDate varchar(10) = null) AS SELECT * FROM Orden WHERE ((cliente = @client)or(@client = 0)) AND ((fechaCreada = @createdDate)or(@createdDate is null)) AND ((fechaEnviada = @deliverDate)or(@deliverDate is null)) AND ((fechaEntregada = @sendDate)or(@sendDate is null)) Yanina Genia |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| pasar parametro | pharaonhx | Conexión con bases de datos | 3 | 10-05-2006 19:02:50 |
| pasar parametro con un grid | pharaonhx | Varios | 1 | 10-04-2005 20:21:56 |
| Pasar un parametro a Rave Reports | hook | Impresión | 1 | 08-06-2004 19:12:21 |
| pasar un string date a un campo datetime de una tabla | Giniromero | Conexión con bases de datos | 8 | 12-02-2004 14:58:10 |
| Pasar parametro a un procedimiento? | danytorres | Varios | 2 | 12-12-2003 09:55:09 |
|