2014-06-17 3 views
0

Я пытаюсь прикрепить PDF-файл одного листа к электронному письму и получил его для работы с приведенным ниже кодом. Проблема в том, что его нужно запускать из редактора в первый раз, или модальность авторизации не появится и скрипт просто зависает. Мне нужно иметь возможность запускать этот скрипт из самого листа. Вот мой код:Скрипт Google не будет запрашивать авторизацию, если он не запущен в редакторе скриптов

function spreadsheetToPDF(key, id, name) { 

    var oauthConfig = UrlFetchApp.addOAuthService("spreadsheets"); 
    var scope = "https://spreadsheets.google.com/feeds" 

    oauthConfig.setConsumerKey("anonymous"); 
    oauthConfig.setConsumerSecret("anonymous"); 
    oauthConfig.setRequestTokenUrl("https://www.google.com/accounts/OAuthGetRequestToken?scope="+scope); 
    oauthConfig.setAuthorizationUrl("https://accounts.google.com/OAuthAuthorizeToken");  
    oauthConfig.setAccessTokenUrl("https://www.google.com/accounts/OAuthGetAccessToken"); 

    var requestData = { 
    "oAuthServiceName": "spreadsheets", 
    "oAuthUseToken": "always", 
    }; 
    var pdf = UrlFetchApp.fetch("https://docs.google.com/a/propertysolutions.com/spreadsheets/d/"+key+ "/export?format=pdf&size=0&fzr=true&portrait=false&fitw=true&gid=" + id + 
       "&gridlines=false&printtitle=false&sheetnames=false&pagenum=UNDEFINED&attachment=true", requestData).getBlob().setName(name); 

    return pdf; 
} 

ответ

0

Этот вопрос обсуждался довольно много раз, его можно найти в issue tracker under ref 677 и последние обновления отметить, что это не будет исправлено.

В то же время одна из последних сообщений (от Е. Коледы) предлагает другой рабочий процесс (и обещает показать примеры в ближайшем будущем).

Смежные вопросы