Programacion Interactiva

Descubre una Nueva y Poderosa Herramienta.

FrameWork de Nueva Generacion

Acceso a tu Informacion desde cualquier Dispositivo con Navegador.

Enfoque en el Backend

Frontend de forma facil con Odoo y XML.

Creacion de Verticales

Creacion de nuevas Verticales Conquistando nuevos Mercados.

Tu marca aqui mismo

Llega a miles de personas.

Publicidad

Mostrando las entradas con la etiqueta Developer. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Developer. Mostrar todas las entradas

jueves, 20 de abril de 2017

Localización Mexicana para Odoo 8, Odoo 9 y Odoo 10

Adaptaciones Contables para México en cualquier Versión de Odoo


Hola a todos, este pequeño Post es para anunciar la Localización Mexicana para cualquier versión de Odoo (Odoo 8, Odoo 9 y Odoo 10), la cual incluye entre lo mas destacado:
  • Contabilidad Electrónica
    • Catalogo de Cuentas XML
    • Balanza de Comprobación
    • Complementos XML
    • Plan de Cuentas
    • Auxiliares Contables
    • Polizas
  • Facturación Electrónica
  • DIOT
  • Catalogo de Cuentas JerĆ”rquico
  • Reportes IFRS
  • Reclasificacion de Impuestos
  • Periodos Fiscales y AƱos Fiscales
  • Mucho mas ....



Facturacion electronica CFDI 3.3 con complemento de Pagos:

https://poncesoft.blogspot.mx/2017/09/facturacion-electronica-cfdi-33-con.html


Cualquier información: info@argil.mx


jueves, 18 de agosto de 2016

Solución a la lectura de Registros por permisos Ocultos en Odoo

Saltarnos algunas Reglas de Lectura de Registros en Odoo



    Este pequeƱo fragmento de Código es un ejemplo sobre como poder saltarse las reglas de lectura de registros para algunas clases, les contare un poco que me orillo a esta solución un poco agresiva, esto lo he tenido que hacer para un Cliente que tiene desarrollos de Terceros, por alguna circunstancia dentro de algĆŗn modulo existe un fragmento de Código que limita al usuario a solo visualizar sus Registros Creados sin utilizar las Reglas de Odoo, buscando dentro de todos los módulos no encontrĆ© ese fragmento y me puse a pensar una solución a este detalle y se me ocurrió usar la librerĆ­a SUPERUSER_ID de Odoo y pasarla al mĆ©todo principal de bĆŗsqueda, esto ayuda a poder usar el Root de Odoo y visualizar la información sin problema, el ejemplo siguiente es para la tabla de Albaranes o Movimientos de AlmacĆ©n:


class stock_picking(osv.osv):
    _name = 'stock.picking'
    _inherit ='stock.picking'
    _columns = {
        }

    _defaults = {
        }

    ########## METODOS PARA VOLARNOS LAS REGLAS DE LECTURA DE REGISTROS #############

    def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
        from openerp import SUPERUSER_ID

        res = super(stock_picking, self).fields_view_get(cr, SUPERUSER_ID, view_id, view_type, context=context,
        toolbar=toolbar, submenu=submenu)
        
        return res

    def search(self, cr, uid, args, offset=0, limit=None, order=None,
            context=None, count=False):
        from openerp import SUPERUSER_ID

        res = super(stock_picking, self).search(cr, SUPERUSER_ID, args, offset, limit, order,
            context, count)
        return res

Podrƭamos mejorar un poco el codigo aƱadiendo algunas normas de lectura, etc...

Notas: El ejemplo esta hecho para OpenERP 7 y Odoo 8, para Odoo 9 solo sustituimos la herencia y los mƩtodos por la API.


Espero les sea de utilidad.

viernes, 27 de mayo de 2016

Solucion al Error bundle 'web.assets_common' o error lessc

Solución de Errores lessc y web.assets_common




    Últimamente las nuevas librerĆ­as de Odoo 9 para mejorar el ambiente (interfaz) web tienen una serie de conflictos con el Sistema Operativo, en ocasiones podemos ver errores como la imagen anterior, errores 404, errores 500, etc., las causas pueden ser muchas pero la mayorĆ­a se basan en la librerĆ­a nodejs y npm, para dar solución a este error debemos ejecutar los siguientes comandos:

  1. sudo apt-get install nodejs
  2. sudo apt-get install npm
  3. sudo npm install -g less
  4. sudo npm install -g less-plugin-clean-css
  5. sudo ln -s /usr/local/bin/lessc /usr/bin/lessc
  6. sudo ln -s /usr/bin/nodejs /usr/bin/node


Listo, solo debemos reiniciar el servicio de Odoo y refrescar el navegador web, en ocasiones sera necesario tener que eliminar los archivos temporales y la cache del navegador.

Nota: Estos comandos solo funcionan para los Sistemas derivados de debĆ­an (Ubuntu Server, Ubuntu Desktop, Linux Mint, erc..)

miƩrcoles, 25 de mayo de 2016

Redireccionar Odoo a la Pagina Web Principal de una Base de Datos sin DB Filter

Redirección de una Pagina Web sin enviar a los Visitantes al Login o a la Selección de  la Base de Datos



    Un problema que Ćŗltimamente eh notado en Odoo, es al momento de activar los Portales Web y tener MĆŗltiples Bases de Datos, normalmente envĆ­a a los visitantes a la selección de la Base de Datos y cuando redireccionamos el trafico de un dominio a nuestro servidor Web, este siempre es enviado directamente al login y no a la pagina Web, bueno esto puede resolverse de muchas formas, utilizando subdominios, reverse proxy con nginx y muchas mas, a mi parecer todas eran un poco complejas y necesitaban muchos pasos, me di a la tarea de pensar un poco y modificar el mĆ©todo principal de re direccionamiento de odoo, el cual se encuentra en:

path_addons_odoo/web/controller/main.py

Podemos modificar este archivo con vim, vi, nano, gedit, sublime text, brackets o cualquier editor, simplemente debemos ir al metodo llamado def_login_redirect().

Debemos comentar el metodo quedando de la siguiente forma:


#def login_redirect():
#    url = '/web/login?'
#    # built the redirect url, keeping all the query parameters of the url
#    redirect_url = '%s?%s' % (request.httprequest.base_url, werkzeug.urls.url_encode(request.params))
#    return """<html><head><script>
#        window.location = '%sredirect=' + encodeURIComponent("%s" + location.hash);
#    </script></head></html>
#    """ % (url, redirect_url)

Modificamos el mƩtodo quedando de la siguiente manera:

def login_redirect():
    return """<html><head><script>
        window.location = '%sredirect=' + encodeURIComponent("%s" + location.hash);
    </script></head></html>
    """ % ('/?db=Mi_Base_de_Datos', '')

Notemos  que al final solo debemos enviar la Base a la que  se enviara a los visitantes, esta tambiĆ©n debera contener nuestra pagina Web.

Si vamos a redireccionar el trafico de un dominio externo hacia nuestro servidor Odoo, este debe ser redireccionado de la siguiente manera:

http://odoo.poncesoft.net:8069/?db=Mi_Base_de_Datos&web

El valor Mi_Base_de_Datos corresponde a la misma base a la que redireccionamos el mƩtodo login_redirect()


Nota: Cada uno de los valores para el redireccionamiento de nuestra aplicación, dependerÔ de la instalación de nuestro Servidor Odoo y si utilizamos un servidor Web como Nginx, Apache, etc. o la ejecución nativa de Odoo.