寻求有关此功能的帮助。
背景: 我正在为我们的公司创建一个基于Google表格的订单,没有太大的支持约100家商店。问题在于将行附加到我的数据收集表,数据库中的操作。我在使用.appendRow操作时遇到了麻烦。
function grabOrder(){
var ordNum = ss.getRange("B2").getValue();
var storeCode = ss.getRange("B1").getValue();
var ordValues = ss.getRange("A1:A100").getValues();
insertInfo(ordNum, storeCode, ordValues);
}
function insertInfo(ordNum, storeCode ,ordValues){
ssDb.appendRow([ordNum, storeCode, ordValues]);
}
结果:运行我的代码时,它不会抛出错误,它会完成操作并且ordNum,storeCode正确显示。但是ordValues出现在这个:
[Ljava.lang.Object; @ 78f4b2bd
注意:我提供的代码是我代码的极简化版本,因为我唯一的问题在于appendRow数组。
潜在解决方案:我知道getValues会抓取一个二维数组,而appenRow只会占用一维。我的猜测是我需要将2d阵列转换为1d数组并将其存储在变量中?求救!
已解决:这就是我所做的:
var orderString = timeStamp + "," + ordNum + "," + clc + "," + orderRng.toString();
var orderValues = orderString.split(",");
然后我就像这样传递新数组:
ssDb.appendRow(orderValues);
希望你们能在将来找到它。
答案 0 :(得分:1)
function grabOrder(){
var ordNum = ss.getRange("B2").getValue();
var storeCode = ss.getRange("B1").getValue();
var ordValues = ss.getRange("A1:A100")
.getValues()
.map(function (row) {
return row[0];
});
insertInfo(ordNum, storeCode, ordValues);
}
function insertInfo(ordNum, storeCode ,ordValues){
ssDb.appendRow([ordNum, storeCode].concat(ordValues));
}