getActiveUser и getEffectiveUser возвращают значение null в сценарии общего диска

Итак, моя компания недавно перешла с общего диска на общий диск, и у нас есть скрипт листа Google, который использует этот метод.

Session.getEffectiveUser().getEmail();

но я получаю эту ошибку при запуске скрипта

TypeError: невозможно вызвать метод getEmail со значением null.

Это работало, когда файл был или находится на моем диске, но не работает, если он находится на общем диске. Я также вызывал его в регистраторе в редакторе сценариев, пока сценарий находится на общем диске, и он возвращает правильное значение. Я тоже пробовал этот метод.

Session.getActiveUser().getEmail();


person Jean Park    schedule 31.07.2018    source источник
comment
Вы просматривали документацию о многих различиях между Google Drive и Team Drive? У них разные наборы разрешений. Кроме того, не показывайте сообщения об ошибках или код в изображениях.   -  person tehhowch    schedule 31.07.2018
comment
developers.google.com/apps-script/guides/   -  person tehhowch    schedule 31.07.2018
comment
В настоящее время у меня есть доступ для редактирования к файлу и полный доступ к папке, но я не вижу более высокого уровня доступа к файлу. Это разрешение на файл? или доступ пользователя, на которого у меня нет прав?   -  person Jean Park    schedule 01.08.2018


Ответы (1)


Я предлагаю вам создать собственный триггер, например. MyonEdit, который использует onEdit. (Редактировать просмотр текущих триггеров проекта). getUser().getEmail теперь возвращает значения.

Моя проблема заключалась в том, что листы, сохраненные на моем диске, возвращали getUser() правильно, но возвращали значение null, когда лист был сохранен на общем диске.

person Jonnie    schedule 21.05.2019