Exporter en CSV, XLSX et PDF
Exportez la grille filtrée/triée courante en CSV, XLSX ou PDF depuis la barre d'outils - et importez des lignes en retour depuis un fichier CSV.
Exporter l'état courant de la grille
La barre d'outils de chaque grille possède un menu d'export/import avec les options CSV, XLSX et PDF. L'export reprend exactement ce que la grille affiche actuellement - toute recherche simple active, recherche par colonne, conditions de recherche avancée, onglet de filtre et ordre de tri - et non un déversement non filtré de la table brute. Recherchez et triez d'abord, puis exportez, pour obtenir exactement les lignes et l'ordre que voit un visiteur.
Aucun appel PHP n'est requis pour activer l'export - il est intégré automatiquement à chaque grille, aussi bien pour les grilles ->table() que pour les grilles en mode rapport ->query().
$xcrud = Xcrud::get_instance();
$xcrud->table('customers');
$xcrud->route('csv-download');
$xcrud->columns('customerNumber,customerName,contactFirstName,contactLastName,city,country,creditLimit');
$xcrud->change_type('creditLimit', 'price', '2', ['prefix' => '$']);
$xcrud->order_by('customerName', 'asc');
Seules les colonnes actuellement visibles dans ->columns() (et non désactivées via le menu de visibilité des colonnes de Plus d'options) sont incluses dans l'export.
Limites de lignes
XcrudConfig::$exportRowLimit plafonne le nombre de lignes qu'un export peut contenir :
| Réglage | Type | Défaut | Description |
|---|---|---|---|
$exportRowLimit | int | 50000 | Nombre maximal de lignes qu'un export CSV/XLSX/PDF inclura, appliqué côté serveur indépendamment du nombre réel de résultats du filtre courant. |
Import CSV
Le même menu de la barre d'outils prend également en charge l'import - le téléversement d'un fichier CSV pour créer ou mettre à jour des lignes en masse dans la table sous-jacente. L'import n'est disponible que sur une grille réelle adossée à ->table(), pas sur un rapport en lecture seule ->query().
| Réglage | Type | Défaut | Description |
|---|---|---|---|
$importRowLimit | int | 5000 | Nombre maximal de lignes qu'une seule requête d'import CSV insérera ou mettra à jour - maintenu bien plus bas que $exportRowLimit, puisqu'une écriture en masse est une opération plus lourde et plus risquée qu'une lecture en masse. |
Voir la Référence XcrudConfig pour tous les autres réglages.