When any control value is modified, close the view, and the current record will update the record. Some data here may be clicked at will rather than what is really needed, but the data is still updated. How to disable this function? Click Save manually instead
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Contabilità
- Magazzino
- PoS
- Project
- MRP
La domanda è stata contrassegnata
Hi,
By patching FormController, we can restrict auto-save in form views. So ater the patching the data will save only if we save the form manually.Try the following code for patching the form controller:
/** @odoo-module */
import { FormController } from "@web/views/form/form_controller";
import { patch } from "@web/core/utils/patch";
import { useSetupView } from "@web/views/view_hook";
patch(FormController.prototype, {
setup(){
super.setup(...arguments);
this.beforeLeaveHook = false
useSetupView({
beforeLeave: () => this.beforeLeave(),
beforeUnload: (ev) => this.beforeUnload(ev),
});
},
async beforeLeave() {
/* function will work before leave the form */
if(this.model.root.isDirty && this.beforeLeaveHook == false){ if (this.env.searchModel && this.env.searchModel.resModel != 'your.model') {
this.beforeLeaveHook = true
await this.model.root.save({
reload: false,
onError: this.onSaveError.bind(this),
});
} else {
this.beforeLeaveHook = true
this.model.root.discard();
}
}
},
beforeUnload: async (ev) => {
ev.preventDefault();
}
});
Hope it helps.
Ti stai godendo la conversazione? Non leggere soltanto, partecipa anche tu!
Crea un account oggi per scoprire funzionalità esclusive ed entrare a far parte della nostra fantastica community!
RegistratiPost correlati | Risposte | Visualizzazioni | Attività | |
---|---|---|---|---|
|
3
ago 25
|
2613 | ||
|
1
mag 25
|
2646 | ||
|
1
apr 25
|
3637 | ||
|
1
apr 25
|
4492 | ||
|
1
apr 25
|
1964 |