1

I need to change amount calculation for each item in sales invoice to be:

amount = rate * qty * custom_field

I tried this, but it doesn't work.

frappe.ui.form.on("Sales Invoice Item", "custom_field", (frm, cdt, cdn) => {
  var d = locals[cdt][cdn];
  frappe.model.set_value("amount", d.qty*d.custom_field*d.rate) ;
});
Azametzin
  • 5,223
  • 12
  • 28
  • 46

1 Answers1

0

Set value should be used like

frappe.model.set_value(DOC_TYPE, DOC_NAME, FIELD_NAME, NEW_VALUE);

So, in your case

frappe.model.set_value("Sales Invoice Item", cdn, "amount", d.qty*d.custom_field*d.rate);

Or

frappe.model.set_value(cdt, cdn, "amount", d.qty*d.custom_field*d.rate);
Turker Tunali
  • 377
  • 2
  • 11