#javascript #google-apps-script #google-classroom
#javascript #google-apps-script #google-classroom
Вопрос:
Возможно ли использовать IndividualStudentsOptions
объект из Google Apps Script? Я пытаюсь создать объект, но возвращает эту ошибку
Исключение GoogleJsonResponseException: Нет se ha podido llamar a la API classroom.courses.courseWork.create; ошибка: получена недопустимая полезная нагрузка JSON. Неизвестное имя «individualStudentsOptions» в «course_work»: Прото-поле не повторяется, невозможно запустить список.
Кажется, что это невозможно из GAS.
function enviarclassdos(datos,alumnos){
// datos: object with needed variables for classroom publishing
// alumnos: individual students (array [students])
var stdid = []; //Array of IDs of individual students
//Getting the IDs of the individual students
var hojacuentas = SpreadsheetApp.openById("1oHlpSyRB913LWpj-UNTKattO").getSheetByName("CUENTAS");
var datacuentas = hojacuentas.getDataRange().getValues();
for(var al =0; al<alumnos.length; al ){
var alum = alumnos[al][0];
for (var dt=0; dt<datacuentas.length; dt ){
var alumdt = datacuentas[dt][0];
if (alumdt == alum){
var cuenta = datacuentas[dt][3];
stdid.push(cuenta);}}}
var curso = datos.curso;
var tipo = datos.tipo;
if (curso == "Primero A"){var id = "14085771****";}
if (curso == "Primero B"){var id = "14085996****";}
if (curso == "Segundo A"){var id = "14085996****";}
if (curso == "Segundo B"){var id = "14085996****";}
if (curso == "Cuarto AB"){var id = "14085996****";}
var titulo = datos.concepto;
var descripcion = datos.descripcion;
var fecha = datos.fecha;
var tema = datos.tipo
var ClassSource =
{
title: titulo,
description: descripcion,
state: "PUBLISHED",
workType: "ASSIGNMENT",
topicId: tema,
maxPoints: 100,
assigneeMode: "INDIVIDUAL_STUDENTS"
}
//This is the object that produces the error message
ClassSource.individualStudentsOptions = {studentIds:stdid};
var clss = Classroom.Courses.CourseWork;
var wrk = clss.create(ClassSource, id);
}
Ответ №1:
Вместо
ClassSource.individualStudentsOptions = [{studentIds:stdid}];
использование
ClassSource.individualStudentsOptions = {studentIds:[stdid]};
Ссылка