Giter Club home page Giter Club logo

citi_afip's Introduction

citi_afip

The citi_afip module of the Tryton application platform. Tryton module to export Compras y Ventas RG3685 (ex CITI).

Installing

See INSTALL

Support

If you encounter any problems with this module, please don't hesitate to ask questions on the module bug tracker:

https://github.com/tryton-ar/citi_afip/issues

For more information please contact the programmers at tryton-ar

website: https://groups.google.com/forum/#!forum/tryton-ar

If you encounter any problems with Tryton, please don't hesitate to ask questions on the Tryton bug tracker, mailing list, wiki or IRC channel:

http://bugs.tryton.org/ http://groups.tryton.org/ http://wiki.tryton.org/ irc://irc.freenode.net/tryton irc://irc.freenode.net/tryton-es

License

See LICENSE

Copyright

See COPYRIGHT

For more information please visit the Tryton web site:

http://www.tryton.org/

citi_afip's People

Contributors

lukio avatar abernardi avatar marto-ales avatar

Stargazers

Aldana Laurito avatar Salvatore Josué Trimarchi Pinto avatar

Watchers

Mario Puntin avatar LeitoMonk avatar Sebastián Marró avatar  avatar James Cloos avatar  avatar Vicky Dichiera avatar yaco avatar  avatar

citi_afip's Issues

The currency quote is not set when create export invoices in other currency than ARS

When the invoice is in other currency than ARS, we search the currency quote inside the approve xml response. If we do not have the xml reponse, throws an error like this:

Traceback (most recent call last):
  File "/trytond/wsgi.py", line 47, in dispatch_request
    return endpoint(request, **request.view_args)
  File "/trytond/protocols/dispatcher.py", line 41, in rpc
    request, database_name, *request.rpc_params)
  File "/trytond/wsgi.py", line 39, in auth_required
    return wrapped(*args, **kwargs)
  File "/trytond/protocols/wrappers.py", line 106, in wrapper
    return func(request, pool, *args, **kwargs)
  File "/trytond/protocols/dispatcher.py", line 163, in _dispatch
    result = rpc.result(meth(*c_args, **c_kwargs))
  File "/trytond/wizard/wizard.py", line 287, in execute
    return wizard._execute(state_name)
  File "/trytond/wizard/wizard.py", line 318, in _execute
    result = self._execute(transition())
  File "/trytond/modules/citi_afip/citi.py", line 161, in transition_exportar_citi
    self.export_citi_comprobante_ventas()
  File "/trytond/modules/citi_afip/citi.py", line 334, in export_citi_comprobante_ventas
    ctz = Currency.round(invoice.currency, Decimal(ctz))
UnboundLocalError: local variable 'ctz' referenced before assignment

If we do not have the xml reponse, we should try to search the currency quote inside the currency.

Add Computable tax credit proration option

According to documentation, the field Computable tax credit on purchases file must be equal to tax liquidated if, when the period is created, proration option is not checked or checked by ticket. And must be zero when global proration is selected.

De acuerdo a la documentación, el campo Crédito Fiscal Computable en el archivo de compras debe ser igual al impuesto liquidado si, al crear el período, la opción prorratear no esta marcada o esta seleccionado prorrateo por comprobante. Y debe ser cero cuando se selecciona prorrateo global.

Implementar tests

Nos podemos basar en los scenarios de tests de account_es.

En ambos, generan reportes. Lo que hacen es tener un txt de ejemplo que sea válido y luego lo comparan con la salida.

Por lo que veo, además, account_es, depende de account_eu, que a su cual depende de account_invoice.

NameError: name 'invoice_tax' is not defined en export_citi_alicuota_compras

REF 21c1016

Se hizo la corrección para generar la venta, pero no asi para las compras.

  File "/opt/trytond/saas50/env/lib/python35/site-packages/trytond/modules/citi_afip/citipy", line 175, in transition_exportar_citi
    selfexport_citi_alicuota_compras()
  File "/opt/trytond/saas50/env/lib/python35/site-packages/trytond/modules/citi_afip/citipy", line 468, in export_citi_alicuota_compras
    if invoice_taxtaxgroupafip_kind == 'gravado':
NameError: name 'invoice_tax' is not defined

Se esta informando erróneamente el código de operacion para alicuota IVA 0%

Según dice la documentación de la RG 3685:
http://www.afip.gob.ar/comprasyventas/documentos/RegimendeInformaciondeComprasyVentasEspecificaciones1.doc

Campo 20: Código de operación.
Si la alícuota de IVA es igual a cero (0) o la operación responde a una operación de Canje se deberá completar de acuerdo con la siguiente codificación:

  • Z- Exportaciones a la zona franca.
  • X- Exportaciones al exterior.
  • E- Operaciones exentas.
  • N- No gravado.
  • C- Operaciones de Canje.
  • En caso contrario se informará en blanco.

Actualmente se esta completando con balanco, cuando entiendo que debería de ser una E (operación exenta).

When run update citi_afip

When run update the module citi_afip throws me this error

6202 140471877875456 [2018-03-29 21:47:22,951] INFO trytond.modules 
citi_afip:register citi.afip.start
Traceback (most recent call last):
  File "/usr/local/bin/trytond-admin", line 6, in <module>
    exec(compile(open(__file__).read(), __file__, 'exec'))
  File "/home/luis/tryton/trytond/bin/trytond-admin", line 21, in <module>
    admin.run(options)
  File "/home/luis/tryton/trytond/trytond/admin.py", line 48, in run
    Pool(db_name).init(update=options.update, lang=lang)
  File "/home/luis/tryton/trytond/trytond/pool.py", line 155, in init
    lang=lang)
  File "/home/luis/tryton/trytond/trytond/modules/__init__.py", line 429, 
in load_modules
    _load_modules()
  File "/home/luis/tryton/trytond/trytond/modules/__init__.py", line 398, 
in _load_modules
    load_module_graph(graph, pool, update, lang)
  File "/home/luis/tryton/trytond/trytond/modules/__init__.py", line 237, 
in load_module_graph
    cls.__register__(module)
  File "/home/luis/tryton/trytond/trytond/model/model.py", line 116, in 
__register__
    Translation.register_fields(cls, module_name)
  File "/home/luis/tryton/trytond/trytond/ir/translation.py", line 264, in 
register_fields
    update_insert_field(field, trans_name)
  File "/home/luis/tryton/trytond/trytond/ir/translation.py", line 212, in 
update_insert_field
    string_md5 = cls.get_src_md5(field.string)
  File "/home/luis/tryton/trytond/trytond/ir/translation.py", line 384, in 
get_src_md5
    return md5((src or '').encode('utf-8')).hexdigest()
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 14: 
ordinal not in range(128)

REGINFO_CV_VENTAS En el archivo de ventas, el campo cantidad de alícuotas para las operaciones de exportación

Para las operaciones de exportación, en el campo cantidad de alícuotas se consignará uno (1) y en el campo código de operaciones se consignará según corresponda 'X - EXPORTACIONES al EXTERIOR' ó 'Z - EXPORTACIONES a ZONA FRANCA'.

Por otra parte, en la tabla de alícuotas se informará el monto correspondiente al Importe Neto Gravado, se indicará en el campo alícuota la correspondiente a 0% es decir el código '0003' y en impuesto liquidado se consignará el valor cero.

Actualmente se esta usando siempre la opción X - EXPORTACIONES AL EXTERIOR). Se debe setear Z - EXPORTACIONES a ZONA FRANCA si el CUIT foraneo corresponde a un PAIS de la ZONA FRANCA (ej: Tierra del Fuego).

Error en 'Compras y Ventas RG 3685'

Buenas gente, cómo les va?

Estamos haciendo las pruebas previas a una implementación de Tryton en una PyME y luego de varios golpes de cabeza contra la pared hemos logrado dar importantes pasos (sobre los cuales fuimos tomando nota y esperamos pronto poder compartirlos en forma de un bello post que sirva de guía para otres que busquen lo mismo que nosotros).

Escribo para saber si alguien está usando los módulos de la localización Argentina para Tryton 5.0 ya que tenemos los siguientes errores al generar los informes mencionados en el título y queremos saber si es algo general (bug del módulo en la versión 5.0 por ejemplo) o si es que estamos haciendo algo mal.

Paso a detallar:

Error en 'Compras y Ventas RG 3685':

Traceback (most recent call last):
File "/site-packages/trytond/wsgi.py", line 73, in dispatch_request
return endpoint(request, **request.view_args)
File "/site-packages/trytond/protocols/dispatcher.py", line 46, in rpc
request, database_name, *request.rpc_params)
File "/site-packages/trytond/wsgi.py", line 44, in auth_required
return wrapped(*args, **kwargs)
File "/site-packages/trytond/protocols/wrappers.py", line 122, in wrapper
return func(request, pool, *args, **kwargs)
File "/site-packages/trytond/protocols/dispatcher.py", line 176, in _dispatch
result = rpc.result(meth(*c_args, **c_kwargs))
File "/site-packages/trytond/wizard/wizard.py", line 287, in execute
return wizard._execute(state_name)
File "/site-packages/trytond/wizard/wizard.py", line 318, in _execute
result = self._execute(transition())
File "/site-packages/trytond/modules/citi_afip/citi.py", line 155, in transition_exportar_citi
self.export_citi_alicuota_compras()
File "/site-packages/trytond/modules/citi_afip/citi.py", line 444, in export_citi_alicuota_compras
punto_de_venta = punto_de_venta.encode().rjust(5, '0')
TypeError: rjust() argument 2 must be a byte string of length 1, not str

Este error sale solamente cuando intento generar el informe de un período con información cargada (una FC de Proveedor ya pagada con cheques propios), en cambio si lo saco de un período vacío no tira error (y tampoco información, no?).

Error 'Subdiario Compras':

Traceback (most recent call last):
File "/site-packages/trytond/wsgi.py", line 73, in dispatch_request
return endpoint(request, **request.view_args)
File "/site-packages/trytond/protocols/dispatcher.py", line 46, in rpc
request, database_name, *request.rpc_params)
File "/site-packages/trytond/wsgi.py", line 44, in auth_required
return wrapped(*args, **kwargs)
File "/site-packages/trytond/protocols/wrappers.py", line 122, in wrapper
return func(request, pool, *args, **kwargs)
File "/site-packages/trytond/protocols/dispatcher.py", line 176, in _dispatch
result = rpc.result(meth(*c_args, **c_kwargs))
File "/site-packages/trytond/report/report.py", line 182, in execute
oext, content = cls._execute(records, data, action_report)
File "/site-packages/trytond/report/report.py", line 190, in _execute
return cls.convert(action, cls.render(action, report_context))
File "/site-packages/trytond/report/report.py", line 283, in render
fd, path = cls._prepare_template_file(report)
File "/site-packages/trytond/report/report.py", line 260, in _prepare_template_file
raise Exception('Error', 'Missing report file!')
Exception: ('Error', 'Missing report file!')

Este, en cambio, sale siempre, sin importar el período que consulte.

¿Alguna idea de por donde empezar a buscar la solución?

Desde ya agradecemos su atención y les cuento que varios de los problemas que fuimos teniendo los hemos resuelto a través del historial de este foro y del grupo de google de Tryton-Ar.

Saludos!
Jero

Merge from 3.8 to 4.0 and 4.2

Pasar los cambios de 3.8 a 4.0/4.2

El tema principalmente son las facturas de tipo nota de crédito. Se deben identificar de otra forma.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.