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
|
|||
|
|||
Procedimiento con condiciones dinamicas
Estimados, utilizo Firebird 2.5, y tengo el siguiente procedimiento almacenado llamado inventario_resumen, con la variable de entrada bodegas de tipo varchar:
el cual lo llamo se la siguiente forma:
donde bodegas tienes el formato por ejemplo: (1,2,5), que serian los id de las bodegas a consultar. EL problema es que la condiciones de busqueda las hago al resultado de la consulta al agregarle por ejemplo estas lineas a la llamada del procedimiento.
... pero de igual forma el procedimiento recorre cada uno de los registros de la tabla "insumos_servicios" He pensado en agregar mas variables de entraqda al procedimiento, tal que las condiciones se realicen directamente a la consulta original y así evitar tener que procesar todos los registros de la tabla "insumos_servicios" Hasta aquí todo va bien, pero surge un problema, que ocurre si el usuario desea listar todos los registros, las nuevas condiciones no podría sacarlas del query original, y estaría obligado siempre tener alguna condicioin, ya que no podria, por ejemplo, quitar la linea del procedimiento
Espero se entienda y me puedan ayudar a resolver esto. Gracias |
#2
|
||||
|
||||
¿Por qué usas 'execute statement'?
|
#3
|
|||
|
|||
porque el usuario puede elegir revisar los items de mas de una bodega, de esta forma la condición es IN, y la forma de ingresar este parámetro al procedimiento es por una cadena, y si intento ejecutar el procedimiento con el parametro de entrada "bodega" directamente me arroja un error, por esto ejecuto cadena completa incluyendo la condicion IN como una gran cadena.
Pero finalmente esto no me arroja ningun problema. He pensado en hacer dos procedimientos, uno con condiciones y otro sin... espero poder resolverlo de una mejor manera. Otra idea es pasar el query completo como una variable de entrada, que incluya las condiciones que quiera y ejecutarlo todo como una gran cadena... sera la mejor ? Gracias |
#4
|
||||
|
||||
Pienso que no es la forma de hacer eso. Es como si se pincha la rueda del coche y en lugar de arreglarla le haces un "invento"
|
#5
|
|||
|
|||
completamente de acuerdo, como lo harías??
|
#6
|
||||
|
||||
Pues como tú mismo has indicado, pasándole los parámetros necesarios.
Así, a simple vista, no creo que necesites el "execute statement". |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Fecha con condiciones | rufo | Varios | 17 | 07-04-2010 00:44:51 |
Paradox--->Condiciones | lurad | Tablas planas | 2 | 19-09-2006 20:45:40 |
Condiciones | Carlex | SQL | 7 | 09-08-2004 21:15:33 |
Condiciones en SQL | agova | SQL | 5 | 20-07-2004 01:28:24 |
condiciones en interbase | squenda | Conexión con bases de datos | 5 | 29-03-2004 02:54:49 |
|