Buenas noches. Realicé una página web dentro de Odoo a través del motor de plantillas QWeb. Me gustaría saber cómo puedo hacer validaciones de un formulario y que se vayan mostrando alertas, por ejemplo, las contraseñas deben ser iguales o el tamaño mínimo de la contraseña es de 6 dígitos. ¿Se puede realizar? Gracias de antemano.
Que tal Ignacio buenas noches y saludos desde mexico. Me encuentro con una duda quizá algo compleja para mi que recién empiezo en esto del desarrollo con odoo, y la duda que me surge es: si genero un filtro de rango de fechas (01/11/2019 - 30/11/2019)para un campo llamado por ejemplo "fecha de factura" desde la vista tree de facturas de clientes por ejemplo, como puedo recuperar los valores de inicio y fin del rango para mostrarlos en un reporte de qweb, quiza asignarle el valor a una variable por ejemplo inicio=01/11/2019, fin=30/11/2019, he estado leyendo y quiza me digas que la solucion sea un wizard pero aun me es muy complicado entender por completo el tema del wizard. Quedo atendo a tus comentarios. Saludos nuevamente
Buenas, por lo que entiendo es algo complejo. Wizard es un video que queremos hacer hace un tiempo, pero como estás haciendo notar es uno de los temas más complejos de Odoo (incluso para explicarlo). Según tu duda, un reporte Qweb actúa sobre un registro individual y no sobre una vista Tree. A lo mejore no entiendo al completo tu duda, pero yo lo que haría es generar un campo One2many que se compute con un rango de fechas (es decir, serían dos campos) y así con Qweb vas a poder obtener esa información. Si la cosa es imprimir todos los Qweb entre un rango de fechas, ahí hay varias opciones. Una es un wizard, otra sería el "multi-reporte", acá dan unas pautas: www.odoo.com/es_ES/forum/ayuda-1/question/can-t-print-multiple-reports-in-treeview-in-odoo-10-135280 Saludos!
¿En QWeb? Creo que no es posible, es bastante limitado, tendrías que generar un campo desde el Python de Odoo y así armar tu propio array. Lo que podría hacer es chequear por condiciones, por ejemplo para hacer un break se suele recomendar hacer esto:
como puedo asignarle el valor de un campo por ejemplo o.partner_id a la variable "cliente"??? es decir si el campo tiene el valor jose la variable tenga el valor jose tambien.... saludos
Sin probarlo, pero creo que deberia ser asi: Hay que asegurarse de exista "o" y que traiga el partner_id. Le agrego el "name" ya que partner_id es un Many2One y en si no tiene un valor, sino que tiene múltiples valores. Si lo que estás buscando es el nombre, lo que necesitas es acceder al name de partner_id. Saludos.
@@moldeointeractive muchas gracias por la aportación ha sido de gran ayuda, solo una duda mas, si ya conozco el valor de la iteración actual como la comparo contra el valor de la interación anterior???? ojala puedan apoyarme seria de gran ayuda.... Saludos y Bendiciones
@@asunciondelacruz En realidad sería del mismo modo que con cualquier lenguaje de programación (advertencia, QWeb no es un lenguaje de programación). Si tuviera que recomendarte algo te diría que hagas un campo computado en python. Pero si tenés que hacerlo desde QWeb la opción puede ser creando una variable vacía antes de comenzar con el ciclo for, y vas guardando el valor ahi y comparándolo con el valor actual. Al principio va a comparar el valor con un string vacío, pero al terminar la comparación simplemente reemplazás ese valor vacío por el valor actual, de modo tal que en la siguiente se compara. Así hasta finalizar el ciclo. Saludos.
Mmm es raro, a ver, te dejo la doc de Odoo en 14, según esto no cambiaron nada: www.odoo.com/documentation/14.0/reference/qweb.html#id4 Aclaro una cosa, t-js está pensado solo para debug, no para hacer operaciones de javascript, eso es más complejo.
¿Donde puedo encontrar una descripción de campos del modelo? Estoy intentando mostrar el nombre de la compañia a la que pertenece el cliente pero no lo consigo y no encuentro una documentación clara. Para obtener el nombre del cliente uso doc.partner_id.name que es el nombre de un particular. A su vez tengo asociada a esta persona con una empresa cuyo nombre es el que quiero mostrar. Gracias
Si ingresas a un registro en específico en modo Desarrollador, en el botón de debug (el bichito, arriba a la derecha) hay una opción llamada Ver Campos o View Fields donde se ve el nombre, el label y el tipo de campo. Es la forma más rápida. La compañía es el company_id, sería doc.partner_id.company_id.name. Saludos
Que grande Ignacio. Muy clarito todas tus explicaciones. Me sirvió muchísimo. Gracias!!!
Para una introducción lo veo muy correcto, gracias!
Super!, sos un buen maestro
me gustó tu video la explicación es sencilla y clara .Gracias
Graacias!
grande sensei. gracias
Buen video hermano
Buenas noches. Realicé una página web dentro de Odoo a través del motor de plantillas QWeb. Me gustaría saber cómo puedo hacer validaciones de un formulario y que se vayan mostrando alertas, por ejemplo, las contraseñas deben ser iguales o el tamaño mínimo de la contraseña es de 6 dígitos. ¿Se puede realizar? Gracias de antemano.
Que tal Ignacio buenas noches y saludos desde mexico. Me encuentro con una duda quizá algo compleja para mi que recién empiezo en esto del desarrollo con odoo, y la duda que me surge es: si genero un filtro de rango de fechas (01/11/2019 - 30/11/2019)para un campo llamado por ejemplo "fecha de factura" desde la vista tree de facturas de clientes por ejemplo, como puedo recuperar los valores de inicio y fin del rango para mostrarlos en un reporte de qweb, quiza asignarle el valor a una variable por ejemplo inicio=01/11/2019, fin=30/11/2019, he estado leyendo y quiza me digas que la solucion sea un wizard pero aun me es muy complicado entender por completo el tema del wizard. Quedo atendo a tus comentarios. Saludos nuevamente
Buenas, por lo que entiendo es algo complejo. Wizard es un video que queremos hacer hace un tiempo, pero como estás haciendo notar es uno de los temas más complejos de Odoo (incluso para explicarlo). Según tu duda, un reporte Qweb actúa sobre un registro individual y no sobre una vista Tree. A lo mejore no entiendo al completo tu duda, pero yo lo que haría es generar un campo One2many que se compute con un rango de fechas (es decir, serían dos campos) y así con Qweb vas a poder obtener esa información. Si la cosa es imprimir todos los Qweb entre un rango de fechas, ahí hay varias opciones. Una es un wizard, otra sería el "multi-reporte", acá dan unas pautas: www.odoo.com/es_ES/forum/ayuda-1/question/can-t-print-multiple-reports-in-treeview-in-odoo-10-135280
Saludos!
Donde obtengo qweb
hola buenas noches saben como usar un continue en un loop foreach
¿En QWeb? Creo que no es posible, es bastante limitado, tendrías que generar un campo desde el Python de Odoo y así armar tu propio array. Lo que podría hacer es chequear por condiciones, por ejemplo para hacer un break se suele recomendar hacer esto:
Saludos!
como puedo asignarle el valor de un campo por ejemplo o.partner_id a la variable "cliente"??? es decir si el campo tiene el valor jose la variable tenga el valor jose tambien.... saludos
Sin probarlo, pero creo que deberia ser asi: Hay que asegurarse de exista "o" y que traiga el partner_id. Le agrego el "name" ya que partner_id es un Many2One y en si no tiene un valor, sino que tiene múltiples valores. Si lo que estás buscando es el nombre, lo que necesitas es acceder al name de partner_id. Saludos.
@@moldeointeractive muchas gracias por la aportación ha sido de gran ayuda, solo una duda mas, si ya conozco el valor de la iteración actual como la comparo contra el valor de la interación anterior???? ojala puedan apoyarme seria de gran ayuda.... Saludos y Bendiciones
@@asunciondelacruz En realidad sería del mismo modo que con cualquier lenguaje de programación (advertencia, QWeb no es un lenguaje de programación). Si tuviera que recomendarte algo te diría que hagas un campo computado en python. Pero si tenés que hacerlo desde QWeb la opción puede ser creando una variable vacía antes de comenzar con el ciclo for, y vas guardando el valor ahi y comparándolo con el valor actual. Al principio va a comparar el valor con un string vacío, pero al terminar la comparación simplemente reemplazás ese valor vacío por el valor actual, de modo tal que en la siguiente se compara. Así hasta finalizar el ciclo. Saludos.
@@moldeointeractive muchas gracias justo asi lo hice y ya pude terminar mi reporte.... mil gracias!!!!!
buenas . Estoy usando odoo 14 y no me funciona el tag
Mmm es raro, a ver, te dejo la doc de Odoo en 14, según esto no cambiaron nada: www.odoo.com/documentation/14.0/reference/qweb.html#id4
Aclaro una cosa, t-js está pensado solo para debug, no para hacer operaciones de javascript, eso es más complejo.
t-js='odoo >. Falta una ' no?
¿Donde puedo encontrar una descripción de campos del modelo? Estoy intentando mostrar el nombre de la compañia a la que pertenece el cliente pero no lo consigo y no encuentro una documentación clara. Para obtener el nombre del cliente uso doc.partner_id.name que es el nombre de un particular. A su vez tengo asociada a esta persona con una empresa cuyo nombre es el que quiero mostrar. Gracias
Si ingresas a un registro en específico en modo Desarrollador, en el botón de debug (el bichito, arriba a la derecha) hay una opción llamada Ver Campos o View Fields donde se ve el nombre, el label y el tipo de campo. Es la forma más rápida. La compañía es el company_id, sería doc.partner_id.company_id.name. Saludos
@@moldeointeractive Muchas gracias! muy útil!
No entiendo la diferencia entre t-esc o t-raw Y t-field