Я пытаюсь написать сценарий, отображающий значение строки в файле SpreadSheet с использованием UiApp.Скрипт Google Apps запускается при изменении SpreadSheet другим сценарием
И этот скрипт должен будет обновлять данные всякий раз, когда есть изменение в SpreadSheet. Обычно это будет просто с помощью Trigger onChange.
Однако сам SpreadSheet также обновляется другой функцией, и кажется, что onChange не запускается, когда внесенные изменения вызваны другим AppScript.
Есть ли альтернативный способ достижения того, что я описал?
Код ниже, благодаря
var ss = SpreadsheetApp.openById("tqwJk280I1O_yW5oNX9nLQA");
function doGet() {
var app = UiApp.createApplication();
var masPanel = app.createFlowPanel().setId("panel");
var number = parseInt(ss.getRange("A1").getValue());
masPanel.add(app.createLabel(number));
masPanel.add(app.createFlowPanel().add(app.createFormPanel()
.add(app.createFlowPanel()
.add(app.createSubmitButton("Plus!")))));
app.add(masPanel);
return app;
}
function doPost()
{
var num = parseInt(ss.getRange("A1").getValue()) + 1;
ss.getRange("A1").setValue(num);
}
function onChange()
{
ss.getRange("A2").setValue("hahaha");
var app = UiApp.createApplication();
app.remove(app.getElementById("panel"))
var masPanel = app.createFlowPanel().setId("panel");
var number = parseInt(ss.getRange("A1").getValue());
masPanel.add(app.createLabel(number));
masPanel.add(app.createFlowPanel().add(app.createFormPanel()
.add(app.createFlowPanel()
.add(app.createSubmitButton("Plus!")))));
app.add(masPanel);
return app;
}
Большое спасибо, Шрик, эта функция была действительно полезна. Есть ли страница или форум об этих функциях? – MikeNQ
Как я уже сказал, addTimer еще недокументирован :) Надеюсь, что Google скоро станет официальным – Srik