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
Про цей форум
Допомога

Is there a way to add "Archive" action to an existing model?

Підписатися

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

Це запитання позначене
serveractionTechnicalStudioArchiveSF-Experts
1 Відповісти
12684 Переглядів
Аватар
Harishankar Unnikrishnan (hun)

There are models in Odoo that do not have the "Archive" action under the 'Action' button. Additionally, if we create a new model and do not check the option to allow records to be Archived, can we add it in later? 

0
Аватар
Відмінити
Niyas Raphy (Walnut Software Solutions)

From code side: https://www.youtube.com/watch?v=aSs0aKsbUqo

Аватар
Harishankar Unnikrishnan (hun)
Автор Найкраща відповідь

What does “Archive” Action do?

Before we jump into the steps for achieving this, let’s explore what the “Archive” button does. In Odoo, ‘Archive’ is nothing, but a filter based on a Boolean field. Odoo models that have archiving capabilities usually have a field called “Active”, which is a simple Boolean checkbox. Basically, if it is checked, it means that the record is active and if it is unchecked it means the record is not active i.e., archived. When you select a record and archive it, Odoo is unchecking the box for you and then filtering it out. By default, in a model view, you have displayed only the active records, and the archived ones are filtered. When you click on “Filters” and then select the Archived records it basically just shows you all the records that have the checkbox set to FALSE. For models that do not have the archiving function, we are missing this checkbox and some defaults which we can create later. The only step in this that may require direct XML coding will be adding the ribbon that says “Archived” on all the archived records.

Creating the Boolean field

The first step of the process is to create this checkbox that will help us differentiate archived from active records. Do not create this checkbox using studio because the field will be called x_studio_active and that won’t do. We will need to create the field directly on the model itself. 

Go into Settings > Technical > Models, find your model, and add a boolean field named "x_active" (label "Active")

Once you create the field on the model, you must add the field on the form and list views so that we can use it to create the filters.  You can add the field using Studio by simply finding it under “Existing Fields”. You don’t necessarily have to make it visible, as long as it is present in both views. In other models, this field is usually invisible so you can make it invisible after adding it.

Existing Records

If the model you are doing this has existing records, we need to make them active. When we add a new checkbox, Odoo defaults it to be unchecked for all records. This means that all the existing records will have the checkbox set to FALSE (meaning archived). This can be fixed by simply exporting all the existing records with external ID’s and the Active field, setting the Active field to be TRUE, and importing it back in so that all the records now have the Active field checked (hence meaning unarchived). 

Setting User-defined Defaults

For new records that will be created in the model, we need Odoo to automatically check the box. This means that the default for the Active field should be TRUE (checked). We can do this using User-defined Defaults.

Go into Settings > Technical > User-defined default and add a default set to true for the field.

Creating custom Filters for Archived records

We need a preset Filter for displaying all the Archived records. We can do this using Studio.

Open the model – Open Studio – Click on Views and select Search View. Drag a Filter and drop it under ‘Filters’. Label it “Archived” and set a domain on it – Active is not set (false) [["x_active","=",False]]

[OPTIONAL] Adding the Ribbon to Archived Records

We can also add the ribbon widget in the form view, but this can be done only through XML. Open the form view of the model, open studio, click on “View” on the left bar, click on the XML button to open the code and add the following lines of code as the first child of the sheet element in the form view.

Save the XML and exit Studio. You’re all set! 

2
Аватар
Відмінити
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 Відповіді Переглядів Дія
How to override access rights and record rules in a server action? Вирішено
serveraction Studio SF-Experts
Аватар
1
груд. 23
3102
How can I create a customer invoice from a task and link it to the task? Вирішено
Studio SF-Experts
Аватар
1
жовт. 25
2559
How can I create a vendor refund from a task and link it to the task? Вирішено
Studio SF-Experts
Аватар
1
серп. 24
1789
How can I create a vendor bill from a task and link it to the task? Вирішено
Studio SF-Experts
Аватар
1
серп. 24
2545
How can I create a customer credit note from a task and link it to the task? Вирішено
Studio SF-Experts
Аватар
1
серп. 24
2008
Спільнота
  • Навчальний посібник
  • Документація
  • Форум
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