Te respondi antes pero no veo mi propio mail, asi que aqui va de nuevo

Hice lo que sugeris pero no funcionó.
Después de muchos intentos, cambié el tipo de datos en la tabla de 
numeric(10,2) a float y ahi si funcionó. Pero la verdad es que no entiendo qué 
es lo que no funciona, porque hace años que uso SQL server contra VFP y nunca 
jamás me apareció ese problema.

Aclaro que uso el SQL Server 2008 Express R2



----- Mensaje original -----
De: francisco prieto <[email protected]>
Fecha: Viernes, Noviembre 13, 2015 7:52 am
Asunto: [GUFA] problema con sumas en VFP9 y MS SqlServer

> Rafael,
> 
> Estoy haciendo calculos de precision y para que me funcionen ok 
> tuve que
> poner
> 
> set decimal to 18
> Set fixed off
> 
> en el Load del formulario...
> 
> Fijate a ver si a vos tambien eso te da resultado...
> 
> Saludos,
> 
> Pancho
> Cordoba
> Argentina
> 
> El 13 de noviembre de 2015, 7:36, Eric Zbrun 
> <[email protected]>escribió:
> 
> > Hola Rafa!
> >
> > Pregunta si traes todo la tabla al FOX es decir
> >
> > select totalfra from acme.dbo.facturas
> >
> > Como trae los valores? Como lo ves?
> > Porque más allá de la configuración del punto decimal hay que ver 
> cómo te
> > trae la info.
> >
> > Eric!
> > -----Mensaje original-----
> > De: [email protected] [[email protected]] En nombre de rafael copquin
> > Enviado el: jueves, 12 de noviembre de 2015 16:25
> > Para: GUFA List Member <[email protected]>
> > Asunto: [GUFA] problema con sumas en VFP9 y MS SqlServer
> >
> > Selecciono un grupo de facturas de una tabla de sqlserver y 
> quiero sumar
> > el total de las ventas
> >
> > En el management studio hago esto:
> >
> > select sum(totalfra) as total from acme.dbo.facturas
> >
> > Obtengo el número correcto, 212649.17
> >
> > Si quiero hacer lo mismo desde VFP9, esto es lo que hago:
> >
> > local cCmd
> > set decimals to 2
> > set point to [.]
> >
> > cCmd = 'select sum(totalfra) as total from acme.dbo.facturas'
> >
> > sqlexec(thisform.nHandle,cCmd,'curTotales')
> >
> > nTotal = curTotales.total
> >
> > Pero el resultado es 212.65
> >
> > ¿por qué se trunca el resultado?
> > ¿cómo se resuelve esto?
> >
> > PD el nombre de la base de datos ACME es ficticio
> >
> > Rafael Copquin
> >
> >
> >
> >
> 


Responder a