Skip to Content
Odoo Meniu
  • Autentificare
  • Try it free
  • Aplicații
    Finanțe
    • Contabilitate
    • Facturare
    • Cheltuieli
    • Spreadsheet (BI)
    • Documente
    • Semn
    Vânzări
    • CRM
    • Vânzări
    • POS Shop
    • POS Restaurant
    • Abonamente
    • Închiriere
    Site-uri web
    • Constructor de site-uri
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Lanț Aprovizionare
    • Inventar
    • Producție
    • PLM
    • Achiziție
    • Maintenance
    • Calitate
    Resurse Umane
    • Angajați
    • Recrutare
    • Time Off
    • Evaluări
    • Referințe
    • Flotă
    Marketing
    • Social Marketing
    • Marketing prin email
    • SMS Marketing
    • Evenimente
    • Automatizare marketing
    • Sondaje
    Servicii
    • Proiect
    • Foi de pontaj
    • Servicii de teren
    • Centru de asistență
    • Planificare
    • Programări
    Productivitate
    • Discuss
    • Aprobări
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Aplicații Terțe Odoo Studio Platforma Odoo Cloud
  • Industrii
    Retail
    • Book Store
    • Magazin de îmbrăcăminte
    • Magazin de Mobilă
    • Magazin alimentar
    • Magazin de materiale de construcții
    • Magazin de jucării
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Distribuitor de băuturi
    • Hotel
    Proprietate imobiliara
    • Real Estate Agency
    • Firmă de Arhitectură
    • Construcție
    • Estate Managament
    • Grădinărit
    • Asociația Proprietarilor de Proprietăți
    Consultanta
    • Firma de Contabilitate
    • Partener Odoo
    • Agenție de marketing
    • Law firm
    • Atragere de talente
    • Audit & Certification
    Producție
    • Textil
    • Metal
    • Mobilier
    • Mâncare
    • Brewery
    • Cadouri corporate
    Health & Fitness
    • Club Sportiv
    • Magazin de ochelari
    • Centru de Fitness
    • Wellness Practitioners
    • Farmacie
    • Salon de coafură
    Trades
    • Handyman
    • IT Hardware and Support
    • Asigurare socială de stat
    • Cizmar
    • Servicii de curățenie
    • HVAC Services
    Altele
    • Organizație nonprofit
    • Agenție de Mediu
    • Închiriere panouri publicitare
    • Fotografie
    • Închiriere biciclete
    • Asigurare socială
    Browse all Industries
  • Comunitate
    Învăță
    • Tutorials
    • Documentație
    • Certificări
    • Instruire
    • Blog
    • Podcast
    Empower Education
    • Program Educațional
    • Scale Up! Business Game
    • Visit Odoo
    Obține Software-ul
    • Descărcare
    • Compară Edițiile
    • Lansări
    Colaborați
    • Github
    • Forum
    • Evenimente
    • Translations
    • Devino Partener
    • Services for Partners
    • Înregistrează-ți Firma de Contabilitate
    Obține Servicii
    • Găsește un Partener
    • Găsiți un contabil
    • Meet an advisor
    • Servicii de Implementare
    • Referințe ale clienților
    • Suport
    • Actualizări
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Obține un demo
  • Prețuri
  • Ajutor

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Contabilitate
  • Inventar
  • PoS
  • Proiect
  • MRP
All apps
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
All Posts Oameni Insigne
Etichete (View all)
odoo accounting v14 pos v15
Despre acest forum
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
All Posts Oameni Insigne
Etichete (View all)
odoo accounting v14 pos v15
Despre acest forum
Suport

v14: how can i get parent value in the creation of child?

Abonare

Primiți o notificare când există activitate la acestă postare

Această întrebare a fost marcată
parentchildv14
2 Răspunsuri
6850 Vizualizări
Imagine profil
SmithJohn45

model is 'product.category ', want to inhereit and add a field 'level' to add the levels to find which level record i want.

we knew that by default (as recommended) that first entry 'All' here should present to start the parent child relations.

when user create a new category and select All as its parent, we knew that its level is 1 and we can add 2, programatically it should be parent level + 1 ... so we can add levels of any depth.

i don't know how to code it, so please help me for the below onchange function (or any other better approach, please specify), modify it to achieve what i wants to have.

@api.onchange(parent_id):

def _onchange_parent_id(self):

  find the level of parent here...

  self.level = parent_level + 1

regards


0
Imagine profil
Abandonează
Imagine profil
Neha Sharma
Cel mai bun răspuns

Hello SmithJohn45,

Suppose we have a product category hierarchy as below


A > B > C > D


and we need to find the level for the category "C" with the code (the answer is 3)

So to find the level for the category, here is the method that you need to write:


def find_level_of_category(self, catg_id):

    level = 1

    if catg_id.parent_id:

        parent_id = catg_id.parent_id

        while (parent_id):

            level += 1

            parent_id = parent_id.parent_id

        return level

    return level



You can simply call this method to your onchange, you need to pass "self.parent_id" as a parameter into the above method, so it will give you the level of the "self.parent_id".


Thanks!

For more information Contact us:- https://kanakinfosystems.com/odoo-development-services

0
Imagine profil
Abandonează
SmithJohn45
Autor

thank you @Neha Sharma for help :), will implement and give feedback here.

SmithJohn45
Autor

@Neha Sharma, please check, if it is ok or i made mistake(s)

from odoo import api, fields, models

class ProductCateg(models.Model):

_inherit = 'product.category'

level = fields.Integer(string='Level')

@api.onchange('parent_id')

def find_level_of_category(self):

levels = 1

if self.parent_id:

parent_id = self.parent_id

while (parent_id):

levels += 1

parent_id = parent_id.parent_id

self.level = levels

regards

Neha Sharma

# -*- coding: utf-8 -*-

from odoo import api, fields, models

class ProductCateg(models.Model):

_inherit = 'product.category'

level = fields.Integer(string='Level')

@api.onchange('parent_id')

def onchange_parent_id(self):

if self.parent_id:

level = self.find_level_of_category()

self.level = level

def find_level_of_category(self):

level = 1

if self.parent_id:

parent_id = self.parent_id

while (parent_id):

level += 1

parent_id = parent_id.parent_id

return level

return level

SmithJohn45
Autor

@Neha Sharma, implemented the code for model, updated manually level column for All to 1 and All / Electronics to 2, from UI created a record, choose All / Electronics as its parent, but level not updated with required value. ( i have copy/pasted your last code as it is, indent with pycharm option and restart server, upgraded module and then checked ) anything else i missed ?

Neha Sharma

Can you share a screenshot of your pycharm code?

SmithJohn45
Autor

can't post screenshot here, so i have to use Answer portion here...

SmithJohn45
Autor

@Neha Sharma, i have added screenshot, please check.

Neha Sharma
Okay I will attach .py and xml file and video or flow maybe it helps you


On Fri, 29 Jan 2021 at 15:47, SmithJohn45 <oralover2006@gmail.com> wrote:

@Neha Sharma, i have added screenshot, please check.

Sent by Odoo S.A. using Odoo.

Neha Sharma

i have sent a mail to you with attached .py and xml file along with video maybe it works

SmithJohn45
Autor

thanks @Neha Sharma for your struggle to help me, i have seen in my gmail account for your email but not yet received, also checked in Spam, may be sometimes take time, will check after 15 minutes. thanks again :)

Neha Sharma
Ok, no problem. 

On Fri, 29 Jan 2021 at 18:15, SmithJohn45 <oralover2006@gmail.com> wrote:

thanks @Neha Sharma for your struggle to help me, i have seen in my gmail account for your email but not yet received, also checked in Spam, may be sometimes take time, will check after 15 minutes. thanks again :)

Sent by Odoo S.A. using Odoo.

Neha Sharma
Have you received my mail?

On Fri, 29 Jan, 2021, 6:15 PM SmithJohn45, <oralover2006@gmail.com> wrote:

thanks @Neha Sharma for your struggle to help me, i have seen in my gmail account for your email but not yet received, also checked in Spam, may be sometimes take time, will check after 15 minutes. thanks again :)

Sent by Odoo S.A. using Odoo.

SmithJohn45
Autor

@Neha Sharm, no, not yet received email, don't know why, even checked Spam and also Trash may be i accidently deleted but failed to find the email. what is the Subject of email? and is it through Odoo platform?

how i can request a feature in forum, there is no notification here within forum if someone Answer or Comment... user should check the email or On email's notification, but it is not possible for us especially when we are on Client.

Neha Sharma
okay, I will be sent you a mail again with some attachments of the .py and XML file and video flow.


On Sat, 30 Jan 2021 at 09:22, SmithJohn45 <oralover2006@gmail.com> wrote:

@Neha Sharm, no, not yet received email, don't know why, even checked Spam and also Trash may be i accidently deleted but failed to find the email. what is the Subject of email? and is it through Odoo platform?

how i can request a feature in forum, there is no notification here within forum if someone Answer or Comment... user should check the email or On email's notification, but it is not possible for us especially when we are on Client.

Sent by Odoo S.A. using Odoo.

Neha Sharma
I already sent you mail again if you find it then please reply to my mail.
Thanks...

On Mon, 1 Feb 2021 at 16:34, Neha Sharma <nsa@kanakinfosystems.com> wrote:
okay, I will be sent you a mail again with some attachments of the .py and XML file and video flow.


On Sat, 30 Jan 2021 at 09:22, SmithJohn45 <oralover2006@gmail.com> wrote:

@Neha Sharm, no, not yet received email, don't know why, even checked Spam and also Trash may be i accidently deleted but failed to find the email. what is the Subject of email? and is it through Odoo platform?

how i can request a feature in forum, there is no notification here within forum if someone Answer or Comment... user should check the email or On email's notification, but it is not possible for us especially when we are on Client.

Sent by Odoo S.A. using Odoo.

Imagine profil
SmithJohn45
Autor Cel mai bun răspuns

@Neha Sharma, screenshot is here as instructed. (already mentioned in my opening post that "i don't now how to code it" so, it is copy pasted as you did it for me)


0
Imagine profil
Abandonează
Julian Dumitrascu

Where did you paste it?

Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Înscrie-te
Related Posts Răspunsuri Vizualizări Activitate
ver 14: how to search parent_id and its all child in model product.category in Many2one field
domain parent child v14
Imagine profil
Imagine profil
1
iul. 23
6292
How to add child view field in Parent search view
parent child
Imagine profil
Imagine profil
1
mar. 15
8468
Odoo Project oddities and limitations
project task parent child
Imagine profil
Imagine profil
1
apr. 24
2478
How to create Workcenter childs?
tree workcenter child v14
Imagine profil
0
nov. 21
2604
How do i get a parent model in a child model?
models parent model child
Imagine profil
0
mai 17
4821
Comunitate
  • Tutorials
  • Documentație
  • Forum
Open Source
  • Descărcare
  • Github
  • Runbot
  • Translations
Servicii
  • Hosting Odoo.sh
  • Suport
  • Actualizare
  • Custom Developments
  • Educație
  • Găsiți un contabil
  • Găsește un Partener
  • Devino Partener
Despre Noi
  • Compania noastră
  • Active de marcă
  • Contactați-ne
  • Locuri de muncă
  • Evenimente
  • Podcast
  • Blog
  • Clienți
  • Aspecte juridice • Confidențialitate
  • Securitate
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo este o suită de aplicații de afaceri open source care acoperă toate nevoile companiei dvs.: CRM, comerț electronic, contabilitate, inventar, punct de vânzare, management de proiect etc.

Propunerea de valoare unică a Odoo este să fie în același timp foarte ușor de utilizat și complet integrat.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now