2014-01-07 118 views
1

已解決: 原來,這是雲端控制檯中的身份驗證問題。當我點擊高級服務面板中的鏈接時,它會在打開控制檯時切換到我的主登錄帳戶。對於遇到類似問題的任何人,我建議您退出所有其他帳戶。BigQuery訪問新的Google Spreadsheets


原始問題。 由於舊版Google表格中的限制已被移除,因此我正在嘗試將代碼遷移到新版Google表格。但是,我無法運行我的代碼,因爲我無法爲電子表格啓用此代碼。

(對於任何你們誰不知道我的意思,這是新的谷歌電子表格:http://googleblog.blogspot.nl/2013/12/new-google-sheets-faster-more-powerful.html

我嘗試的第一次:
資源>進展谷歌服務>的BigQuery API「的」
然後:
我點擊「必須在Google Developers Console中啓用這些服務」中的鏈接。這將我帶到cloud.google.com,並顯示錯誤「您請求的項目不可用」。

圖片可以在這裏找到:i44.tinypic.com/117zcld.png

當我執行一個老谷歌表相同的動作,沒有一點問題都沒有。我閱讀了不支持的功能列表,並看到一些應用程序腳本功能尚不可用,但未指定它們:https://support.google.com/drive/answer/3543688?hl=en&ref_topic=20322 這是否表示BigQuery API訪問功能尚不適用於新版Google電子表格?如果是這樣,你是否有任何關於未來何時可用的信息?

親切的問候,勒

回答

2

這是我遵循的步驟:

  • Created a new Google Spreadsheet,您提供的鏈接如下。
  • 找到腳本管理器,打開BigQuery。
  • 隨後鏈接到Google Developers Console,它工作。
  • 也打開BigQuery。
  • 寫了一個小腳本。
  • 它的工作!

不確定爲什麼您的特定電子表格失敗。你可以嘗試創建一個新的?

我的測試腳本:

function quickBigQueryTest() { 
    var resource = { 
     query: 'select 1 x', 
     timeoutMs: 1000 
    }; 
    var queryResults = BigQuery.Jobs.query(resource, 'project number'); 
    Logger.log(queryResults); 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    var headers = queryResults.schema.fields.map(function(field) { 
    return field.name; 
    }); 
    Logger.log(headers); 
    sheet.appendRow(headers); 
} 
+1

這是不是真的回答我的問題,而是非常感謝您的時間和精力。再次嘗試看看我是否忽略了某些東西已經足夠保險了。 – dekkerr

+0

很酷,它工作嗎? –

+1

是的,我更新了OP,以確保人們在跟蹤鏈接之前註銷其他帳戶。不幸的是,我沒有足夠的聲望給你一個贊成票。 – dekkerr