/

CSV, XLSX & PDF exportieren

Das aktuell gefilterte/sortierte Grid über die Toolbar als CSV, XLSX oder PDF exportieren - und Zeilen aus einer CSV-Datei wieder importieren.

Den aktuellen Grid-Zustand exportieren

Die Toolbar jedes Grids enthält ein Export-/Import-Menü mit den Optionen CSV, XLSX und PDF. Der Export übernimmt genau das, was das Grid gerade anzeigt - jede aktive einfache Suche, Spaltensuche, Advanced-Search-Bedingungen, Filter-Tab und Sortierreihenfolge - und nicht einen ungefilterten Dump der Rohtabelle. Suchen und sortieren Sie zuerst und exportieren Sie danach, um genau die Zeilen und die Reihenfolge zu erhalten, die ein Besucher gerade vor sich sieht.

Um den Export zu aktivieren, ist kein PHP-Aufruf nötig - er ist automatisch in jedes Grid eingebaut, sowohl für ->table() als auch für Report-Grids im ->query()-Modus.

$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');

Nur die aktuell in ->columns() sichtbaren Spalten (und nicht über das Menü "Weitere Optionen" zur Spaltensichtbarkeit ausgeblendete) landen im Export.

Zeilenlimits

XcrudConfig::$exportRowLimit begrenzt, wie viele Zeilen ein einzelner Export enthalten darf:

EinstellungTypStandardBeschreibung
$exportRowLimitint50000Maximale Zeilenzahl, die ein einzelner CSV-/XLSX-/PDF-Export enthält, serverseitig durchgesetzt, unabhängig von der tatsächlichen Trefferzahl des aktuellen Filters.

CSV-Import

Dasselbe Toolbar-Menü unterstützt auch den Import - das Hochladen einer CSV-Datei, um Zeilen in der zugrunde liegenden Tabelle massenhaft anzulegen oder zu aktualisieren. Import ist nur bei einem echten, über ->table() betriebenen Grid verfügbar, nicht bei einem schreibgeschützten ->query()-Report.

EinstellungTypStandardBeschreibung
$importRowLimitint5000Maximale Zeilenzahl, die eine einzelne CSV-Import-Anfrage einfügen oder aktualisieren darf - deutlich niedriger als $exportRowLimit, da ein massenhafter Schreibvorgang ein schwergewichtigerer, riskanterer Vorgang ist als ein massenhaftes Lesen.

Alle weiteren Einstellungen finden Sie in der XcrudConfig-Referenz.