I'm working on a project where I shall send data from my app to a google spreadsheet in 2 sheets through app script.
I set up a paraphrase to secure the connection. Hkey
I have a lot of data to send like computer1,brand1,cpu1,ram1,computer2,brand2,cpu2,ram2 until 20.
my first version of the code comprise a lot of data like below:
function doGet(e) {
var ss = SpreadsheetApp.getActive();
var sheet1 = ss.getSheetByName("Sheet1");
var Sheet2 = ss.getSheetByName('Sheet2');
var Region = e.parameter.Region ;
var Place = e.parameter.Place ;
var Staff = e.parameter.Staff ;
var computer1 = e.parameter.computer1;
var brand1 = e.parameter.brand1;
var cpu1 = e.parameter.cpu1;
var ram1 = e.parameter.ram1;
var computer2 = e.parameter.computer2;
var brand2 = e.parameter.brand2;
var cpu2 = e.parameter.cpu2;
var ram2 = e.parameter.ram2;
var Hkey = e.parameter.Hkey;
if (Hkey == 'AB12xyz') {
sheet1.appendRow(Region, Place, Staff, computer, brand, cpu, ram);
Sheet2.appendRow(Region, Place, Staff, computer, brand, cpu, ram);
}
}
Then I optimised the code to avoid repeated tasks. where if the computer
is true, then append computer1,brand1,cpu1,ram1
and so on...until computer20,brand20,cpu20,ram20
Optimised code :
function doGet(e) {
var ss = SpreadsheetApp.getActive();
var sheet1 = ss.getSheetByName("Sheet1");
var Sheet2 = ss.getSheetByName('Sheet2');
var ID = "FS" + new Date("GMT+4", "ddMM");
var Region = e.parameter.Region ;
var Place = e.parameter.Place ;
var Staff = e.parameter.Staff ;
var Shop = e.parameter.Shop;
var Location = e.parameter.Location ;
var Date_Checked = e.parameter.Date_Checked ;
var Time_Checked = e.parameter.Time_Checked ;
var Link = "check your inbox" ;
var Remarks = e.parameter.Remarks ;
var Hkey = e.parameter.Hkey;
if (Hkey == 'AB12xyz') {
for (var i = 1; i <= 20; i++) {
var computer = e.parameter['computer' + i];
var brand = e.parameter['brand' + i];
var cpu = e.parameter['cpu' + i];
var ram = e.parameter['ram' + i];
if (computer) {
var row = [ID,Region,Place,Staff,Shop,Location, Date_Checked,Time_Checked,Link,Remarks];
sheet1.appendRow(row, computer, brand, cpu, ram);
Sheet2.appendRow(row, computer, brand, cpu, ram);
}
}
The issue is that nothing is appended on the 2 sheets of the spreadsheet. When checking the script deployment overview, I got only failures.
Via Active questions tagged javascript - Stack Overflow https://ift.tt/SywV0cm
Comments
Post a Comment