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