Szia!

Szerintem, mindenhol hasonló nagyságrendű.
Nem reménytelen a dolog, csak kicsit "geccsolós" Apps Script-ben. Külső API
hívásokkal, bármilyen más támogatott programozási nyelvben lazán megoldható.
Egyébként Apps Script-ből is meg lehetne oldani külső API hívásokkal, csak
akkor pontosan ugyanazokat az előkészületeket kell hozzá megtenni, mint pl.
a Python-hoz.
A HTTP request-eket is magadnak kell összeállítani és az autentikációról is
neked kell gondoskodni. Úgy lehetne ugyan kötegelt feldolgozást is
csinálni, de lényegében elveszíted az Apps Script nyújtotta előnyöket.
Akkor meg inkább maradok a megszokott fejlesztőkörnyezetemben, mert jó-jó
ez a script-szerkesztő, deee ...

Üdv,
Venczel József


Zsolt Farkas <fazs...@gmail.com> ezt írta (időpont: 2020. nov. 13., P,
5:50):

> Köszi. Nálunk is ilyen nagyságrendű kurzus van, így akkor reménytelen, bár
> nálunk még nem kérték :)
>
> József Venczel <venczel...@gmail.com> ezt írta (időpont: 2020. nov. 12.,
> Cs, 19:20):
>
>> Szia Zsolt!
>>
>> Igen, lényegében ennyi az egész:
>>
>> //-----------------------------------------------------------------------------------
>> function Kurzuslistazo() {
>>
>>   var nextPageToken = "";
>>   var sor=1;
>>
>>   do {
>>     var optionalArgs = { pageSize: 200,
>>                          pageToken: nextPageToken,
>>                          fields: "nextPageToken,courses(id,name)" };
>>
>>     var lista = Classroom.Courses.list(optionalArgs);
>>
>>     var nextPageToken = lista.nextPageToken;
>>
>>     for (var i = 0; i < lista.courses.length; i++){
>>
>> SpreadsheetApp.getActiveSheet().getRange(sor,1).setValue(lista.courses[i].name);
>>       sor++;
>>
>>       tanarok=Classroom.Courses.Teachers.list(lista.courses[i].id);
>>       if(tanarok.teachers){
>>         for(var j = 0; j<tanarok.teachers.length; j++){
>>
>> SpreadsheetApp.getActiveSheet().getRange(sor,2).setValue(tanarok.teachers[j].profile.name.fullName);
>>           sor++;
>>         }
>>       }
>>
>>       diakok=Classroom.Courses.Students.list(lista.courses[i].id);
>>       if(diakok.students){
>>         for(var j = 0; j<diakok.students.length; j++){
>>
>> SpreadsheetApp.getActiveSheet().getRange(sor,2).setValue(diakok.students[j].profile.name.fullName);
>>           sor++;
>>         }
>>       }
>>     }
>>
>>     } while (nextPageToken);
>> }
>> //-----------------------------------------------------------------------------------
>>
>>
>> Ezt a scriptet csak egy üres táblázat script-szerkesztőjébe kell
>> bemásolni és futtatni.
>> Annyi gond van vele, hogy túl lassú, így nem biztos, hogy belefér a
>> scriptekre érvényes fél órás korlátba.
>> Nálunk pl. nem, mert 504 kurzusunk van, ez kb. 12000 soros táblázatot
>> eredményezne. Fél óra alatt 5151. sorig jut.
>> Ez nem a géped teljesítményétől függ, mert az Apps Script a Google
>> szerverein fut közvetlenül. Gondolom, emiatt van az időkorlát is.
>> Sajnos Apps Script-ben nincs kötegeléses fedolgozás, ami pythonban van a
>> Google API-khoz. Ott 1-2 per alatt lefutna, csak több előkészület kell
>> hozzá.
>> (Lásd másik szálban a domain módosító scriptet.)
>> Azért is kérdeztem, hogy pontosan milyen táblázat kell, mert valahogy
>> részekre kellene osztani a feladatot és akkor pl. többször lefuttatni.
>> Másrészt, szerintem ez most teljesen használhatatlan táblázatot csinál.
>> Ilyen nagy sorszámmal nem sok mindent lehet kezdeni vele.
>> Jobb lenne pl. ha munkalaponként csak egy-egy tanárnak listázná a
>> kurzusait, vagy valami hasonló.
>> Ezeket a scripteket lehet makróként is meghívni, vagy akár külön gomb is
>> rendelhető hozzájuk, elég rugalmasan lehet használni őket.
>> Itt van hozzá leírás:
>> https://developers.google.com/apps-script/overview
>>
>> Ha megvan, milyen táblázat kell, szívesen segítek módosítani a scriptet,
>> hogy lefusson úgy, ahogy kell.
>>
>> Üdv,
>> Venczel József
>>
>> Zsolt Farkas <fazs...@gmail.com> ezt írta (időpont: 2020. nov. 12., Cs,
>> 12:35):
>>
>>> Ez érdekelne engem?
>>> Valami script, vagy van beépített funkció?
>>>
>>> József Venczel <venczel...@gmail.com> ezt írta (időpont: 2020. nov.
>>> 11., Sze, 21:05):
>>>
>>>> Szia!
>>>>
>>>> Tudtommal nincs rá kifejezetten funkció, de ha pontosítod milyen listát
>>>> szeretnél, lehet tudok segíteni.
>>>> Úgy értem elég pl. ha egy táblázatban egymás alatt megjelennek a
>>>> kurzusok, alattuk pedig a tagok névsora?
>>>> Admin felhasználóval, Google Táblázatokban viszonylag egyszerűen
>>>> megoldható.
>>>>
>>>> Üdv,
>>>> Venczel József
>>>>
>>>> Kámán Tibor <kam...@freemail.hu> ezt írta (időpont: 2020. nov. 11.,
>>>> Sze, 15:25):
>>>>
>>>>> Sziasztok!
>>>>>
>>>>> Létezik valami egyszerű módszer arra, hogy iskolai Gsuite-ban a
>>>>> kurzusok tagjainak listáját ki tudjam exportálni? A legjobb az lenne, ha
>>>>> adminként menne minden tanárra.
>>>>>
>>>>> Olyant tudok, hogy ha már van egy kurzusban kiküldött feladat, akkor a
>>>>> kurzus tanára egy-egy kurzus tagjait (pontosabban az osztályzatokat, még 
>>>>> ha
>>>>> nincs is még) tudja csv-be, vagyGoogle táblázatokba menteni, de jó lenne,
>>>>> ha nem kellene egyesével.
>>>>>
>>>>> Köszönöm.
>>>>>
>>>>> K.Tibor
>>>>> _______________________________________________
>>>>> Techinfo mailing list
>>>>> Techinfo@lista.sulinet.hu
>>>>> Fel- és leiratkozás:
>>>>> http://lista.sulinet.hu/cgi-bin/mailman/listinfo/techinfo
>>>>> Illemtan: http://www.szag.hu/illemtan.html
>>>>> Ügyfélszolgálat FAQ: http://sulinet.niif.hu/
>>>>>
>>>> _______________________________________________
>>>> Techinfo mailing list
>>>> Techinfo@lista.sulinet.hu
>>>> Fel- és leiratkozás:
>>>> http://lista.sulinet.hu/cgi-bin/mailman/listinfo/techinfo
>>>> Illemtan: http://www.szag.hu/illemtan.html
>>>> Ügyfélszolgálat FAQ: http://sulinet.niif.hu/
>>>>
>>> _______________________________________________
>>> Techinfo mailing list
>>> Techinfo@lista.sulinet.hu
>>> Fel- és leiratkozás:
>>> http://lista.sulinet.hu/cgi-bin/mailman/listinfo/techinfo
>>> Illemtan: http://www.szag.hu/illemtan.html
>>> Ügyfélszolgálat FAQ: http://sulinet.niif.hu/
>>>
>> _______________________________________________
>> Techinfo mailing list
>> Techinfo@lista.sulinet.hu
>> Fel- és leiratkozás:
>> http://lista.sulinet.hu/cgi-bin/mailman/listinfo/techinfo
>> Illemtan: http://www.szag.hu/illemtan.html
>> Ügyfélszolgálat FAQ: http://sulinet.niif.hu/
>>
> _______________________________________________
> Techinfo mailing list
> Techinfo@lista.sulinet.hu
> Fel- és leiratkozás:
> http://lista.sulinet.hu/cgi-bin/mailman/listinfo/techinfo
> Illemtan: http://www.szag.hu/illemtan.html
> Ügyfélszolgálat FAQ: http://sulinet.niif.hu/
>
_______________________________________________
Techinfo mailing list
Techinfo@lista.sulinet.hu
Fel- és leiratkozás: http://lista.sulinet.hu/cgi-bin/mailman/listinfo/techinfo
Illemtan: http://www.szag.hu/illemtan.html
Ügyfélszolgálat FAQ: http://sulinet.niif.hu/

válasz