[Python-es] Divisas en aplicación

91 views
Skip to first unread message

kausdiv

unread,
Apr 2, 2014, 4:18:31 AM4/2/14
to La lista de python en castellano
Hola.

Tengo una aplicación que trabaja en euros, conectada a un servidor de
bases de datos.

Ahora por ampliación de la empresa se va a utilizar desde Chile. Y debo
agregar al programa el trabajo en divisas
(Pesos y dolares).

La verdad es que no se bien como acometer esta modificación.

¿ Alguien que tenga algo similar me puede dar una orientación ?

Saludos.




_______________________________________________
Python-es mailing list
Pyth...@python.org
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Kiko

unread,
Apr 2, 2014, 4:28:28 AM4/2/14
to La lista de python en castellano
El 2 de abril de 2014, 10:18, kausdiv <kau...@gmail.com> escribió:
Hola.

Tengo una aplicación que trabaja en euros, conectada a un servidor de bases de datos.

Ahora por ampliación de la empresa se va a utilizar desde Chile. Y debo agregar al programa el trabajo en divisas
(Pesos y dolares).

La verdad es que no se bien como acometer esta modificación.

¿ Alguien que tenga algo similar me puede dar una orientación ?


Quizá este ejemplo simple te sirva:

Busca usando combinaciones de python 'money exchange' 'currency converter' en google.

kausdiv

unread,
Apr 2, 2014, 6:59:13 AM4/2/14
to La lista de python en castellano
Lo que termino de ver claro es como implementarlo en la aplicación.
Supongo que será así:
1º  Se crea una tabla en la base de datos con las distintas monedas y el valor del cambio.
2º Cada usuario, dependiendo de su ubicación geográfica tendrá definida la moneda a usar.

Y lo que tengo más duro es como hacer que cada albarán, ticket, etc tome esa moneda. O si el cliente quiere pagar en Pesos o Dolares...

Esto es lo que aún no tengo claro como hacerlo.

Saludos.

Daπid

unread,
Apr 2, 2014, 7:21:11 AM4/2/14
to La lista de python en castellano
2014-04-02 12:59 GMT+02:00 kausdiv <kau...@gmail.com>:
Y lo que tengo más duro es como hacer que cada albarán, ticket, etc tome esa moneda. O si el cliente quiere pagar en Pesos o Dolares...

Depende completamente de cómo sea la aplicación. La idea más simple es trabajar internamente con euros y, a la hora de meter o sacar datos, multiplicas o divides por el factor de conversion (1 para € -> €).

La idea más compleja es usar, en vez de números, objetos, donde has sobrecargado __str__, __repr__ y demás para que haga esta conversión automáticamente.

Kiko

unread,
Apr 2, 2014, 7:29:35 AM4/2/14
to La lista de python en castellano
El 2 de abril de 2014, 13:21, Daπid <david...@gmail.com> escribió:
2014-04-02 12:59 GMT+02:00 kausdiv <kau...@gmail.com>:

Y lo que tengo más duro es como hacer que cada albarán, ticket, etc tome esa moneda. O si el cliente quiere pagar en Pesos o Dolares...

Depende completamente de cómo sea la aplicación. La idea más simple es trabajar internamente con euros y, a la hora de meter o sacar datos, multiplicas o divides por el factor de conversion (1 para € -> €).


También dependerá de como venda la empresa de turno. Hay empresas que usan un precio por divisa, por ejemplo, en euros cuesta 100€ y en dolares cuesta 120$ y no hay que hacer cambio de moneda, simplemente ir a tu tabla a rescatar el precio. Y en otros casos el precio es en una divisa y si se vende en otra divisa se hace la conversión con el cambio que toque en ese momento más un extra coste (bancos, cuentas, acuerdos entre paises,...) en caso de que la empresa lo necesite en la moneda original y vaya a una cuenta en el país de origen de la moneda original. Vamos, que depende del caso, como todo en esta vida.
 
La idea más compleja es usar, en vez de números, objetos, donde has sobrecargado __str__, __repr__ y demás para que haga esta conversión automáticamente.

Juan José Gómez Romera

unread,
Apr 2, 2014, 9:11:57 AM4/2/14
to La lista de python en castellano
Todo depende de como sea la aplicación que ya tienes.

Yo haría los cálculos en la moneda que ya tiens programada y usando una clase que derive de float como [1] y que tenga atributos para todas las monedas que necesites, tener el precio en la divisa necesaria sera directo.

Esa clase esta sobredimensionada porque ademas sirve como base para un un dialogo de conversión de moneda [2], así como para seguir opciones de configuración del programa, unidades preferidas, tooltip con unidades secundarias [3]...

[1] http://sourceforge.net/p/pychemqt/code/HEAD/tree/lib/unidades.py#l1769
[2] http://pychemqt.sourceforge.net/stories/conversormoneda.html
[3] http://sourceforge.net/apps/mediawiki/pychemqt/nfs/project/p/py/pychemqt/c/c2/Captura.gif

Saludos
Reply all
Reply to author
Forward
0 new messages