Блок для записи данных в Google-Таблицы
Блок для записи данных в Google-Таблицы
// 0) Заходим в Google-Таблицы, Инструменты > Редактор скриптов...
// 1) Вставляем туда этот код
// 2) Сохраняем и именуем уникальным названием
// 3) Задаем в меню способ запуска в режиме "doGet"
// 4) При первом запуске скрипт попросит вас дать ему права на редактирование таблицы
// 5) В главном меню > Развернуть как веб-приложение...
// Каждый раз, когда заново разворачиваете скрипт, выбирайте последнюю версию
// Выставляем права: "Me (your email address)"
// ВАЖНО: выберите "Anyone, even anonymous" в меню "Кто может редактировать этот скрипт"
// Сохраняем опубликованный URL для использования в дальнейшем.
// https://script.google.com/macros/s/---Ваш-Script-ID--здесь---/exec
// https://script.google.com/macros/s/---Ваш-Script-ID--здесь---/exec?tag=test&value=-1
// Эта Функция будет вызвана один раз при первом исполнении
Это вставляем в гугл приложение скрипт
function doGet(e){
Logger.log("--- doGet ---");
var tag = "",
value = "";
try {
// Дебаггинг
if (e == null){e={}; e.parameters = {tag:"test",value:"-1"};}
tag = e.parameters.tag;
value = e.parameters.value;
// Сохраняем данные в таблицу
save_data(tag, value);
return ContentService.createTextOutput("Wrote:n tag: " + tag + "n value: " + value);
} catch(error) {
Logger.log(error);
return ContentService.createTextOutput("oops...." + error.message
+ "n" + new Date()
+ "ntag: " + tag +
+ "nvalue: " + value);
}
}
// Функция для сохранения данных в таблицу
function save_data(tag, value){
Logger.log("--- save_data ---");
try {
var dateTime = new Date();
// Вставьте URL из Google-таблицы , начиная с https thru /edit
// Например: https://docs.google.com/..../edit
var ss = SpreadsheetApp.openByUrl("https://docs.google.com/spreadsheets/d/1XhhfgQAbtNJ_JPeXVMZPauKVh697U4SRT1Fkfx77Qs4/edit");
var summarySheet = ss.getSheetByName("Summary");
var dataLoggerSheet = ss.getSheetByName("DataLogger");
// Получаем информацию о последней отредактированной строке в таблице
var row = dataLoggerSheet.getLastRow() + 1;
// Заполняем данными
dataLoggerSheet.getRange("A" + row).setValue(row -1); // ID
dataLoggerSheet.getRange("B" + row).setValue(dateTime); // dateTime
dataLoggerSheet.getRange("C" + row).setValue(tag); // tag
dataLoggerSheet.getRange("D" + row).setValue(value); // value
// Обновляем таблицу summary
summarySheet.getRange("B1").setValue(dateTime); // Last modified date
// summarySheet.getRange("B2").setValue(row - 1); // Count
}
catch(error) {
Logger.log(JSON.stringify(error));
}
Logger.log("--- save_data end---");
}
Комментариев 0