Skip to Content
Odoo Menú
  • Registra entrada
  • Prova-ho gratis
  • Aplicacions
    Finances
    • Comptabilitat
    • Facturació
    • Despeses
    • Full de càlcul (IA)
    • Documents
    • Signatura
    Vendes
    • CRM
    • Vendes
    • Punt de venda per a botigues
    • Punt de venda per a restaurants
    • Subscripcions
    • Lloguer
    Imatges de llocs web
    • Creació de llocs web
    • Comerç electrònic
    • Blog
    • Fòrum
    • Xat en directe
    • Aprenentatge en línia
    Cadena de subministrament
    • Inventari
    • Fabricació
    • PLM
    • Compres
    • Manteniment
    • Qualitat
    Recursos humans
    • Empleats
    • Reclutament
    • Absències
    • Avaluacions
    • Recomanacions
    • Flota
    Màrqueting
    • Màrqueting Social
    • Màrqueting per correu electrònic
    • Màrqueting per SMS
    • Esdeveniments
    • Automatització del màrqueting
    • Enquestes
    Serveis
    • Projectes
    • Fulls d'hores
    • Servei de camp
    • Suport
    • Planificació
    • Cites
    Productivitat
    • Converses
    • Artificial Intelligence
    • IoT
    • VoIP
    • Coneixements
    • WhatsApp
    Aplicacions de tercers Odoo Studio Plataforma d'Odoo al núvol
  • Sectors
    Comerç al detall
    • Llibreria
    • Botiga de roba
    • Botiga de mobles
    • Botiga d'ultramarins
    • Ferreteria
    • Botiga de joguines
    Food & Hospitality
    • Bar i pub
    • Restaurant
    • Menjar ràpid
    • Guest House
    • Distribuïdor de begudes
    • Hotel
    Immobiliari
    • Agència immobiliària
    • Estudi d'arquitectura
    • Construcció
    • Property Management
    • Jardineria
    • Associació de propietaris de béns immobles
    Consultoria
    • Empresa comptable
    • Partner d'Odoo
    • Agència de màrqueting
    • Bufet d'advocats
    • Captació de talent
    • Auditoria i certificació
    Fabricació
    • Textile
    • Metal
    • Mobles
    • Menjar
    • Brewery
    • Regals corporatius
    Salut i fitness
    • Club d'esport
    • Òptica
    • Centre de fitness
    • Especialistes en benestar
    • Farmàcia
    • Perruqueria
    Trades
    • Servei de manteniment
    • Hardware i suport informàtic
    • Sistemes d'energia solar
    • Shoe Maker
    • Serveis de neteja
    • Instal·lacions HVAC
    Altres
    • Nonprofit Organization
    • Agència del medi ambient
    • Lloguer de panells publicitaris
    • Fotografia
    • Lloguer de bicicletes
    • Distribuïdors de programari
    Browse all Industries
  • Comunitat
    Aprèn
    • Tutorials
    • Documentació
    • Certificacions
    • Formació
    • Blog
    • Pòdcast
    Potenciar l'educació
    • Programa educatiu
    • Scale-Up! El joc empresarial
    • Visita Odoo
    Obtindre el programari
    • Descarregar
    • Comparar edicions
    • Novetats de les versions
    Col·laborar
    • GitHub
    • Fòrum
    • Esdeveniments
    • Traduccions
    • Converteix-te en partner
    • Services for Partners
    • Registra la teva empresa comptable
    Obtindre els serveis
    • Troba un partner
    • Troba un comptable
    • Contacta amb un expert
    • Serveis d'implementació
    • Referències del client
    • Suport
    • Actualitzacions
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Programar una demo
  • Preus
  • Ajuda
You need to be registered to interact with the community.
All Posts People Badges
Etiquetes (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Etiquetes (View all)
odoo accounting v14 pos v15
About this forum
Ajuda

Override the Unlink function

Subscriure's

Get notified when there's activity on this post

This question has been flagged
1 Respondre
10255 Vistes
Avatar
Zakaria

Hello,

I have Override the unlink function of my class, as follows:

@api.multi
def unlink(self):

#record = self.env['affichage2.pack_stock'].search(['public_serial','=',self.public_serial])

for record in self:

p = self.env['affichage2.pack_stock'].browse(record.id)

if (p.vente != None or p.vente2 != None):

raise osv.except_osv(('Invalid Action!'), ('Le pack est déjà affecté ! Vous ne pouvez pas le supprimer',p.vente2,p.vente))


rec = super(Pack_Stock, self).unlink()
return rec

This function shows a warning  if the records "vente" and "vente2" are not empty. The problem is the verification didn't made well. The function didn't run as i want. How i can access to the values of these  2 fields from the Unlink function ?


1
Avatar
Descartar
Avatar
Yogendrasinh Chavda
Best Answer

Hello Zakaria,

No need to check condition with "None", Try below code.
make sure this function is override in affichage2.pack_stock Class.


@api.multi def unlink(self):

    # record = self.env['affichage2.pack_stock'].search(['public_serial','=',self.public_serial])

    for record in self:

      # p = self.env['affichage2.pack_stock'].browse(record.id)

      # You got recordset so no need to browse it again 

      if not record.vente or not record.vente2:

         raise osv.except_osv(('Invalid Action!'), ('Le pack est déjà affecté ! Vous ne pouvez pas le supprimer',p.vente2,p.vente))

    return super(Pack_Stock, self).unlink()

Thanks

4
Avatar
Descartar
Zakaria
Autor

Thank you Chavda, but i have tried it like that, it not working also. That is because the condition IF didn't get the values of "vente2" and "vente". I have declared these values as follows :

vente = fields.Many2one('res.users', 'Vendu à Distributeur')

vente2 = fields.Many2one('res.users', 'Vendu à Client')

Yogendrasinh Chavda

make sure vente or vente2 have value in the record.

Zakaria
Autor

They are empty, and when they are empy i want to restrict the delete.

Yogendrasinh Chavda

Ok

then put condition

if not record.vente or not record.vente2:

This condition will raise exception when both or one of them is empty

Zakaria
Autor

Ok i will try it, thank you Bro

Zakaria
Autor

I have tried it, and still the same ..

Zakaria
Autor

I resloved it, i made this in condition :

if ( len(record.vente)!=0 or len(record.vente2)!=0) :

Yogendrasinh Chavda

Good !!

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

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

Registrar-se
Community
  • Tutorials
  • Documentació
  • Fòrum
Codi obert
  • Descarregar
  • GitHub
  • Runbot
  • Traduccions
Serveis
  • Allotjament a Odoo.sh
  • Suport
  • Actualització
  • Desenvolupaments personalitzats
  • Educació
  • Troba un comptable
  • Troba un partner
  • Converteix-te en partner
Sobre nosaltres
  • La nostra empresa
  • Actius de marca
  • Contacta amb nosaltres
  • Llocs de treball
  • Esdeveniments
  • Pòdcast
  • Blog
  • Clients
  • Informació legal • Privacitat
  • Seguretat
الْعَرَبيّة 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 Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo és un conjunt d'aplicacions empresarials de codi obert que cobreix totes les necessitats de la teva empresa: CRM, comerç electrònic, comptabilitat, inventari, punt de venda, gestió de projectes, etc.

La proposta única de valor d'Odoo és ser molt fàcil d'utilitzar i estar totalment integrat, ambdues alhora.

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