![]() |
![]() |
| 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
|
||||
|
||||
|
Siguiendo con las recomendaciones, opte por hacerlo en un proc. almacenado, pero el inconveniente es que este "amigo" no me regresa más de 1 registro dentro de 1 select me marca error multiple rows in singleton select , desgraciadamente no encuentro por donde atacar mi problema, en las Vistas estaría excelente si me aceptaran parametros y en los SP me aceptan parametros pero NO regresan más de 1 registro a la vez, y con respecto al QrExpr no me funciona las condiciones siguiente:
__________________
"Hemos aprendido a volar como los Pájaros, y a nadar como los Peces, y todavía No aprendemos a vivir como Hermanos". Martin Luther King |
|
#2
|
|||
|
|||
|
Hola, eso de que el storeProcedure solo devuelve 1 registro no me suena...
Como hiciste la llamada al procedimiento? Select * from Nombre_StoreProcedure(param01, param02...) y en el procedimiento haces la busqueda con: FOR SELECT XXX FROM XXX WHERE XXX INTO XXX DO BEGIN...END SUSPEND; Te comento porque yo uso muchos procedimientos, tanto de seleccion como de manipulacion y los de seleccion traen bastante de bastante. espero haberme explicado y que te oriente un poco |
|
#3
|
|||
|
|||
|
PONGO EN NEGRITO LO QUE AGREGUE PARA QUE LO DISTINGAS: /*Select Maestro*/SELECT V.CLAVE,V.NOMBRE,C.CLIENTE,CC.NOMCLI, /*Primer SubConsulta*/CASE WHEN (FUD_ROUND((SELECT COALESCE(SUM(FUD_ROUND(IMPORTE,2)),0) FROM TCARGOS WHERE CAST('12.10.2006' AS DATE) - FECHAMOV <15 AND FECHAMOV<='12.10.2006' AND CARABO = 1 AND CLIENTE = C.CLIENTE AND CVEDOCUM <>'CREM') -/*Segunda SubConsulta*/(SELECT COALESCE(SUM(FUD_ROUND(IMPORTE,2)),0) FROM TABONOS WHERE CAST('12.10.2006' AS DATE) - FECHAFAC <15 AND FECHAMOV<='12.10.2006' AND CARABO = 2 AND CLIENTE = C.CLIENTE ),2)) = 0.010 THEN 0ELSE /*Primer SubConsulta*/(FUD_ROUND((SELECT COALESCE(SUM(FUD_ROUND(IMPORTE,2)),0) FROM TCARGOS WHERE CAST('12.10.2006' AS DATE) - FECHAMOV <15 AND FECHAMOV<='12.10.2006' AND CARABO = 1 AND CLIENTE = C.CLIENTE AND CVEDOCUM <>'CREM') -/*Segunda SubConsulta*/(SELECT COALESCE(SUM(FUD_ROUND(IMPORTE,2)),0) FROM TABONOS WHERE CAST('12.10.2006' AS DATE) - FECHAFAC <15 AND FECHAMOV<='12.10.2006' AND CARABO = 2 AND CLIENTE = C.CLIENTE ),2)) Ya lo probe y si funciona, esto si, habria que ver el rendimiento
...... |
|
#4
|
||||
|
||||
|
OK.... Gracias, sinceramente no sabía que se usaba los ciclos For..do para traerse más de 1 registro en un SP, voy a seguir probando....
Gracias!!!!
__________________
"Hemos aprendido a volar como los Pájaros, y a nadar como los Peces, y todavía No aprendemos a vivir como Hermanos". Martin Luther King |
|
#5
|
||||
|
||||
|
1000 disculpas compañeros cometí una gran burrada, no me fije que lo que quería filtrar eran las subconsultas y estas estaban dentro de un Select Maestro, por lo que el CASE si funciona en ese nivel, al mejor cazador se le va la liebre
![]() Gracias Edgar Perez(Alias el LOCOCHON) me hicistes ver mi Gran ERROR!!!! Gracias por sus respuestas compañeros
__________________
"Hemos aprendido a volar como los Pájaros, y a nadar como los Peces, y todavía No aprendemos a vivir como Hermanos". Martin Luther King |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| ¿Como hacer que LIKE no sea case-sensitive? | JuanBCT | SQL | 3 | 04-08-2006 21:50:28 |
| Problemas al usar case | David | OOP | 5 | 28-07-2006 17:14:19 |
| Subconsultas | c748a | SQL | 0 | 19-04-2005 13:41:23 |
| SubConsultas | Carlex | SQL | 3 | 05-08-2004 14:23:55 |
| Subconsultas en ORACLE | Investment | Oracle | 4 | 19-06-2003 00:50:04 |
|