Campo calculado

07/07/2004 - 19:54 por Alma Alicia Gutierrez | Informe spam
Estimados Amigos

estoy tratando de crear un campo calculado en una consulta de SQL server...
pero me envia un error, lo que intento hacer es calculara la mora de una
factura una vez que se cumple su fecha de vigencia: esto en una consulta...

SiInm(Isnull((24/100)/365*(getdate()-([fact_fechavenc]))*[fact_sub_total]),0
,(24/100)/365*(gedate()-([fact_fechavenc]))*[fact_sub_total])

Preguntas similare

Leer las respuestas

#1 Liliana Sorrentino
07/07/2004 - 21:08 | Informe spam
Hola Alma,
El resultado de una operación entre fechas es un dato de tipo fecha
(getdate()-([fact_fechavenc]))
que no es válido para una multiplicación.
Te sugiero que lo reemplaces por DATEDIFF(dd, fact_fechavenc, getdate())
Supongo que te referís a ese error, si no es así, por favor danos más
información.
Saludos... Liliana.

"Alma Alicia Gutierrez" escribió en el mensaje
news:
Estimados Amigos

estoy tratando de crear un campo calculado en una consulta de SQL


server...
pero me envia un error, lo que intento hacer es calculara la mora de una
factura una vez que se cumple su fecha de vigencia: esto en una


consulta...




SiInm(Isnull((24/100)/365*(getdate()-([fact_fechavenc]))*[fact_sub_total]),0
,(24/100)/365*(gedate()-([fact_fechavenc]))*[fact_sub_total])


Respuesta Responder a este mensaje
#2 Alma Alicia Gutierrez
07/07/2004 - 21:39 | Informe spam
Estimada Lilia.
use datadiff, pero me sigue mandando error de ADo, no encuentra la funcion
IIF.. ... que estoy haciendo mal?\\
Pueden ayudarme.
IIF(ISNULL(24 / 100 / 365 * DATEDIFF(dd, GETDATE(), F.Fact_FechaVenc) *
F.Fact_Sub_total, 0), 0, 24 / 100 / 365 * DATEDIFF(dd, GETDATE(),
F.Fact_FechaVenc) * F.Fact_Sub_total)
"Liliana Sorrentino" escribió en el mensaje
news:%
Hola Alma,
El resultado de una operación entre fechas es un dato de tipo fecha
(getdate()-([fact_fechavenc]))
que no es válido para una multiplicación.
Te sugiero que lo reemplaces por DATEDIFF(dd, fact_fechavenc, getdate())
Supongo que te referís a ese error, si no es así, por favor danos más
información.
Saludos... Liliana.

"Alma Alicia Gutierrez" escribió en el mensaje
news:
> Estimados Amigos
>
> estoy tratando de crear un campo calculado en una consulta de SQL
server...
> pero me envia un error, lo que intento hacer es calculara la mora de una
> factura una vez que se cumple su fecha de vigencia: esto en una
consulta...
>
>



SiInm(Isnull((24/100)/365*(getdate()-([fact_fechavenc]))*[fact_sub_total]),0
> ,(24/100)/365*(gedate()-([fact_fechavenc]))*[fact_sub_total])
>
>


Respuesta Responder a este mensaje
#3 Gustavo Larriera [MVP SQL]
07/07/2004 - 21:48 | Informe spam
IIF no existe en SQL Server, debes usar CASE. Un ejemplo sacado de los Books
Online:

SELECT Category CASE type
WHEN 'popular_comp' THEN 'Popular Computing'
WHEN 'mod_cook' THEN 'Modern Cooking'
WHEN 'business' THEN 'Business'
WHEN 'psychology' THEN 'Psychology'
WHEN 'trad_cook' THEN 'Traditional Cooking'
ELSE 'Not yet categorized'
END,
CAST(title AS varchar(25)) AS 'Shortened Title',
price AS Price
FROM titles




Gustavo Larriera
Uruguay LatAm
http://sqljunkies.com/weblog/gux/
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Alma Alicia Gutierrez" wrote in message
news:%
Estimada Lilia.
use datadiff, pero me sigue mandando error de ADo, no encuentra la funcion
IIF.. ... que estoy haciendo mal?\\
Pueden ayudarme.
IIF(ISNULL(24 / 100 / 365 * DATEDIFF(dd, GETDATE(), F.Fact_FechaVenc) *
F.Fact_Sub_total, 0), 0, 24 / 100 / 365 * DATEDIFF(dd, GETDATE(),
F.Fact_FechaVenc) * F.Fact_Sub_total)
"Liliana Sorrentino" escribió en el


mensaje
news:%
> Hola Alma,
> El resultado de una operación entre fechas es un dato de tipo fecha
> (getdate()-([fact_fechavenc]))
> que no es válido para una multiplicación.
> Te sugiero que lo reemplaces por DATEDIFF(dd, fact_fechavenc, getdate())
> Supongo que te referís a ese error, si no es así, por favor danos más
> información.
> Saludos... Liliana.
>
> "Alma Alicia Gutierrez" escribió en el


mensaje
> news:
> > Estimados Amigos
> >
> > estoy tratando de crear un campo calculado en una consulta de SQL
> server...
> > pero me envia un error, lo que intento hacer es calculara la mora de


una
> > factura una vez que se cumple su fecha de vigencia: esto en una
> consulta...
> >
> >
>



SiInm(Isnull((24/100)/365*(getdate()-([fact_fechavenc]))*[fact_sub_total]),0
> > ,(24/100)/365*(gedate()-([fact_fechavenc]))*[fact_sub_total])
> >
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida