AÑADIR NUEVOS

CAMPOS

Añadir nuevos campos es una de las virtudes con las que cuenta Odoo al ser de codigo abierto y permitir al usuario un gran margen de personalización.

¿Por que añadir nuevos campos?

Odoo aún teniendo múltiples campos y criterios de búsqueda puede que para ciertas tareas no tenga el campo que nos gustaría. En estos casos tenemos dos opciones, utilizar un modulo ya sea creado por nosotros mismo o por un tercero ó crear un campo para la tarea que vayamos a realizar.

Pasos Previos

Para crear un campo nuevo de manera manual necesitaremos lo siguiente:

  • Un usuario con permisos de Administración: Ajustes

  • Activar desde Ajustes el Modo de Desarrollador

Crear nuevo campo

Para esta muestra crearemos un campo en el modulo de Contacto que nos permita saber dentro del modulo de Ventas si es correcto o no crear un presupuesto/pedido de venta.

Pasos a seguir

Entrado a cualquier contacto creado con anterioridad en la parte superior derecha entraremos en el icono «debug» y seleccionaremos la opción Ver campos, des de allí veremos el listado de todos los campos que componen a un contacto.

Una vez dentro clicamos en la Crear que nos llevará al formulario de creación del campo.

Por defecto al ser un campo externo a los predeterminados por Odoo estos deben empezar con «x_» para poder diferenciarlos, en este caso usaremos el nombre interno de x_sale_permisssion, seleccionaremos Selección como Tipo de campo, en etiqueta de campo podemos introducir lo que queramos que se vea como nombre del campo, nosotros usaremos Autorización de venta.

Como hemos entrado des de un formulario de contacto no necesitamos cambiar el Modelo, en otro caso si que deberíamos cambiarlo al que nos corresponda.

Haremos que nuestro campo sea obligatorio al momento de crear un contacto marcando la casilla Requerido, todas las demás casillas las podemos dejar como esta establecido por defecto.

Al haber escogido Selección tendremos nuevos parámetros a introducir. En este sencillo caso solo usaremos dos opciones una con valor True y otra con valor False, con los nombres de Confirmado y Denegado.

Una vez acabado deberíamos tener un formulario idéntico a este.

Con esto hecho el campo ya esta creado de manera correcta.

Añadir campo en formulario de contacto

Para poder ver nuestro campo habrá de modificar la vista del formulario esto lo haremos dentro cualquier contacto y entrando dentro del icono de «debug» y seleccionando Vista de edición: Form.

Entraremos dentro de la estructura de la vista del formulario de contacto, en nuestro caso situaremos nuestro campo después del de IVA (<field name=»vat»>, línea aproximada 42), introduciendo en la siguiente línea este trozo de código xml <field name=»x_sale_permission»/>.

Con esto hecho solo queda guardar y recargar la página, allí veremos nuestro campo el cual si editamos el contacto podremos seleccionar su estado de Autorización venta. Hay que tener en cuenta que los contactos creados con anterioridad no tendrán un valor por defecto, estarán vacíos por defecto, en cambio a los nuevos contactos será necesario escoger un valor para poder crearlo.

Vincular un campo con otro modulo

Ahora hemos creado un campo nuevo para el modulo de Contactos pero recordemos que el motivo por el cual lo queríamos era para vincularlo con el modulo de Ventas y tener un mejor control sobre que ventas de X cliente se de deben confirmar.

Pasos a seguir

Para poder enlazar nuestro nuevo campo con otro modulo, deberemos seguir con el Modo de Desarrollador activado.

Seguiremos exactamente los mismos pasos que en la creación del campo en el modulo de Contactos el único cambio estará en el momento de introducir lo valores del nuevo campo, para este campo haremos que este relacionado con el ya creado para que tengan el mismo valor uno con el otro, además seleccionaremos la opción de solo lectura para confirmar que no se cambiará el valor por medio del modulo de Ventas.

Lo más importante para conseguir que los campos se enlacen es añadir el campo principal (en nuestro caso el campo de Contactos) en el apartado de Campo relacionado, es necesario añadir «partner_id.» antes del campo para que de esta manera sepa exactamente de que contacto debe recibir el valor.

Ahora deberemos repetir el proceso para que el campo aparezca en el formulario de venta, añadir la propiedad readonly=’1′ .

Con esto hecho el campo de Ventas obtendrá de manera automática el valor del de Contacto.

Extras

Con los campos creados se puede administrar de mejor manera las confirmaciones de presupuestos, pero si quisiésemos añadir una capa extra de funcionalidad podríamos añadir este campo a la vista de formato lista y así concretar filtros más específicos y de mayor utilidad. Estos añadidos se deberán hacer desde la lista y con el modo de desarrollador activado entrar en Edit view: List y de la misma manera que añadimos el campo al formulario, lo añadiremos donde mejor nos convenga y así podremos tanto agrupar y/o filtrar en base al nuevo campo.

WhatsApp Enviar Whatsapp