tgoop.com/google_sheets/875
Last Update:
ЗАЩИЩАЕМ СКРИПТЫ ОТ РЕДАКТИРОВАНИЯ
Рубрика "нам пишут" Александр Трифонов пришел в комментарии к последнему посту и написал, что любой редактор может зайти в код скрипта и поменять скрипт так, как захочет.
Рассказываем Александру и другим как защитить свои скрипты от редактирования.
Способ первый – библиотека
Уносим скрипты в библиотеку, открываем библиотеку для всех на просмотр, подключаем библиотеку к Таблице и оставляем в редакторе скриптов Таблицы только функцию для вызова функции из библиотеки:function something(){
lib.something();
}
Что такое библиотеки и как с ними работать отлично написал Миша Смирнов: www.tgoop.com/google_sheets/828
Способ второй - "inject", подходит для скриптов, которые можно положить на триггер
Создаем в Таблице из другой Таблицы скрипт и триггер на него, который не увидят владельцы первой Таблицы вообще: www.tgoop.com/google_sheets/753
Способ третий - развернутое приложение
1) переносим скрипты в другую таблицу / другой отдельный скрипт;
2) пишем там doGet функцию, которая будет принимать на вход название скрипта, разные аргументы, сами скрипты убираем в объект (смотрите в примере кода);
3) разворачиваем всё это как приложение, получаем ссылку приложения;
4) пишем функции в таблице, в которой вы хотите запускать скрипты, функции должны будут отправлять на адрес вашего приложения (пункт 3) названия скрипта, который надо запустить, а также аргументы, которые в этот скрипт надо передать (смотрите в примере кода, мы отправляем ключ и id таблицы);
5) всё! пользователь в Таблицы выбирает в меню своей Таблицы пункт, маленькая функция в Таблице отравляет на адрес развернутого приложения имя функции, которую нужно запустить и параметры. Далее приложение от имени того, кто его развернул запускает требуемый скрипт с переданными в него параметрами;
Примерный код: pastebin.com/TnBazuut
---
⭐️ Наш курс по Excel, Таблицам и скриптам: тыц
⭐️ Оглавление канала: ты-дыц
⭐️ Самый табличный чат на свете: бадабум
BY Google Таблицы
Share with your friend now:
tgoop.com/google_sheets/875