2017-07-05 9 views
0

私はcreateCourses関数を使用してスクリプトを作成しています。 Google開発サポートで提供されているテンプレートコードは、これが始まった場所です。今、スプレッドシートからデータを取り出すためにテンプレートを操作したいと思います。デバッグが私にエラーを表示しています - 「無効なJSONペイロードが届きました。「コース」の名前が不明です:プロトフィールドは繰り返しません。リストを開始できません。データは引き出されているように見えますが、私のすべてのコースで作成機能を繰り返す方法を理解できません。シートからのデータを使用してcreateCourses関数を使用するスクリプト

ここに私のコードです...私は目的のシート 'ID'を交換しました!

function createCourses() { 

    var course; 
    course = Classroom.newCourse(); 

    var ss = SpreadsheetApp.openById('ID'); 

    course.name = ss.getRange("A2:A").getValues(); 
    course.ownerId = ss.getRange("H2:H").getValues(); 
    //course.id = "Bio10"; 

    course = Classroom.Courses.create(course); 
    Logger.log('%s (%s)', course.name, course.id); 

    var list = Classroom.Courses.create(); 
    Logger.log(create); 

} 
+0

ログには何が表示されますか? – noogui

+0

ログはデータを返しません...実行記録... [17-07-07 09:17:10:199 EDT] Range.getValues(0) [17-07-07 09: 17:10:237 EDT]実行に失敗しました:無効なJSONペイロードが受信されました。 「コース」で不明な名前の「名前」:プロトフィールドが繰り返されていない、リストを開始できません。 無効なJSONペイロードが受信されました。 「コース」の不明な名前「owner_id」:プロトフィールドが繰り返しされていない、リストを開始できません。 (行12、ファイル "コード")[合計実行時間0.26秒] –

答えて

0

あなたは言いませんが、私はあなたが.create()メソッドにパラメータを渡していないvar list = Classroom.Courses.create();行にエラーが出ていると仮定します。

この機能を繰り返すには、スプレッドシートからデータ範囲を引き出し、forループを使用してデータを繰り返し処理し、コースを作成するだけです。

+0

ありがとうございます。エラーは実際に 'course = Classroom.Courses.create(course);に表示されます。あなたの回答に違いがある場合は? –

関連する問題