-
Notifications
You must be signed in to change notification settings - Fork 1
2. Desenvolupament amb Odoo
Odoo anomena "aplicacions" al seu sistema modular, és a dir, als complements que permeten ampliar les funcionalitats de l'ERP. Gràcies al sistema modular es pot aprofitar Odoo per a adaptar-lo amb relativa facilitat a les necessitats de l'IMS, però cal tenir clars una sèrie de conceptes que s'expliquen a continuació.
El model de dades és el que permet emmagatzemar un conjunt d'informació referent a un ítem i és fruit del procés d'abstracció i disseny.
Dins els mòduls, cada model de dades ve definit per la definició d'una classe en Python que farà servir tipus de dades proporcionades per Odoo.
from odoo import fields, models
class TestModel(models.Model):
_name = "test.model"
_description = "Test Model"
name = fields.Char()
Odoo s'encarrega de generar les taules (incloent-hi regles, claus primàries i claus foranes) i registres dins la base de dades en funció del model de dades que s'ha definit fent servir Python. Tot el procés és automàtic i, per tant, cal evitar fer modificacions manuals dins la base de dades.
Table "public.test_model"
Column | Type | Collation | Nullable | Default
--------------------+-----------------------------+-----------+----------+---------------------------------------------
id | integer | | not null | nextval('test_model_id_seq'::regclass)
create_uid | integer | | |
create_date | timestamp without time zone | | |
write_uid | integer | | |
write_date | timestamp without time zone | | |
name | character varying | | |
Indexes:
"test_model_pkey" PRIMARY KEY, btree (id)
Foreign-key constraints:
"test_model_create_uid_fkey" FOREIGN KEY (create_uid) REFERENCES res_users(id) ON DELETE SET NULL
"test_model_write_uid_fkey" FOREIGN KEY (write_uid) REFERENCES res_users(id) ON DELETE SET NULL
Com es pot observar, de forma automàtica s'han afegit nous atributs al model que són necessaris per al correcte funcionament d'Odoo i les seves funcions de traçabilitat.
Les vistes fan referència al "front-end", és a dir, tot allò amb el que l'usuari pot interactuar i es programen amb XML o QWeb dependent del cas.
Les vistes en format llistat permeten llistar tot un conjunt de registres, des d'aquí l'usuari pot accedir a les operacions de tipus CRUD per a cada registre:
Font: https://www.odoo.com/documentation/16.0/es/developer/howtos/rdtraining/07_basicviews.html#list
Els formularis permeten a un usuari editar les dades d'un model.
Font: https://www.odoo.com/documentation/16.0/es/developer/howtos/rdtraining/07_basicviews.html#form
Els informes són pàgines web que es generen de forma dinàmica i proporcionen dades útils als usuaris, el codi font d'aquests informes es defineix dins un mòdul fent servir QWeb i les seves dades resultants es poden exportar a diferents formats.
Font: https://www.odoo.com/documentation/16.0/es/developer/reference/backend/reports.html#
Els taulers (dashboards) permeten mostrar dades interactives que faciliten la seva anàlisi i interpretació: