Agregace plateb/vkladu v NDBT, je to mozne?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Ja
Člen | 260
+
0
-

zdary,
slo by v NDBT napsat nejaky takovy dotaz? Je potreba spocitat vklady a platby jednotlivych uzivatelu a dodat to v ramci jednoho dotazu, aby to prechroustalo grido. V cistem query by ten dotaz vypadal nejak takto:

<?php
SELECT
				f.id_dite,
				CONCAT(u.jmeno, " ", u.prijmeni) AS jmeno_cele,
				(select SUM(castka) FROM '.self::TABLE_NAME.' WHERE typ = "vklad" && id_dite = f.id_dite && id_skolni_rok = ' . $this->id_skolni_rok . ' LIMIT 1) as vklad,
				(select SUM(castka) FROM '.self::TABLE_NAME.' WHERE typ = "platba" && id_dite = f.id_dite && id_skolni_rok = ' . $this->id_skolni_rok . ' LIMIT 1) as platba

			FROM '.self::TABLE_NAME.' f
			LEFT JOIN uzivatel u ON u.id = f.id_dite
			WHERE id_skolni_rok = ' . $this->id_skolni_rok . '
			GROUP BY id_dite

?>
hrach
Člen | 1844
+
0
-

Neni. Proč to potřebuje s v ndbt a nestačí NDB?

Ja
Člen | 260
+
0
-

Kvuli Grido, query vraci ResultSet a Grido si s nim neporadi

<?php
grido doc:

setModel: model implementující rozhraní IDataSource nebo DibiFluent, Nette\Database\Table\Selection, Doctrine\ORM\QueryBuilder, Array
?>
Oli
Člen | 1215
+
0
-

Ja napsal(a):

Kvuli Grido, query vraci ResultSet a Grido si s nim neporadi

<?php
grido doc:

setModel: model implementující rozhraní IDataSource nebo DibiFluent, Nette\Database\Table\Selection, Doctrine\ORM\QueryBuilder, Array
?>

Zkus tam teda dat fetchAll(); To implementuje IRow a mohlo by to skousnout jako array. Nebo fetchAssoc()

Ja
Člen | 260
+
0
-

Uuu, diky moc, Oli! jde!

hrach
Člen | 1844
+
0
-

Pouzivas pak spatny grid… ;)