Fix con tabelle SQLServer 2005 express non funziona

sabato 16 gennaio 2010 - 17.48

Mau67 Profilo | Expert

Ciao al forum, ho il seguente problema ho un progetto sviluppato in visual studio 2008 e usavo tabelle in access, adesso ho trasferito i dati su tabelle SQLServer 2005 express e un comando sql in una maschera non mi funziona più perche non supporta il FIX con cosa posso sostituirlo?

Vi posto il codice:

strSQL = "SELECT AttoOperativa.ID, ((Sum(Servizi.Aca)) + (Fix(((Sum(Servizi.Mca)) + Fix(((Sum(Servizi.Gca)) / 30))) / 12))) AS Aca," & _
"(((((Sum(Servizi.Mca)) + (Fix(((Sum(Servizi.Gca)) / 30))))) / 12 - (Fix(((Sum(Servizi.Mca)) + (Fix((Sum(Servizi.Gca)) / 30))) / 12))) * 12) AS Mca," & _
"((((Sum(Servizi.Gca)) / 30) - Fix(((Sum(Servizi.Gca)) / 30))) * 30) AS Gca"

Non so con cosa sostituire il FIX una mano perfavore grazie in anticipo.

Mau67

lbenaglia Profilo | Guru

>Ciao al forum, ho il seguente problema ho un progetto sviluppato
>in visual studio 2008 e usavo tabelle in access, adesso ho trasferito
>i dati su tabelle SQLServer 2005 express e un comando sql in
>una maschera non mi funziona più perche non supporta il FIX con
>cosa posso sostituirlo?

Ciao Maurizio,

Puoi utilizzare la funzione CEILING:
http://msdn.microsoft.com/en-us/library/ms189818.aspx

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

Mau67 Profilo | Expert

Non ho capito come utilizzarla, puoi modificarmi quella riga di codice che ti ho postato? te ne sarei grato.

Grazie ciao
Mau67

lbenaglia Profilo | Guru

>Non ho capito come utilizzarla, puoi modificarmi quella riga
>di codice che ti ho postato? te ne sarei grato.
Sostituisci la stringa FIX con CEILING.

>Grazie ciao
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

Mau67 Profilo | Expert

CEILING non si comporta come il fix , praticamente dove ho sostituito FiX con CEILING il risultato mi da 0 (zero) nella somma.

Ti faccio un esempio.

Praticamente in quella porzione di select che ho postato il risultato delle somme in anni mesi e giorni con la FIX è il seguente:

ANNI = 7 MESI = 6 GIORNI = 9 <<<<<< questo è il risultato giusto

Invece avendo sostituito la FIX con CEILING mi restituisce questo risultato:

ANNI = 7 MESI = 0 GIORNI = 0 <<<<<< questo è il risultato sbagliato perche dove c'è CEILING resituisce 0.

Cosa posso fare? Grazie Ciao

Mau67
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5