 |
|
Registra tus clasificados Gratis en BuenosAires.com |
Clasificados de Automotores
|
Clasificados de Computadoras
MUEBLES DE OFICINA - NUEVA GUIA DE BUENOS AIRES.COM
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
jcac Invitado
|
Publicado: Vie Nov 23, 2007 2:12 pm Asunto: Re: Problemas con Redondeo+Currency |
IMPORTANTE: Para postear nuevos temas, ir a: NUEVOS FOROS
|
|
Hola Yuri,
Para que no tengas problemas de rendondeos utiliza variables double en
visual basic y en la base de datos maneja tus precios de 15 decimales,
cuando haces rendondeos de cantidades de 15 decimales no pierdes nada.
Una funcion que yo utilizo es esta y siempre utilizo variables double:
function ConDBL(byval Valor as string) as double
if trim(Valor) ="" Then ConDBL = 0 else ConDBL=cdbl(valor)
end function
espero te sirva, no se si al convertir una variable de double a string y de
alli a double lo arregle pero asà no he tenido problemas.
Saludos
"Yuri Aponte" <yuri.aponteARROBAapocal.com.pe> escribió en el mensaje
news:eMEx6%23eLIHA.5860@TK2MSFTNGP04.phx.gbl...
| Cita: | Hola Leonardo
Asi es ,, es todo un tema y todo esto es porque a mi cliente le dio la
gana de no hacer nunca mas N/credito por redondeo de S/. 0.01 y quiere que
le cuadre las facturas comosea. Osea que si tengo que aumentar un centimo
en un precio para que al final cuadre con la O/Compra que le giro el
Gobierno ( aca radica el problema ).
El problema es un lio muy complejo y la verdad es un rollo que no podre
escapar. El gobierno se le ocurre hacer una licitacion de leche
maternizada pero sabiendo que todo el mun do la vende en latas el compra
en Kilos. Por consiguiente mi aplicacion tiene primero que aplicar un
factor de kilos a cada lata para poder cuadrar los kilos a lo que se
pueda,, es imposible que sea exacto dado la presentacion de cada lata.
Pero el problema se agrava mas porque mi cliente me dice "no me importa
darle un kilo mas al gobierno pero la factura me la cuadras en los Totales
a la Orden de compra, ya tu ves como haces"... y claro es posible hacerlo
jugando con el precio, pero ahi me topo con mi problema de precision de
decimales. En un principio el precio lo puse a 4 decimales y funciono
hasta una cifra en la que tuve que ponerla a 6 decimales. Obvio que en
algun momento tendre que aumentarla a 8 decimales. Espero que en ese
momento mi cliente vea que lo que me pide matematicamente es muy
complicado y me pague todas las aspirinas que me voy tomando
Como has solucionado el problema en venezuela, con este tema de facturas?
--
Saludos desde Lima, Peru
Yuri Aponte
Analista de Sistemas
yuriPUNTOaponteARROBAapocalPUNTOcomPUNTOpe
"Leonardo Azpurua" <l e o n a r d o [arroba] m v p s [punto] o r g
escribió en el mensaje news:OoiZ9KeLIHA.1188@TK2MSFTNGP04.phx.gbl...
"Yuri Aponte" <yuri.aponteARROBAapocal.com.pe> escribió en el mensaje
news:uhh31ddLIHA.6108@TK2MSFTNGP03.phx.gbl...
Hola amigos
Estuve revisando el foro sobre el tema que me mantiene en vilo algunas
horas ya. Vi una recomendacion de Leonardo en usar Currency para
calculos donde se necesita precision y claro su hermano Money en SQL
Y eso es lo que hago, pero me tope con la limitacion de currency y Money
en que solo manejan 4 decimales a la derecha y tengo el siguiente
problema
Tengo los siguientes valores sacados del Excel y de la calculadora de
Windows
Valor / Cantidad = Precio
605.04 / 800 = 0.7563
605.07 / 800 = 0.756334
Al principio utilizaba variables tipo currency para poder almacenar el
precio, pero me tope con que me limitaba todo a 4 decimales y obvio que
la operacion anterior en el campo precio no mostraba variacion ( a 4
decimales son identicas ) cuando asi se daba. Esto se da porque el
sistema en cuestion necesita realizar un ajuste en el precio para
cuadrar la factura con la O/Compra de los hospitales. La precision tiene
que ser exacta para evitar N/credito por redondeo. Por eso no importa
que el precio tenga varios decimales con tal que el total cuadre al
final.
Para poder paliar esto tuve que cambiar mi variable nPrecio a Double y
en mi BD mi campo Precio de Money a Decimal(19,6 )
He hecho varias pruebas y al parecer funciona, pero me queda la duda de
las conversaciones que han habido en el foro sobre el tema de redondeos
y de variables monetarias. En el uso reiterado del Money por su
precion.. Pero y si necesito mas decimales tanto en el VB como en el SQL
?.. Tendre algun problema en algun momento?
Hola, Yuri:
Los clientes son un poco coñazo.
Imagino que en Perú, al igual que en el resto del mundo, las cantidades
monetarias se expresan con un número fijo de decimales. Incluso en
Venezuela, donde un bolivar equivalÃa en 1983 a 10/43 USD, usábamos dos
decimales, y ahora, cuando un bolivar equivale a 1/4250 USD, seguimos
usando dos decimales.
Alguna vez un cliente se emperró en que el precio final deberÃa ser una
cantidad "redonda" (para quitarse los céntimos). Y en los precios siempre
se debÃan emplear dos decimales, y para colmo vendÃa por docenas.
Entonces jode porque quiere vender 36 unidades por Bs. 100.000. Y 100.000
/ 36 = 2777,77..., pero 2777,77 * 36 = 99.999,72, y 2777,78 * 36 =
100.000,08, y aunque 0.08 Bs son menos de la cienmilésima parte de un
dólar, algunos clientes le devolvÃan las facturas porque los resultados
no cuadraban (no se quienes son peores, si los contadores o .los
abogados, y donde tienes de los dos vas de culo por que sÃ, y este
cliente le vendÃa principalmente a administradoras inmobiliarias gestoras
de condominios, que son el punto de confluencia más frecuente de estos
dos abominables gremios, mejorando lo presente).
La solución es que los puñeteros vendedores aprendan a multiplicar, y a
trabajar a partir de los precios unitarios. Simplemente, un producto cuyo
precio unitario con la cantidad de decimales generalmente usados para
expresar las cantidades monetarias no es divisor exacto de un monto
total, no puede ser vendido (en ninguna cantidad) por ese monto total.
En Venezuela tenemos un dicho: "si no te agarra el chingo, te coge el
desnarizado" ("chingo" es el que no tiene nariz); la moraleja es que si
no le das un parado a esa situación te vas a meter por un camino que no
tiene más final que un saco oscuro (en tu caso, el uso de valores
Double/Float para la expresión de cantidades monetarias, con la
consiguiente proliferación de inexactitudes).
Tu verás...
Salud!
|
|
|
| Volver arriba |
|
 |
Leonardo Azpurua Invitado
|
Publicado: Vie Nov 23, 2007 2:59 pm Asunto: Re: Problemas con Redondeo+Currency |
IMPORTANTE: Para postear nuevos temas, ir a: NUEVOS FOROS
|
|
"Yuri Aponte" <yuri.aponteARROBAapocal.com.pe> escribió en el mensaje
news:eMEx6%23eLIHA.5860@TK2MSFTNGP04.phx.gbl...
| Cita: |
Como has solucionado el problema en venezuela, con este tema de facturas?
|
Mandando a tomapolculo a los clientes que se ponen idiotas )
Unos dÃas mas tarde regresan suavizados. Ser bruto tiene sus ventajas.
Salud!
|
|
| Volver arriba |
|
 |
Yuri Aponte Invitado
|
Publicado: Vie Nov 23, 2007 4:29 pm Asunto: Re: Problemas con Redondeo+Currency |
IMPORTANTE: Para postear nuevos temas, ir a: NUEVOS FOROS
|
|
ja,ja,ja,ja.... :-DDD
Vere si puedo hacerle lo mismo a mi cliente (varon), me es dificil decirle
eso a una mujer :-DDD
--
Saludos desde Lima, Peru
Yuri Aponte
Analista de Sistemas
yuriPUNTOaponteARROBAapocalPUNTOcomPUNTOpe
"Leonardo Azpurua" <l e o n a r d o [arroba] m v p s [punto] o r g> escribió
en el mensaje news:Opae0rfLIHA.4712@TK2MSFTNGP04.phx.gbl...
| Cita: |
"Yuri Aponte" <yuri.aponteARROBAapocal.com.pe> escribió en el mensaje
news:eMEx6%23eLIHA.5860@TK2MSFTNGP04.phx.gbl...
Como has solucionado el problema en venezuela, con este tema de facturas?
Mandando a tomapolculo a los clientes que se ponen idiotas )
Unos dÃas mas tarde regresan suavizados. Ser bruto tiene sus ventajas.
Salud!
|
|
|
| Volver arriba |
|
 |
|
|
Podés publicar nuevos temas en este foro No podés responder a temas en este foro No podés editar tus mensajes en este foro No podés borrar tus mensajes en este foro No podés votar en encuestas en este foro
|
Powered by phpBB © 2001, 2005 phpBB Group
Todos los mensajes aquí publicados, son extraídos de la USENET
Discover Atlanta Hotels by Atlanta.org
Discover Outdoor Furniture your resource guide
Buenos Aires Medicina Estética y Cirugía Plástica
|