Bonjour,
1) Concernant l'option "Tous" de la liste déroulante du nombre de lignes affichées dans le tableau, vous pouvez mettre par exemple la valeur "all" dans l'attribut value :
<!-- Number of rows per page -->
<select class="zdk-select-rows" title="Rows">
<option value="10">10</option>
<option value="20">20</option>
<option value="all">All</option>
</select>
Ensuite, dans l'action data du contrôleur, si le paramètre POST rows contient la valeur "all", vous n'appelez pas la méthode setLimit() du DAO.
static protected function action_data() {
// 1) Read POST parameters
$request = new \Request();
// --> Pagination
$first = $request->first; $rows = $request->rows;
// ...
// 2) Request rows from the database
$response = new \Response();
$productsDAO = new \app\model\ProductsDAO();
$productsDAO->setKeywordAsFilter($keyword);
$productsFound = array();
try {
$response->total = $productsDAO->getCount();
$productsDAO->setSortCriteria($sortCriteria); if ($rows !== 'all') {
$productsDAO->setLimit($first, $rows);
}
...
Vous afficherez ainsi la totalité des lignes renvoyées par le DAO.
2) Concernant l'export CSV de données et l'impression PDF, je vous invite à consulter la question déjà posée sur ce forum intitulée
export CSV et imprimer en PDF.
3) Pour ce qui est de l'affichage de graphiques avec ZnetDK, j'utilise la librairie
ChartJS que vous pouvez télécharger sur le site officiel
http://www.chartjs.org. Si vous avez besoin d'aide pour intégrer cette librairie dans ZnetDK, merci d'ouvrir un nouveau sujet dans ce même forum.
Salutations,
Pascal MARTINEZ