Newsgroup: it.comp.appl.access
Titolo: Problema inserimento numeri decimali

Salve a tutti, ho un grave problema su Access 2003.
Il problema è nato dopo un aggiornamento del server remoto su cui
girano le mie pagine web.
Quando eseguo l'inserimento di un valore numerico sul mio db Access
dalle pagine del sito, ad esempio 89,2, il valore che viene inserito è
892,0; se inserisco 0,9 mi mette 9,0. Ho provato anche ad utilizzare
il '.' al posto della virgola come separatore dei decimali ma cambia
poco: 89,2 diventa 8.920,0.
Sembra che avvenga una strana conversione dei numeri, a volte li
moltiplica per 10 a volte per 100.
Preciso che il campo sul db è un numerico con precisione doppia, e che
non mi è possibile modificare il campo in decimal perchè avrebbe un
effetto devastante sul codice asp.
Spero in una risposta efficace da parte vostra perchè oramai io non so
più che pesci prendere.
Per completezza posto anche la porzione di codice asp coinvolta, ma
come detto fino al maledetto aggiornamento del server remoto tutto
funzionava benissimo:
iKg=Request.Form("skg")
If iKg="" OR isNumeric(iKg)=false Then
	Call errSelect("Peso - Errore nell'inserimento dei kg  (NaN).",0)
	.end
End If
on error resume next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Mode = 3
Conn.open strProvider
set rstIns = Conn.execute("INSERT INTO Peso (Data,UserName, Kg) VALUES
(#" & FormatDateForDB(iData) & "#, '" & iUser & "', '" &
Formatnumber(iKg,1) & "')")
if err.number <> 0 Then
	.write "Errore insert Peso: " & err.description & " - " & err.number
& " - "  & err.source &  "<br>Query: " & "INSERT INTO Peso
(Data,UserName, Kg) VALUES (#" & FormatDateForDB(iData) & "#, '" &
iUser & "', '" & Formatnumber(iKg,1) & "')"
	.end
end if

 ha scritto nel messaggio 
news:1172651691.6...@v33g2000cwv.googlegroups.com...
Salve a tutti, ho un grave problema su Access 2003.
Il problema č nato dopo un aggiornamento del server remoto su cui
girano le mie pagine web.
Quando eseguo l'inserimento di un valore numerico sul mio db Access
dalle pagine del sito, ad esempio 89,2, il valore che viene inserito č
892,0; se inserisco 0,9 mi mette 9,0. Ho provato anche ad utilizzare
il '.' al posto della virgola come separatore dei decimali ma cambia
poco: 89,2 diventa 8.920,0.
Sembra che avvenga una strana conversione dei numeri, a volte li
moltiplica per 10 a volte per 100.
Preciso che il campo sul db č un numerico con precisione doppia, e che
non mi č possibile modificare il campo in decimal perchč avrebbe un
effetto devastante sul codice asp.
Spero in una risposta efficace da parte vostra perchč oramai io non so
piů che pesci prendere.
Per completezza posto anche la porzione di codice asp coinvolta, ma
come detto fino al maledetto aggiornamento del server remoto tutto
funzionava benissimo:
iKg=Request.Form("skg")
If iKg="" OR isNumeric(iKg)=false Then
Call errSelect("Peso - Errore nell'inserimento dei kg  (NaN).",0)
.end
End If
on error resume next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Mode = 3
Conn.open strProvider
set rstIns = Conn.execute("INSERT INTO Peso (Data,UserName, Kg) VALUES
(#" & FormatDateForDB(iData) & "#, '" & iUser & "', '" &
Formatnumber(iKg,1) & "')")
if err.number <> 0 Then
.write "Errore insert Peso: " & err.description & " - " & err.number
& " - "  & err.source &  "<br>Query: " & "INSERT INTO Peso
(Data,UserName, Kg) VALUES (#" & FormatDateForDB(iData) & "#, '" &
iUser & "', '" & Formatnumber(iKg,1) & "')"
.end
end if
Ma non č, per caso, che i numeri li considera sempre con 2 cifre decimali e, 
quindi, per inserire 89,2 dovresti indicare 8920 senza nessuna virgola ? E' 
solo un'idea da verificare... non mi intendo di codice ASP
Ciao
Antonio