on_detail_changed

on_detail_changed(item, detail)

使用范围: client

编程语言: javascript

父类: Item 类

描述说明

在明细项记录的更改提交之后发生。 它使用 clearTimeout 和 setTimeout 这两个 Javascript 函数, 因此如果记录在一个周期内发生了更改,则只有在最后一次记录更改发生时才会触发。

item 参数是触发了这个事件的实体项。 detail 参数是那个已经被更改的明细项。

编写一个 on_detail_changed 事件处理程序,通过使用 :doc:`calc_summary <m_calc_summary>`方法计算明细项的字段的总和,并将这些值保存在其主表的字段中。

示例

function on_detail_changed(item, detail) {
    var fields;
    if (detail.item_name === 'invoice_table') {
        fields = [
            {"total": "total"},
            {"tax": "tax"},
            {"subtotal": "amount"}
        ];
        item.calc_summary(detail, fields);
    }
}

另请参见

明细项

calc_summary

master_applies