# 常见问题

# 如何添加自定义公式

添加自定义公式,有两种方式:

  1. 调用registerUserFunction添加,示例:
registerUserFunction('user_add', function(a, b) {
    return a + b;
  });
  1. 全局函数,定义的全局函数可以在公式中使用,示例:
window.user_add = function(a, b) {
    return a + b;
}

# 多数据源的数据窗口如何操作

// 得到key1数据源的DataStore,其中ds为DataStore,支持DataStore的所有方法
const { _dataSets, defaultDS} = dwMain.getReport();
let ds = _dataSets['key1'];


// 操作数据,并更新界面
ds.setItem(1, 'CompanyName', '测试数据');
dwMain.setRedraw(true);

// 得到更新的数据
let data = {};
ds.getChanges(data);
console.log(data);

// 提交更新数据,服务端需要有对应的名称的数据源(设计多数据源时数据源设置界面中的`table to update`)
ds.setTransObject(sqlca)
ds.update();