A build-to-order Odoo module that lets you switch any form view between instant auto-save and a deliberate manual save/discard edit mode, protecting record data from accidental or partial changes. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17, 18, or 19 database. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $249.00 USD; request a quote for a scoped proposal.
Manifiesto de la app
Diseñado en torno a tu flujo de trabajo
A build-to-order Odoo module that lets you switch any form view between instant auto-save and a deliberate manual save/discard edit mode, protecting record data from accidental or partial changes. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17, 18, or 19 database.
Sin configuración por tu cuenta: una app funcional creada, instalada y con soporte de ECOSIRE.
Empieza con un precio único de desarrollo. Definimos el alcance contigo en el arranque.
ECOSIRE la crea, la configura y la instala en tu Odoo.
Sales en vivo en unas 2–4 semanas, con un periodo de soporte posterior al lanzamiento.
In stock Odoo, every form view commits changes the moment a user leaves the record or triggers a save, and there is no built-in way to enforce a deliberate "review before you commit" step on the forms that matter most. That creates real exposure on high-value records — a mis-typed price on a sale order, an accidental partner-field overwrite, a half-finished manufacturing BOM saved mid-edit — where you actually want an explicit confirm/discard gate. Odoo core gives you exactly one editing behavior per form and no per-model or per-role way to make some records "instant" and others "protected." Teams end up training staff to be careful, which does not scale.
We build a configurable Edit Control layer that gives each targeted form view two selectable behaviors: an Instant mode that auto-saves field changes as they happen (useful for low-risk, high-throughput data entry), and a Manual mode that holds all changes in a dirty/pending state until the user explicitly clicks Save or Discard — with an unsaved-changes guard that blocks navigation, tab close, and record switching while edits are pending. Technically, this is implemented as an OWL client-side extension of the web form controller plus a small configuration model (models.Model with ir.model.access.csv and record rules) that maps which ir.model / view / user-group combination uses which mode. Defaults are declared in __manifest__.py data files so the behavior is reproducible across environments, and the mode can be resolved by a compute method (@api.depends) driven by model, view context, or the acting user's groups.
Because the behavior is data-driven rather than hard-coded, you can, for example, force Manual mode on account.move and sale.order for everyone while leaving crm.lead on Instant mode for the sales team — all without touching the underlying business logic or breaking standard workflow buttons, onchange, or server-side validation. The manual-save gate is purely a UX and data-protection layer: it never bypasses Odoo's ORM write(), security rules, or automated actions, and it works consistently whether the record is edited in the UI or updated through the XML-RPC/JSON-RPC API (API writes are unaffected — the gate is a UI construct). We support Community and Enterprise editions; the OWL and view-inheritance approach is edition-agnostic, and where Enterprise-only widgets are in scope we adapt the extension accordingly.
Delivery is build-to-order. We start with a short scoping call to confirm which models, views, and user groups need each mode, then we build against your Odoo version (17.0, 18.0, or 19.0), validate on a staging clone, run UAT with your team, and deploy with a documented rollback path. Typical delivery is 2–4 weeks from confirmed scope. Pricing starts from $249 (indicative, single-company base scope covering a small set of target models on one Odoo version); broader scope — many models and views, multi-company rollout, role-specific mode matrices, deeper integration with custom modules, or migration across Odoo versions — increases the quoted scope. You receive a firm fixed quote after the scoping call, never a surprise invoice.
Teams working in account.move, invoices, and journal entries who need a deliberate save/discard gate to prevent accidental edits to posted-adjacent or high-value financial records.
Users maintaining BOMs, sale orders, and inventory records who want Manual mode on complex records to avoid saving half-finished edits mid-workflow.
System owners who need a data-driven, role-aware way to enforce editing discipline across many models without writing bespoke code for each form.
Staff doing rapid record entry who benefit from Instant auto-save on low-risk models while sensitive models stay protected under Manual mode.
| Criterio | ECOSIRE | Construcción personalizada | Competidor | Odoo Nativo |
|---|---|---|---|---|
| Availability | Built to order for your DB, installed and supported | Depends on in-house or contractor capacity | Instant download, generic behavior | |
| Per-model / per-role mode control | Data-driven mapping of model, view, and group to a mode | Possible but you design and maintain it | Usually global or limited configurability | |
| Unsaved-changes navigation guard | Blocks nav, tab close, and record switch in Manual mode | Must be built and tested by you | Varies; often partial coverage | |
| Fit to your Odoo version/edition | Built and tested on your 17/18/19, Community or Enterprise | Whatever you target and maintain | Version support depends on the listing | |
| Respects security, ORM, and automations | UI layer only — never bypasses rules or write() | Correct only if built carefully | Generally yes, but unverified for your setup | |
| Support and version migration | Post-go-live window plus optional ongoing support | Your team owns it | Vendor forum or paid tier, generic | |
| Total cost of ownership | Fixed quote after scoping; from $249 indicative | Higher build plus ongoing maintenance | Low upfront, uncertain fit and support |
No. This is a build-to-order module that ECOSIRE builds, installs, and supports specifically for your Odoo database. There is no instant download — we scope your requirements first, then build against your exact Odoo version and configuration.
Typical delivery is 2–4 weeks from confirmed scope. Simple single-company scope on a handful of models is at the faster end; broad multi-model or multi-company rollouts with role-specific mode matrices take longer. We give you a timeline with your fixed quote after the scoping call.
Pricing starts from $249 as an indicative from-price for a single-company base scope on one Odoo version. After a short scoping call we confirm the exact models, views, groups, and integrations involved and send a firm fixed quote — no surprise charges. Broader scope increases the quote.
We build for Odoo 17.0, 18.0, and 19.0, on both Community and Enterprise. The OWL and view-inheritance approach is edition-agnostic; where Enterprise-only widgets are in your scope, we adapt the extension to work with them.
Every build includes a post-go-live support window for defect fixes and configuration adjustments. Beyond that, we offer ongoing support and version-migration services — for example, moving the module forward when you upgrade to a newer Odoo release — quoted separately.
No. The gate is a UI and data-protection layer on top of the ORM. It never bypasses Odoo security, record rules, automated actions, onchange, or server-side validation, and writes made through the XML-RPC/JSON-RPC API are unaffected — only interactive form editing is gated.
Yes. Mode resolution is user-group-aware, so you can force Manual mode on a model like account.move for everyone while leaving another model such as crm.lead on Instant mode for a specific team — all managed through configuration, not code changes.
A build-to-order Odoo module that lets you switch any form view between instant auto-save and a deliberate manual save/discard edit mode, protecting record data from accidental or partial changes. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17, 18, or 19 database.