csrocha / fpoc-chrome Goto Github PK
View Code? Open in Web Editor NEWFiscal Printer Chrome Application for OpenERP
License: GNU General Public License v2.0
Fiscal Printer Chrome Application for OpenERP
License: GNU General Public License v2.0
Hola Cristian, he logrado instalar fpoc en Odoo v9, sin embargo la extensión de Chrome no logra conectarse con el servidor, da el siguiente error:
016-02-29 18:45:26,671 4974 ERROR ? openerp.http: Exception during JSON request handling.
Traceback (most recent call last):
File "/opt/odoo/openerp/http.py", line 643, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/opt/odoo/openerp/http.py", line 1624, in dispatch_nodb
func, arguments = self.nodb_routing_map.bind_to_environ(request.httprequest.environ).match()
File "/usr/local/lib/python2.7/dist-packages/werkzeug/routing.py", line 1430, in match
raise NotFound()
NotFound: 404: Not Found
2016-02-29 18:45:26,680 4974 INFO ? werkzeug: 192.168.189.100 - - [29/Feb/2016 18:45:26] "GET /web/database/get_list?jsonp=&id=p1&r=%7B%22params%22%3A%7B%7D%7D HTTP/1.1" 200 -
Saludos!
Es posible adaptar esta app para utilizar una impresora EsC/PoS no fiscal?
Hola Cristian, instale los modulos
odoo_fpoc
l10n_ar_fpoc
l10n_ar_fpoc_pos
y tengo en una virtual de vbox el emulador fiscal con el COM2 virtual.
Fui hasta Configuracion > Fiscal Printer > Crear
ahi trate de darle de alta con los siguientes datos (no vi ningun instructivo, asi que solo deduje los campos)
Cuando trato de guardar me da el siguiente error:
2015-01-08 03:32:55,246 2883 ERROR test openerp.http: Exception during JSON request handling.
Traceback (most recent call last):
File "/vagrant/odoo/openerp/http.py", line 524, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/vagrant/odoo/openerp/http.py", line 545, in dispatch
result = self._call_function(*_self.params)
File "/vagrant/odoo/openerp/http.py", line 301, in _call_function
return checked_call(self.db, *args, *_kwargs)
File "/vagrant/odoo/openerp/service/model.py", line 113, in wrapper
return f(dbname, _args, *_kwargs)
File "/vagrant/odoo/openerp/http.py", line 298, in checked_call
return self.endpoint(_a, *_kw)
File "/vagrant/odoo/openerp/http.py", line 761, in call
return self.method(_args, *_kw)
File "/vagrant/odoo/openerp/http.py", line 394, in response_wrap
response = f(_args, *_kw)
File "/vagrant/odoo/addons/web/controllers/main.py", line 949, in call_kw
return self._call_kw(model, method, args, kwargs)
File "/vagrant/odoo/addons/web/controllers/main.py", line 941, in _call_kw
return getattr(request.registry.get(model), method)(request.cr, request.uid, _args, *_kwargs)
File "/vagrant/odoo/openerp/api.py", line 237, in wrapper
return old_api(self, _args, *_kwargs)
File "/vagrant/odoo/openerp/api.py", line 332, in old_api
result = method(recs, _args, *_kwargs)
File "/vagrant/odoo/openerp/models.py", line 4007, in create
record = self.browse(self._create(old_vals))
File "/vagrant/odoo/openerp/api.py", line 235, in wrapper
return new_api(self, _args, *_kwargs)
File "/vagrant/odoo/openerp/api.py", line 464, in new_api
result = method(self._model, cr, uid, _args, *_kwargs)
File "/vagrant/odoo/openerp/models.py", line 4192, in _create
result += self._columns[field].set(cr, self, id_new, field, vals[field], user, rel_context) or []
File "/vagrant/odoo/openerp/osv/fields.py", line 1384, in set
self._fnct_inv(obj, cr, user, id, name, value, self._fnct_inv_arg, context)
File "/vagrant/odoo/addons/fpoc/epson.py", line 72, in _put_field
lines = field_value.split('\n')[:len(_footer_lines)]
AttributeError: 'bool' object has no attribute 'split'
Muchas gracias
Saludos
Martin
En la consola del emulador fiscal veo esto:
n°seq | Comando | Descripcion | Resultado
81 | Comando Invalido! | No hay descripcion | -ERR: Comando desconocido
82 | Comando Invalido! | No hay descripcion | -ERR: Comando desconocido
Errores de la consola de debug de chrome:
[SES] Start background login.
background.js:46 [SES] Creating the session.
background.js:69 [SES] Session error. Forget session_id.
extensions::binding:471 chrome.appViewInternal is not available: 'appViewInternal' requires Google Chrome dev channel or newer, but this is the stable channel.
background.js:10 [FP] Pooling for printers
oerp.js:346 [SES] Updating printers.
tools.js:200 [PF] USB found end
2epson_ar.js:1611 EPSON: Constructor
3extensions::uncaught_exception_handler:8 Error in event handler for serial.onReceive: TypeError: Cannot read property 'connectionId' of null
at onReceive (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:26:50)
epson_ar.js:303 Type * not implemented
extensions::uncaught_exception_handler:8 Error in response to serial.send: RangeError: Offset is outside the bounds of the DataView
at unpack (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:295:23)
at chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:435:64
at chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:408:61
at Object.callback (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:60:21)
at send (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:53:23)
at sendACK (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:408:24)
at local_callback (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:434:30)
at receive (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:85:21)
at chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:92:22
extensions::uncaught_exception_handler:8 Error in response to serial.send: RangeError: Offset is outside the bounds of the DataView
at unpack (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:298:23)
at chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:435:64
at chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:408:61
at Object.callback (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:60:21)
at send (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:53:23)
at sendACK (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:408:24)
at local_callback (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/epson_ar.js:434:30)
at receive (chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:85:21)
at chrome-extension://dpdhliallpdhnnkmhcmdmdecmholihmm/src/serial.js:92:22
Epson tiene el protocolo en Revisión D y Revisión E funcionando actualmente. Hay que cambiar la estructura de los archivos para que permita funcionar con las diferentes revisiones.
Hola, estoy por implementar impresion con controladora fiscal y el contador recomienda usar una impresora de nueva tecnologia porque dentro de poco seran obligatorias.
Hasta el momento AFIP homologo tres equipos solamente:
MARCA MODELO VERSIÓN CÓDIGO ASIGNADO EMPRESA PROVEEDORA CUIT
HASAR SMH/PT-250F 01.00 HSHSAB COMPAÑIA HASAR S.A.I.C. 30-61040056-2
CRAMS GX-9000 01.00 PVCRAA SUCESION DE PEREZ VALIÑO JORGE 20-04192267-3
EPSON TM-T900FA 01.00 “Ceres” EPEPAA EPSON ARGENTINA S.R.L. 30-61410471-2
EQUIPOS: IMPRESORAS FISCALES
No los veo en el listado de equipos compatibles. Alguien probo hacerlos andar con este plugin conectado a Odoo?
Gracias
Seria bueno implementar soporte para las impresoras Bixolon y Tally Dascom.
De la Bixolon SRP-350 estoy haciendo investigaciones de implementaciones en Python y si llego a algun resultado les puedo contribuir con el codigo necesario. Quisiera saber si existe algun desarrollo en el plugin ya para esto.
Si se conecta la impresora por USB la impresora no se reconoce en Windows. Diferente si se conecta desde Serial o un conversor Serial-USB.
La razón parece ser que al instalar la impresora desde USB en Windows, éste no reconoce el dispositivo y no lo publica. Es por ello que Chrome no la reconoce.
Esta excepción es manifestada en el acto de presionar el botón "connect".
Configuración de Odoo (8): docker con módulos fpoc instalados (3 modulos). y puerto 8069 expuesto a la red publica a través del host, que es un Ubuntu 14.04 con docker 1.8.
Los módulos de fpoc no dieron error al ser instalados.
La prueba de acceso es hecha desde red pública en forma remota (internet, no LAN). El servidor funciona bien (aunque un poco lento, lo cual me hacía sospechar de un timeout).
El controlador/impresora no está conectado, pero la intención es probar la conectividad por ws.
La misma extensión de Chrome, utilizada con un localhost y la misma base de datos funciona bien.
Este es el log en el servidor cuando se presiona el botón connect (es decir, que algún tipo de conectividad hay):
2015-10-30 22:47:49,512 1 ERROR None openerp.http: Exception during JSON request handling.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 537, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1413, in dispatch_nodb
func, arguments = self.nodb_routing_map.bind_to_environ(request.httprequest.environ).match()
File "/usr/lib/python2.7/dist-packages/werkzeug/routing.py", line 1430, in match
raise NotFound()
NotFound: 404: Not Found
2015-10-30 22:47:49,514 1 INFO None werkzeug: 179.8.165.221 - - [30/Oct/2015 22:47:49] "GET //web/database/get_list?jsonp=&id=p1&r=%7B%22params%22%3A%7B%7D%7D HTTP/1.1" 200 -
Si entro por navegador a web/database/selector las bases las entrega bien, y por lo que veo, la respuesta del werkzeug es exactament ela misma en ambos casos, pero en este último, no remata con la excepción mostrada:
2015-10-30 22:49:57,245 1 INFO None werkzeug: 179.8.165.221 - - [30/Oct/2015 22:49:57] "GET //web/database/get_list?jsonp=_&id=p1&r=%7B%22params%22%3A%7B%7D%7D HTTP/1.1" 200 -
Cuando no se detecta la impresora en Linux lo que hay que hacer es bajarse el archivo de reglas udev para las impresoras con el siguiente comando:
sudo wget -O /etc/udev/rules.d/80-l10n-ar-fiscalprinters.rules https://gist.githubusercontent.com/csrocha/01432654cb52a6313c00/raw/80-l10n-ar-fiscalprinters.rules
Luego reiniciar el servicio udev con el comando
sudo /etc/init.d/udev restart
Luego asegurarse que el usuario que va a ejecutar la impresora fiscal pertenezca al grupo lp
Hola amigo, m gustaria colaborar con ustedes, necsito que funcione para una bixolom 350, si me puedes ayudar para comenzar
Hola, nosé si aun hay actividad en éste proyecto, ya que no veo respuestas nuevas en las issues. He estado tratando de implementar éste software para trabajar con la impresora TM-H6000III de Epson, si bien el software la reconoce pero con el protocole E y no reconoce el modelo solo aparece como "epson_e_ar://undefined/undefined". Puede realizar las funciones básicas de prueba corta, larga y cortar el papel, pero no logro que se conecte con Odoo como impresora disponible.
Al internar instalar una impresora hasar smh/p-441f por medio de USB a un windows 7 ultimate de 32 bits la misma no es detectada por el el chrome.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.