API Odoo
Como todos sabemos Odoo anteriormente OpenERP, ah modificado su Núcleo de desarrollo, ofreciendo nuevas alternativas para la creación de Módulos para este ERP, ahora trae a nosotros los modulos Website, que permiten integrar una e-shop, un sitio web, añadir temas, chat de contacto, etc.
Podemos observar también modificaciones al Framework de Desarrollo de Módulos, una nueva Api que cambia el Aspecto del desarrollo, pero que es compatible con el Framework de la versión 7 de OpenERP, mis proximas entradas seran con aspectos importantes de esta nueva Version.
Podemos observar también modificaciones al Framework de Desarrollo de Módulos, una nueva Api que cambia el Aspecto del desarrollo, pero que es compatible con el Framework de la versión 7 de OpenERP, mis proximas entradas seran con aspectos importantes de esta nueva Version.
Definición de Clases con la nueva API (Odoo)
Para la creación de una clase con la Api de Odoo se utiliza el código siguiente:
from openerp.osv import fields, osv from datetime import datetime import time class mi_clase_odoo(osv.osv): _name = 'mi.clase.odoo' #Definicion de Campos name = fields.Char('Nombre del Alumno', required=True) date_act = fields.Date('Fecha') _defaults = { 'date_act': lambda *a: time.strftime('%Y-%m-%d'), } mi_clase_odoo()
En OpenERP 7 se crearía con el código:
from openerp.osv import fields, osv from datetime import datetime import time class mi_clase_odoo(osv.osv): _name = 'mi.clase.odoo' #Definicion de Campos _description = 'Grupos' _columns = { 'name':fields.char('Nombre', size=64), 'date_act': fields.date('Fecha'), } _defaults = { 'date_act': lambda *a: time.strftime('%Y-%m-%d'), } mi_clase_odoo()
Ambas formas son Validas en el desarrollo para Odoo, ya que tiene retrocompatibilidad con la definición de clases osv.osv.
Diferencias Odoo y OpenERP7:
- La primer diferencia es la importación de las librerías, ahora importamos api y no osv.
- Al definir la clase heredamos models.Model y en OpenERP osv.osv.
- Para definir un campo en Odoo, ya no es necesario ingresarlo en un diccionario, ahora se define directamente, primer elemento nombre del campo y seguido del tipo de campo a definir, en OpenERP7 utilizamos el _columns{}.
- Definir campos por defecto se utiliza de la misma manera.
Este es mi primer Aporte sobre la Api de Odoo, espero que sea de su agrado.
Muy buena aportación de introducción del API de Odoo, espero tus nuevas publicaciones respecto a los cambios entre las versiones, sobre todo, como hacer compatibles algunos módulos de Openerp a Odoo, que aspectos debemos revisar para poder hacer esta actualización de módulos. Saludos.
ResponderBorrarMuchas Gracias, iré subiendo nuevas entradas!
BorrarGenial :)
ResponderBorrarGenial :)
ResponderBorrarAl momento de crear un nuevo modulo y generar el ejecutable me sale este error ImportError: No module named osv
ResponderBorrarQue tal revisa que este definido esto en la cabecera principal:
Borrarfrom openerp.osv import fields, osv
Hola buenas tardes Germán Ponce ¿cual es tu correo?
ResponderBorrarBuenas tardes, es german.ponce@outlook.com para servirles.
Borrar