Gmail → Google Таблиця: чому скрипт раптом «злетів»
Схема: скрипт Apps Script читає нові листи із замовленнями в Gmail, регулярними виразами дістає номер замовлення, телефон, дату доставки тощо й дописує рядок у таблицю. Найчастіше він ламається не сам: змінюється лист, тригер або дозвіл. Нижче це можна перевірити наживо.
1. Лист із замовленням
2. Результат розбору
| Поле | Значення | Стан |
|---|
3. Що перевіряємо, коли «нічого не підтягується»
- Журнал виконань (Executions): чи є помилки, з текстом і рядком; там видно, який вираз повернув
null. - Тригер: чи не видалено й не вимкнено, чи не зламався після зміни власника проєкту.
- Дозволи: після зміни пароля або політик Google скрипт просить повторної авторизації.
- Ярлик і пошук Gmail: чи листи ще потрапляють під ваш фільтр (ярлик, відправник, тема).
- Формат листа: зміна слова, пробілу, дати чи порядку рядків ламає жорсткий регулярний вираз.
- Ліміти: добові квоти на лист і виконання.
Чому «старий» варіант у демо ламається: у листі змінилося формулювання, а між словами з'явився невидимий символ (\u200b), який \s не вважає пробілом.
// було: жорстко
/Замовлення\s*№\s*(\d+)/
// стало: стійко + запис у журнал
const t = subject.replace(/[\u200b\u00a0\u202f]/g,'');
/Замовлення\s*[:№#Nn]*\s*(\d+)/i
if (!m) Logger.log('НЕ РОЗІБРАНО: '+subject);