Skip to Content
Odoo Меню
  • Увійти
  • Спробуйте це безкоштовно
  • Додатки
    Фінанси
    • Бухоблік
    • Виставлення рахунку
    • Витрати
    • Електронні таблиці (BI)
    • Документи
    • Підпис
    Продажі
    • CRM
    • Продажі
    • POS Магазин
    • POS Ресторан
    • Підписки
    • Оренда
    Веб-сайти
    • Конструктор веб-сайту
    • Електронна комерція
    • Блог
    • Форум
    • Живий чат
    • Електронне навчання
    Ланцюг поставок
    • Склад
    • Виробництво
    • PLM
    • Купівлі
    • Технічне обслуговування
    • Якість
    Кадри
    • Співробітники
    • Рекрутинг
    • Відпустки
    • Оцінювання
    • Рекомендації
    • Автотранспорт
    Маркетинг
    • Маркетинг соцмереж
    • Email-маркетинг
    • SMS-маркетинг
    • Події
    • Автом. маркетингу
    • Опитування
    Послуги
    • Проект
    • Табелі
    • Виїзне обслуговування
    • Служба підтримки
    • Планування
    • Призначення
    Продуктивність
    • Обговорення
    • Схвалення
    • IoT
    • IP-телефонія
    • База знань
    • WhatsApp
    Сторонні модулі Odoo Studio Платформа Odoo Cloud
  • Сфери
    Роздрібна торгівля
    • Книжковий магазин
    • Магазин одягу
    • Магазин меблів
    • Продуктовий магазин
    • Магазин будівельних матеріалів
    • Магазин іграшок
    Food & Hospitality
    • Бар та паб
    • Ресторан
    • Фастфуд
    • Guest House
    • Дистриб'ютор напоїв
    • Hotel
    Нерухомість
    • Real Estate Agency
    • Архітектурна фірма
    • Будівництво
    • Управління нерухомістю
    • Садівництво
    • Асоціація власників нерухомості
    Консалтинг
    • Бухгалтерська компанія
    • Партнер Odoo
    • Агенція маркетингу
    • Юридична фірма
    • Придбання Талантів
    • Аудит та сертифікація
    Виробництво
    • Textile
    • Metal
    • Меблі
    • Їжа
    • Brewery
    • Корпоративні подарунки
    Здоров'я & Фітнес
    • Спортивний клуб
    • Оптика
    • Фітнес-центр
    • Практики здоров'я
    • Аптека
    • Салон краси
    Trades
    • Ремонтник
    • IT-обладнання та Підтримка
    • Системи сонячної енергії
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Інші
    • Nonprofit Organization
    • Екологічна агенція
    • Оренда білбордів
    • Фотографія
    • Лізинг велосипедів
    • Реселлер програмного забезпечення
    Browse all Industries
  • Спільнота
    Навчання
    • Навчальний посібник
    • Документація
    • Сертифікації
    • Тренування
    • Блог
    • Подкаст
    Сприяйте Освіті
    • Програма навчання
    • Бізнес гра Scale Up!
    • Відвідайте Odoo
    Отримайте програмне забезпечення
    • Завантаження
    • Порівняйте версії
    • Релізи
    Співпрацюйте
    • Github
    • Форум
    • Події
    • Переклади
    • Стати партнером
    • Services for Partners
    • Зареєструйте вашу бухгалтерську фірму
    Отримайте послуги
    • Знайдіть партнера
    • Знайдіть бухгалтера
    • Зустріньтеся з консультантом
    • Послуги з впровадження
    • Референси клієнтів
    • Підтримка
    • Оновлення
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Отримати демо
  • Ціни
  • Допомога

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

  • CRM
  • e-Commerce
  • Бухоблік
  • Склад
  • PoS
  • Проект
  • MRP
All apps
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
All Posts Люди Значки
Мітки (View all)
odoo accounting v14 pos v15
Про цей форум
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
All Posts Люди Значки
Мітки (View all)
odoo accounting v14 pos v15
Про цей форум
Допомога

[Odoo 18e] Button to open Form without saving Open Record

Підписатися

Отримуйте сповіщення про активність щодо цієї публікації

Це запитання позначене
webclientjavascriptactiondevelopmentsystemfunctionwizard
390 Переглядів
Аватар
Jeremy Gritz

I am struggling with Odoo implementing a module for a small business:

Sale Order - Standard Model and Views, added fields not relevant to this issue

Sale Order Line - Standard Views, add field for batch ID on appropriate items

Panel Job - Contains definition of cut-to-length manufacturing job including list of pieces and lengths

I need to add a button to the Sale Order form view to open the form view for Panel Job without saving Sale Order. Panel Job's Form view has a button that then creates a Sale Order Line referencing the Panel Job. At this point I would not like to permanently commit Panel Job either. When the Sale Order is saved manually or otherwise acted upon (e.g. emailed), it can save normally, both Panel Job and Sale Order.

I have attempted object and action buttons defining the ir.action.act_window, and this works minus the saving when I don't want it to.

Research has pointed me toward client actions and javascript buttons, but I have been unsuccessful in having these actually work, in that I can't even get the templates to show on the sales order. This is what I currently have:

views/sales_order_updated_views.xml

<odoo>
    <record id="module_sale_order" model="ir.ui.view">
        <field name="name">Sales Order</field>
        <field name="model">sale.order</field>
        <field name="inherit_id" ref="sale.view_order_form"/>
        <field name="arch" type="xml">


            <xpath expr="//field[@name='order_line']" position="before">
                <div id="addNewPanelJobButton"/>
            </xpath>
  
...
  
</record>
</odoo>

views/client_actions.xml

<odoo>    
  <record id="act_new_panel_job" model="ir.actions.client">
        <field name="name">Add New Panel Job</field>
        <field name="tag">module.NewPanelJob</field>
        <field name="target">new</field>
    </record>
</odoo>

static/src/xml/newpaneljobtemplate.xml

<?xml version="1.0" encoding="UTF-8"?>
<odoo>
    <template xml:space="preserve">
        <xpath expr="//@div[id=addNewPanelJobButton]" position="replace">
            <t t-name="module.NewPanelJobTemplate" t-inherit="web.FormView">
                <p t-on-click="module.NewPanelJob">Template Works</p>
            </t>
        </xpath>
    </template>
</odoo>

static/src/js/client_actions.js

import { registry } from "@web/core/registry";
import { Component } from "@odoo/owl";
import { useService } from "@web/core/utils/hooks";


export class NewPanelJobComponent extends Component {
    setup() {
        super.setup();
        this.action = useService("action");
    };


    addNewPanelJob() {
        this.action.doAction({
        type: 'ir.actions.act_window',
        res_model: 'module.panel_job',
        views: [[false, 'form']],
        target: 'new',
        });
    }
}


NewPanelJobComponent.template = "module.NewPanelJobTemplate";


registry.category("actions").add("module.NewPanelJob",NewPanelJobComponent);

Am I even going down the right path with this?

I'm not sure what standard practices are and finding examples in the code has been less than helpful.

Thanks in advance for any insight.

0
Аватар
Відмінити
Enjoying the discussion? Don't just read, join in!

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

Реєстрація
Related Posts Відповіді Переглядів Дія
Missing products in zpl report from wizard
action development wizard
Аватар
0
лип. 25
993
Sekcja opinii i komentarz
action development function
Аватар
0
бер. 25
1339
Product images are frequently disappearing from the POS device
action development configuration function
Аватар
0
лист. 25
168
Error with rpc call
javascript development function debug
Аватар
Аватар
Аватар
2
лип. 25
1954
How to add a text over an image in my website.
javascript action development configuration
Аватар
0
бер. 25
1977
Спільнота
  • Навчальний посібник
  • Документація
  • Форум
Open Source
  • Завантаження
  • Github
  • Runbot
  • Переклади
Послуги
  • Хостинг Odoo.sh
  • Підтримка
  • Оновлення
  • Кастомні доробки
  • Навчання
  • Знайдіть бухгалтера
  • Знайдіть партнера
  • Стати партнером
Про нас
  • Наша компанія
  • Торгові активи
  • Зв'яжіться з нами
  • Вакансії
  • Події
  • Подкаст
  • Блог
  • Клієнти
  • Юридичні документи • Конфіденційність
  • Безпека
الْعَرَبيّة 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 - це набір програм для роботи з відкритим кодом, які охоплюють всі ваші потреби компанії: CRM, електронна комерція, бухгалтерський облік, склад, точка продажу, управління проектами тощо.

Унікальна пропозиція Odoo - це одночасно дуже проста у використанні та повністю інтегрована.

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