Zalecamy zapoznanie się z: LICENSE CONTRIBUTING CODE_OF_CONDUCT
for (let group of dv.pages().where(p => p["typ"] == "GK").where(p => p["semestr"] != 4).groupBy(p => p.semestr)) {
let sum = 0;
group.rows.forEach(x=>sum+=Number(x.ects)*Number(x.ocena))
dv.header(3, "Semestr " + group.key + ": " + (sum/30).toFixed(3));
}
let sum = 0;
let semestrCount = 1;
dv.pages()
.where(p => p["typ"] == "GK")
.where(p => p["semestr"] !== 4)
.forEach(x=>{
sum+=x.ects*x.ocena
if (x.semestr > semestrCount) semestrCount = x.semestr
})
dv.header(3, "Studia: " + (sum/(30*semestrCount)).toFixed(3));
[!Utils] bin