Categorías
Odoo Sin categoría

Añadir banner/imagen en todas las paginas odoo

Algunas veces, utilizando odoo, si tienes una vez de pruebas, o si quieres poner un mensaje que lo vean todos los usuarios y en todas las páginas, un buen modo de conseguirlo es poner un banner o imagen en una de las esquinas para que se de cuenta.

La idea es conseguir un resultado parecido a este. Donde se puede ver en todas las páginas el banner de ejemplo que pone «MENSAJE»

Para lograrlo tenemos que hacer los siguientes pasos. Desde settings vamos a vistas para crear una nueva. (recordad estar en modo developer, si no sabeis como activarlo, podeis verlo aquí)

La imagen tiene un atributo ALT vacío; su nombre de archivo es image-5.png

Una vez estamos en vistas, creamos una nueva, le damos un nombre 1️⃣, en este caso banner, luego cambiamos el view type 2️⃣ a qweb, el inherit view 3️⃣ a web layout y el view inheritance mode 4️⃣a extended view.

La imagen tiene un atributo ALT vacío; su nombre de archivo es image-6-1024x433.png

Luego copias el codido que vereis aqui abajo 5️⃣ y finalmente cambias el mensaje según vuestras necesidades, reemplazando MENSAJE 6️⃣

<?xml version="1.0"?>

<data inherit_id="web.layout">

<xpath expr="//body" position="inside">
  <div>
    <span style="width: 400px;top: 55px;left: -100px;font-size: 40px;
                 text-align: center;padding: 10px;line-height: 30px;
                 color: #f0f0f0; transform: rotate(-45deg); position: fixed;
                 box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); background: #D0442C;
                 opacity: 0.6; pointer-events: none; text-transform: uppercase; 
                 z-index:9999">
    MENSAJE</span>
  </div>
</xpath>

</data>

Guardar cambios y refrescais navegador, al instante os aparecerá el banner.

Categorías
Odoo V16

Evitar que se pueda crear un dropship desde compras

Lo bueno y lo malo de odoo es que te permite muchas opciones. Esto tiene su parte buena y su parte mala. Al ser flexible, no es tan rígido como SAP o navision, pero a su vez te va a permitir algún tipo de proceso que igual no es el más acertado para tu empresa.

Un ejemplo de ello, es el dejarte hacer dropship desde compras. Generalmente si lo haces desde ventas, tienes todo el flujo «controlado», es decir, no se te quedará ningún dropship por «vender y comprar». En cambio, si haces un dropship desde compras, puede que la venta se te escape. Esto es debido a que el sistema te deja hacer el dropship desde el proveedor al cliente o donde elijas, sin enlazarlo a un pedido de venta, ya que se ha originado en la compra en vez de la venta.

Para evitar estos casos, os voy a mostrar como mediante el domain se puede restringir el tipo de operaciones que podremos hacer desde compras.

Como podeis ver en un ejemplo de la V16, uno de los destinos es un dropship, cuando desplegamos los destinos de envio.

Si entramos en estudio desde el formulario de compras y vamos a view1️⃣ y luego a more2️⃣

entramos en las vistas heredadas 3️⃣ y en la tercera entrada encontraremos el campo que estamos buscando 4️⃣

El campo relacionado con el envio es el de picking_type_id

y lo que tenemos que hacer es modificar su domain. Originalmente el domain solo filtra por los envios «incoming» de entrada, sin filtrar nada mas.

<field name="picking_type_id" domain="[('code','=','incoming'), '|', ('warehouse_id', '=', False), ('warehouse_id.company_id', '=', company_id)]" options="{'no_create': True}" groups="stock.group_stock_multi_locations"/>
                

Nosoros lo vamos a modificar de modo que no nos muestro los que tengan por nombre Dropship.

<field name="picking_type_id" domain="[('code','=','incoming'),'|',('warehouse_id','=',False),('warehouse_id.company_id','=',company_id),('name','not ilike','dropship')]" options="{'no_create': True}" groups="stock.group_stock_multi_locations"/>
                

Fijaros como ahora hemos añadido (‘name’,’not ilike’,’dropship’) de modo que solo las entradas que no contengan dropship, serán tenidas en cuenta, de este modo solo tendremos operaciones de compra que no incluyan dropship. De este modo, el dropship solo estará permitido si se origina desde la venta.

Categorías
navision

Navision 2017 no funciona al minimizarlo

Debido a la configuración de pantalla o de los PPP puede pasar que al minizar el programa y pasar a otro y mas tarde volver navision, el programa te «tire» y finalice.

Si os ocurre este comportamiento, una de las opciones que poder utilizar, es cambiar el PPP del programa. Para ello vais al acceso directo, propiedades->compatibilidad

Luego se abrirá otra ventana donde tendréis que elegir que sea el sistema el que controlo el ppp y no la aplicación.

Categorías
Odoo Sin categoría

Record rule para acceder a equipos y tickets de tu equipo o de tus esquipos escalados

En odoo es importante la seguridad, y para poder acceder a los tickets que un usuario haya creado y luego haya sido escalado a otro equipo sin que por ello este usuario tenga acceso a otros donde no es miembro.

Para conseguirlo se tiene que utilizar la ayuda de los record rules y añadir una como esta para los usuarios de helpdesk.

['|' ,'|',('member_ids','in', user.id), ('member_ids','=', False) , ('id','child_of',user.partner_id.helpdesk_team_id.escalation_team_ids) ]

Creando esta regla y aplicandola a los usuarios de helpdesk, conseguimos que tengan acceso a aquellos en los cuales pertenecen como miembros o en caso de ser un ticket escalado, el equipo en cuestion es uno de los permitidos a escalar en el propio equipo del usuario.

De este modo, podrá ver sus tickets, los de su equipo y los escalados. Sin tener que ver los demás equipos. Con este enfoque solo se tiene que tener en cuenta que tambien podria ver los tickets escalados por otros equipos dentro de sus «equipos permitidos a escalar». Pero bueno, dependiendo de la política de la empresa, esto no tiene porque ser un problema.

Categorías
Odoo

Cambiar orden por defeco vista en odoo

Para cambiar el orden por defecto en una vista de odoo, es realmente sencillo de conseguir añadiendo

En este ejemplo veremos como en los pedidos de venta que están organizados por numero. Los ordenaremos por cliente que como se puede ver están desordenados.

Para ello iremos a Odoo studio en la vista en cuestión (recordad que el modo developer tiene que estar activado también).

A continuación, iremos a la lengüeta ver1️⃣, y pulsaremos en mas2️⃣

Nos llevará a la vista en modo XML, pulsaremos en editar y en la linea

<tree string="Sales Orders" multi_edit="1" sample="1" >

la modificaremos por

<tree string="Sales Orders" multi_edit="1" sample="1" default_order="partner_id" >

el resultado final lo podéis ver en la imagen.

Finalmente guardamos, cerramos Studio y el resultado será el esperado.

Dejad vuestros comentarios.

Categorías
Sin categoría

Como ver cabeceras de email en outlook

Para ver las cabeceras en los emails de outlook dependiendo de la versión deberemos hacer lo siguiente:

Versiones de escritorio:

Abriremos el mensaje e iremos a Archivo.

Una vez allí, elegimos el icono «Propiedades»

Se nos abrirá una ventana con las cabeceras que estabamos buscando.

En versiones web:

En este caso, no hace falta abrir el mensaje, solo hay que ir al desplegable de la derecha(1) y elegir ver detalles del mensaje (2)

Se nos abrirá otra ventana, mostrando los detalles de nuestro email

Categorías
Excel Sin categoría

Añadir columnas en misma fila basado en mismo valor otra columna

Si necesitais mover el valor de las columnas en una misma celda de una fila basandose en otro valor de otra columna, a continuación podreis ver como lo podreis conseguir.

Veamos un ejemplo. Si partimos de una tabla de datos como la que se aprecia en la imagen. Nuestra intención es poner los valores de la tercera columna en la primera fila de cada uno de los grupos de fila que nos viene dado por la columna «Valor1»

De modo que el resultado que queremos conseguir, es el siguiente. Fijaros en las filas en negrita, en ellas hemos pasado los valores de la columna «ValorAPonerEnFila» y los hemos pasado a la primera celda de cada grupo (en este caso serparados por , pero podriamos poner cualquier caracter como separador.

La fórmula que nos va a permitir hacer esto será la siguiente =SI(B3<>B4;D3;CONCAT(E4;»,»;D3)). Con el simple uso de el SI y CONCAT, conseguiremos el objetivo buscado. Vamos a verlo con más detalle.

Primero, ponemos la condición donde evaluamos si estamos en el mismo grupo o es un grupo diferente B3<>B4, si es el caso, elegiremos el valor de la columna correspondiente sin concatenar, D3 si por el contrario es el mismo grupo, concatenaremos el valor que ya hemos puesto en la fila, luego una coma y por último el valor de la columna. CONCAT(E4;»,»;D3). Porúltimo, arrastraremos la formula hacia abajo por todas las columnas. Así conseguimos que se vaya añadiendo una columna en nuestra celda final, en cada paso que damos.

Una vez conseguido nuestro propósito, facilmente podemos variar el orden de nuestra celda resultado simplemente cambiando el orden de nuestra concatenación. De este modo, si cambiamos el E4 por el D3 dentro del concat, conseguiremos que cambie el orden de nuestra celda resultado.

En la imagen podeis ver como ahora el orden del resultado ha cambiado.

Lo mismo sucede, con el delimitador, simplemente cambiando la coma por un espacio conseguimos que el resultado tenga este aspecto.

Dejad vuestros comentarios.

Categorías
Excel Sin categoría

Repetir valor en filas vacias

Alguna vez habeis tenido un excel donde varias filas tienen en común el valor de la primera fila de su grupo pero las demas celdas estan vacias y necesitais «relllenarlo». Es el típico caso Cabecera-Líneas, donde tienes ciertos valores de la cabecera que no están en las líneas y necesitas repetirlo para luego hacer operaciones en las lineas. En la imagen de más abajo podeis ver un ejemplo. Como podreis ver, debajo del número de pedido no se repite el valor de mismo, por lo que se pueden hacer operaciones basadas en el valor del pedido.

Un modo de solucionarlo es añadir una columna y poner la siguiente fórmula =SI(ESBLANCO(C2);D1;C2) en ella con lo que nos rellenará el valor del pedido en todas las líneas.

El resultado será el siguiente:

Como podeis ver ahora todas lineas tienen el valor del pedido.

Dejad vuestros comentarios.

Categorías
Odoo

Activar modo developer en odoo

Hay varios modos de hacerlo. vamos a ver cuales son.

1.- Desde el menu principal,

Si vamos al modulo de ajustes,

una vez allí, vamos al final de la página hasta la sección de «herramientas de desarrollo y hacemos clic en «activar modo de desarrollo (con activos)(1)

2.- Otro modo de hacer lo mismo es desde la url de nuestro odoo.

Simplemente añadir ?debug=1 o ?debug=true después de web por ejemplo si tenemos el siguiénte url

lo convertimos en el siguiente texto.

Tanto en un caso como en otro deberemos tener como resultado el poder visualizar el icono (un escarabajo) en la barra de menus, esto nos indica que estamos en el modo developer, de lo contrario algún paso no lo habremos hecho del modo correcto.

Categorías
Odoo Sin categoría

Limpieza automatica de los logs de Odoo

Por defecto, la app para registrar los logs en odoo tiene deshabilitada la acción planificada encargada de borrar los logs cada cierto tiempo. Al principio esto puede parecer una ventaja, pero a la larga puede suponer un problema ya que el no vaciar los logs puede suponer un incremento sustancial del tamaño de la base de datos. Esto puede aumentar el coste de la aplicacion si no tenemos suficiente espacio contratado para ello. Os vamos a enseñar a como evitar este extremo para que podamos mantener correctamente la base de datos.

Con el modo developer activado (si no sabeis, podeis ver como se hace aquí), hay que ir al menú de Tecnico(1), después a acciones planificadas(2) y filtrar por log(3) y hacer clic en «limpiar automáticamente en auditlogs»

Una vez allí dentro, editamos el form y hacemos clic en Activo(1) para activar la acción planificada. Por defecto, se borrarán los auditlogs mayores de 6 meses(180). Si queremos cambiar este valor, lo hacemos en (2), donde pondremos el valor en dias que queramos preservar.

Una vez guardado el form, a partir de ahora odoo limpiará los auditlogs regularmente cada día, eliminando los auditlogs con más antigüedad que los que hayamos indicado.