Tabelleneintrag beim Speichern ändern
Tabelleneintrag beim Speichern ändern
Wir können bevor auf den Speichern-Button in einem Dokument geklickt wird einzelne Felder in einer Tabelle ändern.
- Im folgenden Beispiel muss 'frm.doc.items' im gesamten Skript mit 'frm.doc.feldname_der_tabelle' ersetzt werden.
- 'Doctype' mit dem richtigen Doctype ersetzten und auf Groß- und Kleinschreibung achten
Die 'if(...)'-Bedingung kann nach belieben abgeändert werden. 'item' ist die Position, sprich eine Zeile, innerhalb der Tabelle.- Mit 'frappe.model.set_value(...)' wird das Feld 'rate' in der Zeile geändert und auf '0' eingestellt
- Die letzte Zeile aktualisiert das Feld 'rate' damit der Anwender die Änderung sehen kann
frappe.ui.form.on('Doctype', {
validate(frm) {
for (let i = 0; i < frm.doc.items.length; i++) {
var item = frm.doc.items[i];
if(item.positionsart != "Standard"){
frappe.model.set_value(item.doctype, item.name,"rate","0");
frm.refresh_fields("rate");
}
}
}
});