OT - algo de SQL SERVER

937 views
Skip to first unread message

Miguel Canchas

unread,
Jan 6, 2011, 10:53:08 AM1/6/11
to publice...@googlegroups.com

He creado una funcion a la que hace referencia mi vista creada,

Si la ejecuto sola

SELECT * FROM [ESA].[dbo].[fx_valores_corte] (

   '01',

   '01',

   '20101101501491',

   '20512584366 ',

   'SO')

 

Me devuelve un valor que es el que necesito, el problema viene si lo integro a una consulta :

 

SELECT   datos1, dato2, datos3

         fx_valores_corte(a.cia_codcia, a.suc_codsuc,a.cte_codcte,a.AUX_CODAUX, a.tmo_codtmo)as saldo_corte,

      FROM    dbo.CUENTA_CORRIENTE_CTE a

INNER JOIN dbo.CUENTAS_COBRAR_DPC b

ON  b.CIA_CODCIA = a.CIA_CODCIA

 

Obviamente es solo una porcion del codigo y me sale este error :

 

 

Mens. 195, Nivel 15, Estado 10, Línea 17

'fx_valores_corte' no es un nombre de función integrada reconocido.

 

LA funcion esta creada y pertenece a la base de datos a consultar.

 

A que creen que se deba ¿?

 

MK

Ing.Daniel Bojorge

unread,
Jan 6, 2011, 10:54:01 AM1/6/11
to publice...@googlegroups.com
Si hacés un llamado a una función en SQL Server no podés ponerle el nombre solamente, tenés que poner el prefijo (por así decirlo) dbo. 

tu consulta sería dbo.fx_valores_corte

tratá de esa manera por favor.


Dios L@s Bendiga

Saludos,

Daniel (Con 1 Estrella DCE de Microsoft)
Nicaragua

"Si ustedes permanecen unidos a mí, y si permanecen fieles a mis enseñanzas, pidan lo que quieran y se les dará.
(Juan 15:7 DHH)
Bendito el varón que se fía en el SEÑOR, y cuya confianza es el SEÑOR.
(Jeremías 17:7 RV2000)

Miguel Canchas

unread,
Jan 6, 2011, 11:05:40 AM1/6/11
to publice...@googlegroups.com

Ya lo hice tambien asi y me arroja el mismo error, lo raro es que veo la función y lo acabo de crear recién….es como si mi función no existiera o esta siendo reconocida como tal por sqlserver.

 

Gracias por tu tiempo

 

MK

Ing.Daniel Bojorge

unread,
Jan 6, 2011, 11:08:54 AM1/6/11
to publice...@googlegroups.com
entonces  dbo.nombrebasededatos.nombrefuncion





Dios L@s Bendiga

Saludos,

Daniel (Con 1 Estrella DCE de Microsoft)
Nicaragua

"Si ustedes permanecen unidos a mí, y si permanecen fieles a mis enseñanzas, pidan lo que quieran y se les dará.
(Juan 15:7 DHH)
Bendito el varón que se fía en el SEÑOR, y cuya confianza es el SEÑOR.
(Jeremías 17:7 RV2000)



Miguel Canchas

unread,
Jan 6, 2011, 11:13:10 AM1/6/11
to publice...@googlegroups.com

YA lo hice tambien, probe con todas las combinaciones posibles y nada…

Ing.Daniel Bojorge

unread,
Jan 6, 2011, 11:15:26 AM1/6/11
to publice...@googlegroups.com

SELECT   datos1, dato2, datos3

         fx_valores_corte(a.cia_codcia, a.suc_codsuc,a.cte_codcte,a.AUX_CODAUX,a.tmo_codtmo)as saldo_corte,

      FROM    dbo.CUENTA_CORRIENTE_CTE a

INNER JOIN dbo.CUENTAS_COBRAR_DPC b

ON  b.CIA_CODCIA = a.CIA_CODCIA



Lo único que veo incorrecto es que luego de datos3 no va ninguna coma (,) pero me imagino que es error de copiado, ahora si tu función te regresa el nombre de una vista, ¿porqué la ponés en los datos a mostrar?


Dios L@s Bendiga

Saludos,

Daniel (Con 1 Estrella DCE de Microsoft)
Nicaragua

"Si ustedes permanecen unidos a mí, y si permanecen fieles a mis enseñanzas, pidan lo que quieran y se les dará.
(Juan 15:7 DHH)
Bendito el varón que se fía en el SEÑOR, y cuya confianza es el SEÑOR.
(Jeremías 17:7 RV2000)



Miguel Canchas

unread,
Jan 6, 2011, 11:22:40 AM1/6/11
to publice...@googlegroups.com

Lo único que veo incorrecto es que luego de datos3 no va ninguna coma (,) pero me imagino que es error de copiado, ahora si tu función te regresa el nombre de una vista, ¿porqué la ponés en los datos a mostrar?

 

No  te entiendo ¿??, lo que mi función hace es integrar una vista para poderle pasar parámetros y obtener un resultado que es un dato, y es el que tiene que mostrarse en la consulta, estoy modificando una consulta “grandota”, en la que usan cursores y es un chancho procesando demora como 30 minutos a mas….

Ing.Daniel Bojorge

unread,
Jan 6, 2011, 11:39:26 AM1/6/11
to publice...@googlegroups.com
No, pues no te sabría decir, yo tuve un problema similar con las funciones (cuando iniciaba a trabajar) y con esto se resolvió :D


Dios L@s Bendiga

Saludos,

Daniel (Con 1 Estrella DCE de Microsoft)
Nicaragua

"Si ustedes permanecen unidos a mí, y si permanecen fieles a mis enseñanzas, pidan lo que quieran y se les dará.
(Juan 15:7 DHH)
Bendito el varón que se fía en el SEÑOR, y cuya confianza es el SEÑOR.
(Jeremías 17:7 RV2000)



lm...@cclf.com.pe

unread,
Jan 6, 2011, 11:51:21 AM1/6/11
to publice...@googlegroups.com
pero tienes DBO quizas al instalar le dieron otro nombre de esquema .. averigua.

Miguel Canchas

unread,
Jan 6, 2011, 11:55:17 AM1/6/11
to publice...@googlegroups.com

Las otras funciones estan con dbo y también le pongo dbo y me sale esto

 

 

Mens. 4121, Nivel 16, Estado 1, Línea 13

No se encuentra la columna "dbo" o la función definida por el usuario o agregado "dbo.fx_valores_corte"; o bien, el nombre es ambiguo.

Miguel Canchas

unread,
Jan 6, 2011, 12:18:14 PM1/6/11
to publice...@googlegroups.com

Solucionado….

 

Lo que hice fue modificar la función y ponerle en la de “ Funciones con Valores Escalares”

 

Gracias…

 

 

MK

Ing.Daniel Bojorge

unread,
Jan 6, 2011, 2:18:14 PM1/6/11
to publice...@googlegroups.com
Excelente, hoy aprendí algo nuevo...



Dios L@s Bendiga

Saludos,

Daniel (Con 1 Estrella DCE de Microsoft)
Nicaragua

"Si ustedes permanecen unidos a mí, y si permanecen fieles a mis enseñanzas, pidan lo que quieran y se les dará.
(Juan 15:7 DHH)
Bendito el varón que se fía en el SEÑOR, y cuya confianza es el SEÑOR.
(Jeremías 17:7 RV2000)



Reply all
Reply to author
Forward
0 new messages