Skip to Content
Odoo Menu
  • Prisijungti
  • Išbandykite nemokamai
  • Programėlės
    Finansai
    • Apskaita
    • Pateikimas apmokėjimui
    • Sąnaudos
    • Skaičiuoklė (BI)
    • Dokumentai
    • Pasirašymas
    Pardavimai
    • CRM
    • Pardavimai
    • Kasų sistema - Parduotuvė
    • Kasų sistema - Restoranas
    • Prenumeratos
    • Nuoma
    Svetainės
    • Svetainių kūrėjimo įrankis
    • El. Prekyba
    • Internetinis Tinklaraštis
    • Forumas
    • Tiesioginis pokalbis
    • eMokymasis
    Tiekimo grandinė
    • Atsarga
    • Gamyba
    • PLM
    • Įsigijimai
    • Priežiūra
    • Kokybė
    Žmogaus ištekliai
    • Darbuotojai
    • Įdarbinimas
    • Atostogos
    • Įvertinimai
    • Rekomendacijos
    • Transporto priemonės
    Rinkodara
    • Socialinė rinkodara
    • Rinkodara el. paštu
    • SMS rinkodara
    • Renginiai
    • Rinkodaros automatizavimas
    • Apklausos
    Paslaugos
    • Projektas
    • Darbo laiko žiniaraščiai
    • Priežiūros tarnyba
    • Pagalbos tarnyba
    • Planavimas
    • Rezervacijos
    Produktyvumas
    • Diskucija
    • Patvirtinimai
    • IoT
    • VoIP
    • Žinių biblioteka
    • WhatsApp
    Trečiųjų šalių programos Odoo Studija Odoo debesijos platforma
  • Pramonės šakos
    Mažmeninė prekyba
    • Knygynas
    • Drabužių parduotuvė
    • Baldų parduotuvė
    • Maisto prekių parduotuvė
    • Techninės įrangos parduotuvė
    • Žaislų parduotuvė
    Food & Hospitality
    • Barai ir pub'ai
    • Restoranas
    • Greitasis maistas
    • Guest House
    • Gėrimų platintojas
    • Hotel
    Nekilnojamasis turtas
    • Real Estate Agency
    • Architektūros įmonė
    • Konstrukcija
    • Estate Managament
    • Sodininkauti
    • Turto savininkų asociacija
    Konsultavimas
    • Accounting Firm
    • Odoo Partneris
    • Marketing Agency
    • Teisinė firma
    • Talentų paieška
    • Auditai & sertifikavimas
    Gamyba
    • Textile
    • Metal
    • Furnitures
    • Maistas
    • Brewery
    • Įmonių dovanos
    Sveikata & Fitnesas
    • Sporto klubas
    • Akinių parduotuvė
    • Fitneso Centras
    • Sveikatos praktikai
    • Vaistinė
    • Kirpėjas
    Trades
    • Handyman
    • IT įranga ir palaikymas
    • Saulės energijos sistemos
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Kiti
    • Nonprofit Organization
    • Aplinkos agentūra
    • Reklaminių stendų nuoma
    • Fotografavimas
    • Dviračių nuoma
    • Programinės įrangos perpardavėjas
    Browse all Industries
  • Bendrija
    Mokykitės
    • Mokomosios medžiagos
    • Dokumentacija
    • Sertifikatai
    • Mokymai
    • Internetinis Tinklaraštis
    • Tinklalaidės
    Skatinkite švietinimą
    • Švietimo programa
    • Scale Up! Verslo žaidimas
    • Aplankykite Odoo
    Gaukite programinę įrangą
    • Atsisiųsti
    • Palyginkite versijas
    • Leidimai
    Bendradarbiauti
    • Github
    • Forumas
    • Renginiai
    • Vertimai
    • Tapkite partneriu
    • Services for Partners
    • Registruokite jūsų apskaitos įmonę
    Gaukite paslaugas
    • Susiraskite partnerį
    • Susirask buhalterį
    • Susitikti su konsultantu
    • Diegimo paslaugos
    • Klientų rekomendavimas
    • Palaikymas
    • Atnaujinimai
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Gaukite demo
  • Kainodara
  • Pagalba

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

  • CRM
  • e-Commerce
  • Apskaita
  • Atsarga
  • PoS
  • Projektas
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Žymos (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Žymos (View all)
odoo accounting v14 pos v15
About this forum
Pagalba

How to hide edit button in purchase order for specific states?

Prenumeruoti

Get notified when there's activity on this post

This question has been flagged
filterdomaineditodoo10
10 Replies
16671 Rodiniai
Portretas
wizardz

How can I hide the edit button in the purchase.order for a specific state?

Is there any exmaple ? 

0
Portretas
Atmesti
Portretas
Benjamin Holloway
Best Answer

Hi wizards,

I've found a solution for this, and that's working with js files. Here is the example

odoo.define('module.extension_name', function (require) {
    var FormView = require('web.FormView');
    FormView.include({ load_record: function() { this._super.apply(this, arguments);
      if (this.model === 'your.model') {
         if (this.datarecord && (this.datarecord.state === 'state')) {
            this.$buttons.find('.o_form_button_edit').css({'display':'none'});
          }
         else { this.$buttons.find('.o_form_button_edit').css({'display':''}); }
       }
    });
});

You also have to include the file in assets:

<?xml version="1.0" encoding="utf-8"?>
<odoo>
  <data>
    <template id="assets_backend" name="account assets" inherit_id="web.assets_backend">
      <xpath expr="." position="inside">
        <script type="text/javascript" src="/path_to_js/static/src/js/file.js"/>
      </xpath>
    </template>
  </data>
</odoo>

I don't really like this solution as, if you wan't to do this for a lot of models, you'll have to work with a lot of if and elses, incrementing a lot the cyclomatic complexity, but it's the only way I've found to hide that button (you can also disable it with css).


Hope it helps!


Regards,

Benjamin

4
Portretas
Atmesti
joyanto

how to include file in assets

Benjamin Holloway

Oh I forgot to include that detail!

Add the .xml file to your module manifest, in the data array, as any view you could've develop.

Portretas
youssef allafakih
Best Answer


odoo.define('module.extension_name', function (require) {
    var FormView = require('web.FormView');
    FormView.include({ init: function() { this._super.apply(this, arguments);
      if (this.controllerParams.modelName === 'your.model') {
                this.rendererParams.activeActions.edit = false;                                                                                                                                                                                                                                                                                                                                                                                 
       }
    });
});
1
Portretas
Atmesti
joyanto

its work

joyanto

its hide full model edit but, i need to hide edit button to specific state please send a code to hide a edit button in purchase model for specific state......

Portretas
Riste Kabranov
Best Answer

It would be inheriting the form and adding edit='false' just like here:

<record model="ir.ui.view" id="view_stock_quant_form">

<field name="name">stock.quant.form</field>

<field name="model">stock.quant</field>

<field eval="10" name="priority"/>

<field name="arch" type="xml">

<form string="Inventory Valuation" create="false" edit="false">

<group>

<group>

<field name="product_id"/>

</group>

</form>

</field>

</record>


-3
Portretas
Atmesti
wizardz
Autorius

and where is the filter for the state?

Riste Kabranov

This is just an example, it will not work for you anyways. Do not expect other people to solve your problems and you just copy and paste. Read the tips here, search some more and solve your own damn problems. Thats the way to go. Cheers

Portretas
Yenthe Van Ginneken (Mainframe Monkey)
Best Answer

Hi Wizardz,

You can do this by creating a button where you set invisible on the attributes. In these attributes you can use the 'state not in' in order to hide the button when it is not in a specific state (or the other way around, when it is). An example of both:

<button name="your_action" string="Your text" type="object" attrs="{'invisible': [('state','not in', ('purchase','done'))]}"/> <button name="your_other_action" string="Your other text" type="object" attrs="{'invisible': [('state', 'in', ('draft','sent','to approve'))]}"/>

Regards,

Yenthe

-5
Portretas
Atmesti
wizardz
Autorius

but those are not doing the same as the edit?

shalin wilson

how to remove the edit button from purchase order

wizardz
Autorius

with some user rights or you do it in the odoo js like this:

if (this.model === 'purchase.order') {

Mahmoud

this is wrong answer

u didn't git the question

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

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

Registracija
Related Posts Replies Rodiniai Veikla
How to filter the jobs based on services in odoo10? Solved
filter domain odoo10
Portretas
Portretas
1
geg. 17
3731
Problem with domain on view. How to filter this?
filter views domain odoo10
Portretas
Portretas
Portretas
6
gruod. 17
9729
Filter many2one field with functional field
filter domain
Portretas
Portretas
Portretas
5
rugs. 20
13562
How can I filter a field in product.supplierinfo in the product.template model ? Solved
filter domain product supplier odoo10
Portretas
Portretas
1
geg. 18
7421
Problem with column iteration in domain filter
filter domain
Portretas
1
kov. 15
6215
Bendrija
  • Mokomosios medžiagos
  • Dokumentacija
  • Forumas
Atvirasis kodas
  • Atsisiųsti
  • Github
  • Runbot
  • Vertimai
Paslaugos
  • Odoo.sh talpinimas
  • Palaikymas
  • Atnaujinti
  • Pritaikytas programavimo kūrimas
  • Švietimas
  • Susirask buhalterį
  • Susiraskite partnerį
  • Tapkite partneriu
Apie mus
  • Mūsų įmonė
  • Prekės ženklo turtas
  • Susisiekite su mumis
  • Darbo pasiūlymai
  • Renginiai
  • Tinklalaidės
  • Internetinis Tinklaraštis
  • Klientai
  • Teisinis • Privatumas
  • Saugumas
الْعَرَبيّة 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 yra atvirojo kodo verslo programų rinkinys, kuris apima visas įmonės poreikius: CRM, El. Prekybą, Apskaitą, Atsargų, Kasų sistemą, Projektų valdymą ir kt.

Unikali Odoo vertės pasiūla – būti tuo pačiu metu labai lengvai naudojama ir visiškai integruota sistema.

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