Passer au contenu principal
Les détails du produit sont affichés en anglais. Traductions à venir.
Auto Save Restrict — A build-to-order Odoo module that suppresses the framework's implicit auto-save on form views, replacing — 1/1Aperçu illustratif

A build-to-order Odoo module that suppresses the framework's implicit auto-save on form views,

replacing silent commits with an explicit, permission-aware save gate across the models you choose.

ECOSIRE scopes, builds, installs, and supports it — it is not an off-the-shelf download.

Qu'est-ce que Auto Save Restrict ?

A build-to-order Odoo module that suppresses the framework's implicit auto-save on form views, replacing silent commits with an explicit, permission-aware save gate across the models you choose. ECOSIRE scopes, builds, installs, and supports it — it is not an off-the-shelf download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Fonctionnalités clés

Intercepts the OWL FormController implicit save so breadcrumb navigation, related-record opens, and view discards no longer silently commit a dirty record
Explicit "Save / Discard / Stay on page" confirmation dialog on any restricted form before a write is persisted
Optional mode that makes the toolbar Save button the only path to a commit, fully disabling auto-save on chosen models
Per-model allowlist configured via res.config.settings so you restrict, e.g., account.move and mrp.production while leaving other models on Odoo defaults
Optional res.groups ("Confirm before save") so the restriction applies only to selected users and power users can be exempted
Prevents premature @api.onchange side effects and unintended writes on partially edited records
Covers list/tree inline-edit save paths in addition to form views where in scope
Layered over the standard ORM create/write — record rules, ir.model.access.csv, and Python constraints still enforce on the real save
Dirty-state detection that warns on browser tab close/refresh for restricted records where the browser permits
Config exposed through ir.config_parameter for a headless/default behavior without per-user setup
Built against public framework patch points rather than full template replacement, so it survives 17/18/19 point upgrades
Compatible with Community and Enterprise, including Enterprise-only form views present in your edition
XML-RPC/JSON-RPC writes are unaffected by design — the gate is a UI safeguard, not an API lock (documented explicitly)
Audit-friendly: reduces accidental writes so mail.thread chatter and field-tracking reflect only intentional changes

Fait sur commande, clé en main

Aucune configuration à faire vous-même — une app fonctionnelle conçue, installée et prise en charge par ECOSIRE.

  1. 1

    Vous commandez

    Commencez par un prix de développement unique. Nous cadrons le projet avec vous au lancement.

  2. 2

    Nous développons et installons

    ECOSIRE la développe, la configure et l'installe sur votre Odoo.

  3. 3

    Mise en ligne + assistance

    Vous êtes en ligne en une semaine ouvrée environ, avec deux semaines d’assistance après la mise en production. Les défauts du code que nous livrons sont corrigés gratuitement.

Spécifications techniques

Compatibilité Odoo
Odoo 17, Odoo 18, Odoo 19
Éditions
Enterprise et Community
Licence
Licence à confirmer
Version Python requise
Python 3.10+
Base de données
PostgreSQL 12+

À propos de ce produit

Odoo's web client saves aggressively by design: a dirty form is auto-committed when the user clicks away via the breadcrumb, opens a related record, presses a smart button, or discards the view. For high-stakes records — draft invoices, manufacturing orders, priced sales lines, HR data, inventory adjustments — that helpful behavior becomes a liability. Users commit half-finished edits without meaning to, @api.onchange side effects fire prematurely, and audit trails fill with unintended writes. Odoo core gives you no setting to disable this: the auto-save is baked into the OWL form controller and the standard breadcrumb/discard flow, and record rules or ir.model.access.csv only govern whether a write is allowed, never when it happens. That is exactly where native runs out of road.

Auto Save Restrict is a module we build to your specification that intercepts the form view's implicit save path and requires an explicit user action before any commit is persisted. Technically, we patch the web client form controller (the OWL FormController in 17.0+) so that navigation away, smart-button clicks, and view discards no longer silently flush a dirty record; instead the user gets a deliberate "Save / Discard / Stay" decision, or — where you prefer — the toolbar Save button becomes the only route to a write. Scope is configured per model through a small settings model (res.config.settings toggles plus a target-model allowlist), so you decide which models are restricted (for example account.move and mrp.production) and which keep Odoo's default behavior. Because the gate is client-side interception layered over the standard ORM create/write, no data path is bypassed — security, record rules, and constraints all still apply on the actual save.

Under the hood the module ships as a standard addon: a __manifest__.py declaring the web and relevant business dependencies, a JS asset bundle that extends the form controller and (optionally) the list-view inline-edit save, an ir.model.access.csv for the configuration model, and an optional res.groups so that only users in a "Confirm before save" group are affected — letting you exempt power users if desired. Behavior can be driven by an automated action or server-side ir.config_parameter where you want a headless default. It is engineered against the framework's public patch points rather than brittle template overrides, so it survives point upgrades, and we build and test it explicitly for Odoo 17.0, 18.0, and 19.0 on both Community and Enterprise (Enterprise-only views such as certain accounting and studio-generated forms are handled where present in your edition).

Delivery is build-to-order: after a short scoping call we confirm the exact models, user groups, and confirmation UX, then build, test on a staging copy of your database, and install on your environment — typical delivery is one working week from confirmed scope. You receive the full source, documentation, and a support window; nothing is a pre-existing download you install yourself. Pricing starts from $999 (indicative, single-company base scope); the number of restricted models, custom confirmation workflows, per-group exemption logic, and multi-company or Enterprise-view coverage increases the quoted scope.

Ce que vous obtenez

  • Installable source code for your commissioned version, built for your target Odoo edition and version (17.0/18.0/19.0)
  • Installation and configuration on your environment, including the per-model allowlist and any user groups
  • Technical documentation covering the patch points, configuration model, and upgrade notes
  • End-user guide plus a live training session for the teams whose save flow changes
  • Post-go-live support window for defect fixes and configuration adjustments
  • UAT on a staging copy of your database with an agreed rollback plan before production install
  • Handover of the full git repository with commit history and manifest
  • Compatibility notes on Community vs Enterprise views and known XML-RPC/JSON-RPC behavior

Pour qui c'est

Finance & Accounting Lead

Runs draft invoices and journal entries in account.move and needs users to deliberately confirm before a record is written, so partially keyed or mis-onchanged entries never silently post to the ledger or trigger premature side effects.

Operations / Manufacturing Manager

Manages mrp.production and inventory adjustments where an accidental auto-save on a dirty order can commit wrong quantities or states; wants an explicit save gate on the specific operational models without slowing down the rest of Odoo.

ERP Administrator / IT Owner

Owns the Odoo instance across 17/18/19 and needs a maintainable, upgrade-safe module scoped by model and by user group, with clean documentation and a git handover rather than a brittle one-off template override.

Compliance / Audit Stakeholder

Cares that field-tracking and chatter reflect intentional edits only; values reducing accidental writes so the audit trail is trustworthy for regulated or high-value records.

Comment Auto Save Restrict se compare

CritèreÉCOSIREConstruction personnaliséeConcurrentNatif Odoo
AvailabilityBuilt to order, installed and supported by ECOSIREYou build and maintain it in-houseInstant download, generic behaviorNo such control exists
Auto-save control scopePer-model allowlist you choose (e.g. account.move, mrp.production)Whatever you build; drift riskFixed, often all-or-nothingAlways auto-saves on navigate/discard
User targetingOptional res.groups to exempt power usersMust design group logic yourselfRarely group-awareNot applicable
Upgrade safety (17/18/19)Built against public patch points, tested per versionDepends on your engineering disciplineVaries; may break on point upgradesN/A
Community vs EnterpriseTargeted and tested for your exact editionYour responsibility to cover bothOften Community-only assumptionsSame auto-save in both
Support & handoverSupport window, docs, training, git repo handoverNone beyond your teamVendor forum / limitedNone
Fit to your workflowConfirmation UX tailored in scopingFully custom but costly to get rightTake it as shippedFixed framework behavior
Total cost & riskFixed quote after scoping; from $999 indicativeHigh effort and ongoing maintenanceLow upfront, uncertain fit/maintenanceFree but no capability

Foire aux questions sur Auto Save Restrict

Is this an existing app I can download and install right now?

No. This is a build-to-order module. ECOSIRE builds it to your specification after a scoping call, then tests and installs it on your environment. There is no instant download — you receive the finished, installable source for your commissioned version.

How long does delivery take?

Typical delivery is one working week from confirmed scope. After the scoping call we finalize the target models, user groups, and confirmation UX, build and test on a staging copy of your database, and then schedule the production install. Broader scope (more models, multi-company, custom workflows) can extend the timeline, which we confirm in the quote.

How does pricing and scoping work?

Pricing starts from $999 as an indicative single-company base scope. After a short scoping call we give you a fixed quote. The number of restricted models, per-group exemption logic, custom confirmation workflows, and multi-company or Enterprise-view coverage are the main drivers that adjust the quoted scope.

What support and updates are included?

Every build includes a post-go-live support window for defect fixes and configuration adjustments, plus the full git repository so your team can maintain it. Because we build against the framework's public patch points, the module is designed to survive point upgrades; migrations across major Odoo versions can be quoted separately if needed.

Which models can be restricted, and can I exempt some users?

You choose the models via a configuration allowlist — for example account.move and mrp.production while everything else keeps Odoo's default behavior. An optional user group lets the restriction apply only to selected users, so power users can be exempted. We confirm the exact list during scoping.

Does this block writes made through the API?

No, and that is intentional. The gate is a UI safeguard layered over the standard ORM create/write, so record rules and access rights still enforce on the real save. Programmatic writes via XML-RPC or JSON-RPC are not affected — we document this behavior clearly so integrations behave predictably.

Will it work on my Odoo version and edition?

We build and test explicitly for Odoo 17.0, 18.0, and 19.0 on both Community and Enterprise. Enterprise-only form views present in your edition are handled where applicable. Tell us your exact version and edition during scoping and we target that build.

Demander un devis

Auto Save Restrict

A build-to-order Odoo module that suppresses the framework's implicit auto-save on form views, replacing silent commits with an explicit, permission-aware save gate across the models you choose. ECOSIRE scopes, builds, installs, and supports it — it is not an off-the-shelf download.

  • Intercepts the OWL FormController implicit save so breadcrumb navigation, related-record opens, and view discards no longer silently commit a dirty record
  • Explicit "Save / Discard / Stay on page" confirmation dialog on any restricted form before a write is persisted
  • Optional mode that makes the toolbar Save button the only path to a commit, fully disabling auto-save on chosen models
  • Per-model allowlist configured via res.config.settings so you restrict, e.g., account.move and mrp.production while leaving other models on Odoo defaults

Demander un devis

Décrivez vos besoins pour Auto Save Restrict et nous vous enverrons les tarifs, les options de licence et une proposition sur mesure, généralement sous un jour ouvré.

Aucun paiement maintenant. Ceci envoie une demande de devis à notre équipe — nous vous recontacterons par e-mail avec les tarifs et les prochaines étapes.