Skip to Content
Odoo Menu
  • Prihlásiť sa
  • Vyskúšajte zadarmo
  • Aplikácie
    Financie
    • Účtovníctvo
    • Fakturácia
    • Výdavky
    • Tabuľka (BI)
    • Dokumenty
    • Podpis
    Predaj
    • CRM
    • Predaj
    • POS Shop
    • POS Restaurant
    • Manažment odberu
    • Požičovňa
    Webstránky
    • Tvorca webstránok
    • eShop
    • Blog
    • Fórum
    • Živý chat
    • eLearning
    Supply Chain
    • Sklad
    • Výroba
    • Správa životného cyklu produktu
    • Nákup
    • Údržba
    • Manažment kvality
    Ľudské zdroje
    • Zamestnanci
    • Nábor zamestnancov
    • Voľné dni
    • Hodnotenia
    • Odporúčania
    • Vozový park
    Marketing
    • Marketing sociálnych sietí
    • Email marketing
    • SMS marketing
    • Eventy
    • Marketingová automatizácia
    • Prieskumy
    Služby
    • Projektové riadenie
    • Pracovné výkazy
    • Práca v teréne
    • Helpdesk
    • Plánovanie
    • Schôdzky
    Produktivita
    • Tímová komunikácia
    • Schvalovania
    • IoT
    • VoIP
    • Znalosti
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Priemyselné odvetvia
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Reštaurácia
    • Fast Food
    • Guest House
    • Beverage distributor
    • Hotel
    Reality
    • Real Estate Agency
    • Architecture Firm
    • Konštrukcia
    • Estate Managament
    • Gardening
    • Property Owner Association
    Poradenstvo
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Výroba
    • Textile
    • Metal
    • Furnitures
    • Jedlo
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware and Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Iní
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Komunita
    Vzdelávanie
    • Tutoriály
    • Dokumentácia
    • Certifikácie
    • Školenie
    • Blog
    • Podcast
    Empower Education
    • Vzdelávací program
    • Scale Up! Business Game
    • Visit Odoo
    Softvér
    • Stiahnuť
    • Porovnanie Community a Enterprise vierzie
    • Releases
    Spolupráca
    • Github
    • Fórum
    • Eventy
    • Preklady
    • Staň sa partnerom
    • Services for Partners
    • Register your Accounting Firm
    Služby
    • Nájdite partnera
    • Nájdite účtovníka
    • Meet an advisor
    • Implementation Services
    • Zákaznícke referencie
    • Podpora
    • Upgrades
    ​Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Získajte demo
  • Cenník
  • Pomoc

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

  • CRM
  • e-Commerce
  • Účtovníctvo
  • Sklady
  • PoS
  • Projektové riadenie
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Tagy (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tagy (View all)
odoo accounting v14 pos v15
About this forum
Pomoc

Odoo 8 - Launch a ir.actions.act_window from a python method?

Odoberať

Get notified when there's activity on this post

This question has been flagged
buttonwindow_actionodooodooV8odoo8
3 Replies
27185 Zobrazenia
Avatar
Pepiño

Is it possible to launch a ir.actions.act_window from a Python method of a model?.

For instance, I have implemented a Session model which represents a course session (I also have a Course model). Also, I have a openacademy.xml where I have defined the form view to open the session form view.


<record model="ir.ui.view" id="session_form_view">
<field name="name">session.form</field>
<field name="model">openacademy.session</field>
<field name="arch" type="xml">
<form>
<header>
<button name="draft" type="workflow"
string="Reset to draft"
states="confirmed,done"/>
<button name="confirm" type="workflow"
string="Confirm" states="draft"
class="oe_highlight"/>
<button name="done" type="workflow"
string="Mark as done" states="confirmed"
class="oe_highlight"/>
<button type="object"
name="my_method"
string="New course"/>

<field name="state" widget="statusbar"/>
</header>
<sheet>
<group string="General">
<field name="name" string="Session name"/>
<field name="course_id" string="Course"/>
<field name="instructor_id" string="Instructor"/>
</group>
<group string="Management">
<field name="start_date" string="Start date"/>
<field name="active" string="Active"/>
<field name="duration" string="Duration (in days)"/>
<field name="seats"/>
<field name="percent_taken_seats" widget="progressbar"/>
</group>
<label for="attendees"/>
<field name="attendees"/>
</sheet>
</form>
</field>
</record>

The relevant part of the above code is the following:

<button type="object" name="my_method" string="New course"/>

When I click on this button a method 'my_method' from the Session model (class Session) is called.

class Session(models.Model):
...
@api.one
def my_method(self):
return {
'type': 'ir.actions.act_window',
'res_model': 'openacademy.course',
'view_type': 'form',
'view_mode': 'form',
'target': 'new',
}

This method return a dictionary containing the differents keys and values of a window action, but it doesn't work in Odoo 8. When I click on the button "New course", my_method is executed but a Course form view is not opened to create a new Course record.

I don't know if it is possible to do this in Odoo version 8, or if my_method must return something more.

EDIT:

Thanks to the @Atchuthan response (profile url: https://www.odoo.com/es_ES/forum/help-1/user/92610), the modified version of my method my_method from the Session model is the following:

class Session(models.Model):
...
@api.multi
def my_method(self):course_form = self.env.ref('openacademy.course_form_view', False) return { 'name': 'New Course', 'type': 'ir.actions.act_window', 'res_model': 'openacademy.course', 'view_type': 'form', 'view_mode': 'form', 'target': 'new', 'views': [(course_form.id, 'form')], 'view_id': 'course_form.id', 'flags': {'action_buttons': True}, }

2
Avatar
Zrušiť
Pepiño
Autor

Thank you very much @Atchuthan. You have my positive vote. Now, the problem is when the course form view pop-up window is opened and I create a new course, the form pop-up window doesn't dissapear. After creating a course in this pop-up window I would like to go back to the form view course (a step back). Is it possible?.

Avatar
Atchuthan - Technical Consultant, Sodexis Inc
Best Answer

The problem is due to the use of @api.one.  If you use @api.multi, then you could open any wizard or so.    

    @api.multi
def my_method(self):
return {
'type': 'ir.actions.act_window',
'res_model': 'openacademy.course',
'view_type': 'form',
'view_mode': 'form',
'target': 'new',
}

Check an example available at Account module in this link.
4
Avatar
Zrušiť
Pepiño
Autor

Thank you very much @Atchuthan. You have my positive vote. Now, the problem is when the course form view pop-up window is opened and I create a new course, the form pop-up window doesn't dissapear. After creating a course in this pop-up window I would like to go back to the form view course (a step back). Is it possible?.

Atchuthan - Technical Consultant, Sodexis Inc

When you click on a button available in the pop-up window, you need to return {'type': 'ir.actions.act_window_close'}

Avatar
Fernando Gomes
Best Answer

Hello all.


I am having the same problem. I can generate the popup but the cancel button doesn't do anything and the save button saves the new record but doesn't close the window.

Since I am using the standard popup generated by Odoo I don't have access to the buttons's python code to add the return type ir.actions.act_window_close ...


Any hint on how to make cancel close the popup window and to use "Save & Close" instead of the "Save" button?


Thanks,


Fernando

1
Avatar
Zrušiť
Avatar
Safiullah Danishjo
Best Answer

i have the same problem in odoo 17. anyone help please how to do it in odoo 17?

0
Avatar
Zrušiť
Enjoying the discussion? Don't just read, join in!

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

Registrácia
Related Posts Replies Zobrazenia Aktivita
How to integrate facebook and twitter in odoo
odoo odooV8 odoo8
Avatar
Avatar
Avatar
2
máj 25
11040
Send auto mail (without popping up any window) after "Confirm Order" button pressed in Odoo 8
odoo odooV8 odoo8.0 odoo8
Avatar
Avatar
1
feb 18
5041
Which field launches an onchange of 2 fields
onchange odoo odooV8 odoo8.0 odoo8
Avatar
Avatar
Avatar
Avatar
5
apr 19
9592
Wkhtmltopdf failed (error code: -9). Message: Odoo 8
wkhtml2pdf wkhtmltopdf odoo odooV8 odoo8
Avatar
Avatar
Avatar
2
jan 19
7906
Return a wizard
wizard odoo odooV8 odoo8.0 odoo8
Avatar
Avatar
1
máj 16
8999
Komunita
  • Tutoriály
  • Dokumentácia
  • Fórum
Open Source
  • Stiahnuť
  • Github
  • Runbot
  • Preklady
Služby
  • Odoo.sh hosting
  • Podpora
  • Vyššia verzia
  • Custom Developments
  • Vzdelávanie
  • Nájdite účtovníka
  • Nájdite partnera
  • Staň sa partnerom
O nás
  • Naša spoločnosť
  • Majetok značky
  • Kontaktujte nás
  • Pracovné ponuky
  • Eventy
  • Podcast
  • Blog
  • Zákazníci
  • Právne dokumenty • Súkromie
  • Bezpečnosť
الْعَرَبيّة 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 je sada podnikových aplikácií s otvoreným zdrojovým kódom, ktoré pokrývajú všetky potreby vašej spoločnosti: CRM, e-shop, účtovníctvo, skladové hospodárstvo, miesto predaja, projektový manažment atď.

Odoo prináša vysokú pridanú hodnotu v jednoduchom použití a súčasne plne integrovanými biznis aplikáciami.

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