Память скрипта
«Память» хранит значения между запусками скрипта: номер последнего обработанного заказа, дату последней выгрузки, счётчики, настройки. Значения видны и редактируются на вкладке «Память» редактора.
Два хранилища
| Хранилище | Кому доступно |
|---|---|
Properties.script | только этому скрипту |
Properties.table | всем скриптам таблицы |
Команды у обоих одинаковые.

Команды
const last = Properties.script.get("lastOrder"); // строка или null
Properties.script.set("lastOrder", 1052); // строка, число или true/false
Properties.script.setJson("seen", [1, 2, 3]); // объект или массив
const seen = Properties.script.getJson("seen") || [];
Properties.script.has("lastOrder"); // true или false
Properties.script.delete("lastOrder");
Properties.script.keys(); // все ключи
Properties.script.getAll(); // { ключ: значение }
Properties.script.clear(); // удалить всё
Числа и true/false читаются обратно строкой: Properties.script.get("lastOrder") вернёт "1052". Преобразуйте сами: Number(Properties.script.get("lastOrder") || 0).
Пример: обработать только новые заказы
function main() {
const sheet = Coverse.table.getSheet("Заказы");
const rows = sheet.getDataRange().getValues();
const last = Number(Properties.script.get("lastRow") || 1);
for (let i = last; i < rows.length; i++) {
console.log("Новый заказ:", rows[i][0], rows[i][3]);
}
Properties.script.set("lastRow", rows.length);
}
Значения записываются в «Память» в конце запуска. Если запуск завершился ошибкой, изменения, сделанные до ошибки, тоже сохраняются.
Ограничения
- до 100 ключей в каждом хранилище;
- значение до 9216 байт (около 9 КБ);
- в «Память» нельзя класть пароли и токены: для них есть Секреты.
Properties.table общая для всех скриптов таблицы: если её меняют несколько скриптов, договоритесь о названиях ключей, чтобы они не перезаписывали значения друг друга.