从 Drive Tables 中删除数据并自动重新导入新数据
Deleting data from Drive Tables and automatically re-importing new data
我需要帮助来了解如何从 table 中删除所有数据,然后尝试自动将包含数据的新 sheet 导入到新清除的 table 中。
我目前正在尝试客户端的 unload() 方法,但这似乎并没有清除我的 tables
function ClearDown(){
app.datasources.P11d.unload(function(){});
console.log('Finish Delete');
}
我也试过创建一个服务器端函数,但似乎也不起作用
function ClearTable(){
var records = app.models.P11d.newQuery();
// records.run();
console.log('Server Function Ran');
app.deleteRecords(records.run());
}
这是来自客户端函数的运行:
function Delete(){
google.script.run.withSuccessHandler(function(result){
}).ClearTable();
console.log('Function Ran');
}
同样这一切都无济于事
对于导入端,我尝试执行以下操作:-
客户端:
function ImportData(){
console.log('Begin');
var ss = SpreadsheetApp.openById('SHEET ID');
var values = ss.getSheetByName('P11d').getDataRange().getValues();
var ssData = [];
// app.datasources.P11d.unload(function(){});
for (var i = 0; i<values.length; i++){
var newRecord = app.models.P11d.newRecord();
// add all fields to the new record
newRecord.Reg_Number = values[i][0];
newRecord.Reg_Date = values[i][1];
newRecord.Model_Description = values[i][2];
newRecord.P11d_Value = values[i][3];
newRecord.EngineSize = values[i][4];
newRecord.Fuel = values[i][5];
newRecord.CO2 = values[i][6];
newRecord.SIPP = values[i][7];
newRecord.GTA_Code = values[i][8];
newRecord.Type = values[i][9];
ssData.push(newRecord);
// console.log(newRecord.MODEL_FIELD);
}
console.log('Finished');
// return the array of the model.newRecord objects that would be consumed by the Model query.
}
请有人帮忙解决这个问题,目前将数据发送给我的方式是将新内容添加到驱动器中 Table 导致很多重复。
提前致谢,
您可以使用 AMU Library
删除电子表格中的所有记录、导入和读取
将服务器和客户端脚本复制并粘贴到您的应用中。
我相信这会让事情变得更容易!
要使用此删除模型中的所有数据:
单击按钮:
google.script.run.AMU.deleteAllData('ModelName');
在服务器上删除记录的正确方法是:
app.models.MODEL_NAME.deleteRecords(key_array);
datasource.unload() 只是在客户端卸载小部件。不影响数据库记录。
在服务器上编写记录查询的更好方法是:
var query = app.models.MODEL_NAME.newQuery();
query.filters.your_filter_here;
var records = query.run();
请注意,在不使用 function posted here 的情况下,您不能 return 来自除计算模型函数之外的任何内容的单个记录或记录数组。 (您可以 return 对任何 json 数据使用 stringify 的记录的单个字段。)
我目前正在研究一种解决方案,以创建 App Maker 所需的数据源独立表。
对于服务器上的删除功能,请尝试稍微更改您的代码,该功能至少对我有用,但是我已经有一段时间不需要使用它了。
function ClearTable(){
var records = app.models.P11d.newQuery().run();
console.log('Server Function Ran');
app.deleteRecords(records);
}
我需要帮助来了解如何从 table 中删除所有数据,然后尝试自动将包含数据的新 sheet 导入到新清除的 table 中。
我目前正在尝试客户端的 unload() 方法,但这似乎并没有清除我的 tables
function ClearDown(){
app.datasources.P11d.unload(function(){});
console.log('Finish Delete');
}
我也试过创建一个服务器端函数,但似乎也不起作用
function ClearTable(){
var records = app.models.P11d.newQuery();
// records.run();
console.log('Server Function Ran');
app.deleteRecords(records.run());
}
这是来自客户端函数的运行:
function Delete(){
google.script.run.withSuccessHandler(function(result){
}).ClearTable();
console.log('Function Ran');
}
同样这一切都无济于事
对于导入端,我尝试执行以下操作:- 客户端:
function ImportData(){
console.log('Begin');
var ss = SpreadsheetApp.openById('SHEET ID');
var values = ss.getSheetByName('P11d').getDataRange().getValues();
var ssData = [];
// app.datasources.P11d.unload(function(){});
for (var i = 0; i<values.length; i++){
var newRecord = app.models.P11d.newRecord();
// add all fields to the new record
newRecord.Reg_Number = values[i][0];
newRecord.Reg_Date = values[i][1];
newRecord.Model_Description = values[i][2];
newRecord.P11d_Value = values[i][3];
newRecord.EngineSize = values[i][4];
newRecord.Fuel = values[i][5];
newRecord.CO2 = values[i][6];
newRecord.SIPP = values[i][7];
newRecord.GTA_Code = values[i][8];
newRecord.Type = values[i][9];
ssData.push(newRecord);
// console.log(newRecord.MODEL_FIELD);
}
console.log('Finished');
// return the array of the model.newRecord objects that would be consumed by the Model query.
}
请有人帮忙解决这个问题,目前将数据发送给我的方式是将新内容添加到驱动器中 Table 导致很多重复。
提前致谢,
您可以使用 AMU Library
删除电子表格中的所有记录、导入和读取将服务器和客户端脚本复制并粘贴到您的应用中。
我相信这会让事情变得更容易!
要使用此删除模型中的所有数据: 单击按钮:
google.script.run.AMU.deleteAllData('ModelName');
在服务器上删除记录的正确方法是:
app.models.MODEL_NAME.deleteRecords(key_array);
datasource.unload() 只是在客户端卸载小部件。不影响数据库记录。
在服务器上编写记录查询的更好方法是:
var query = app.models.MODEL_NAME.newQuery();
query.filters.your_filter_here;
var records = query.run();
请注意,在不使用 function posted here 的情况下,您不能 return 来自除计算模型函数之外的任何内容的单个记录或记录数组。 (您可以 return 对任何 json 数据使用 stringify 的记录的单个字段。)
我目前正在研究一种解决方案,以创建 App Maker 所需的数据源独立表。
对于服务器上的删除功能,请尝试稍微更改您的代码,该功能至少对我有用,但是我已经有一段时间不需要使用它了。
function ClearTable(){
var records = app.models.P11d.newQuery().run();
console.log('Server Function Ran');
app.deleteRecords(records);
}