我正在Google AppMaker中构建自定义CRM,并且正在学习将计算模型与服务器端脚本一起使用,以便生成报告。在这种情况下,我试图根据对每个客户的多个合同记录进行计算得出的结果来计算来自客户的每月总收入。我想保留所有计算得出的服务器端信息,但不接受其他建议。
每个合同都包含三个关键要素:基本成本,附加许可的数量以及每个附加许可的费用。每个合同的每月总收入为:
基本费用+(附加许可*许可费用)
我已经弄清楚了如何生成一个计算模型,该模型为每个通过键(“客户”)匹配特定客户的合同编译该模型。
不过,我已经有些烦恼了,无法解决如何为每份合同生成总额。
合同数据位于“合同”中。计算得出的模型是“收入”。
基本,费用和许可数据存在于“合同”中。 “收入”提取此数据并计算记录的总数。我已经成功地处理了所有这一切。
我要的是总计(480),如下所示:
key | base | fee | licenses | total
1 100 20 3 160
2 100 20 5 200
3 100 20 1 120
SUM TOTAL 480
为与特定客户相关的每个合同记录生成基本,费用,许可和总计的报告。
function getSiteMRR(query) {
var mrrs = [];
var allcontracts = app.models.contract.newQuery();
allcontracts.filters.client.id._equals = query.parameters.current;
var allcontracts2 = allcontracts.run();
var records = {};
for (var i = 0; i < allcontracts2.length; i++) {
var record = allcontracts2[i];
var mrr = app.models.revenues.newRecord();
mrr.base = record.base_cost;
mrr.fee = record.license_fee;
mrr.licenses = record.additional_licenses;
mrr.total = record.base_cost + (record.license_fee * record.additional_licenses);
mrrs.push(mrr);
}
return mrrs;
}