DataProvider CGridView e EExcelView

Salve a tutti,

ho un’esigenza che è quella di recuperare i dati visualizzati da una CGridView ( anche quando filtrati dal form di “Advanced Search” ) e esportarli su un foglio excel.

Per la seconda avrei pensato al modulo EExcelView ma come faccio a recuperare i dati o il DataProvider della CGridView?

Grazie

Non ci credo…

nessuno ha mai affrontato questo problema?!?!

Guarda, per fare qualche cosa di simile io salvavo tutto in un file .csv, Excel legge il formato tranquillamente. Però vorrei farti una domanda. A cosa ti serve avere un file di excel se hai già i tuoi dati in un CGridView?

Guarda devo risolvere anch’io proprio in questi giorni lo stesso problema, ti faccio sapere. In realtà devo adre la possibilità al cliente di esportare tutta la CGridView su file Excel per statistiche sue personalizzate.

Se non erro il DataProvider della CGridview è ottenuto di solito col metodo search() del modello ActiveRecord, quindi puoi fare:

$mioDataprovider=$model->search();

Nota: l’ Advanced Search non fa che inserire i valori di ricerca in $model… se guardi il

coding del metodo search nel modello ti sarà tutto chiaro… (almeno, così spero che sia).

In realtà la grid view quando lanciata mostra tutti i record.

Poi effettuo delle ricerche, parzializzando i risultati, a quel punto mi serve di fare il download di quel risultato ( magari utilizzando l’estensione che ho indicato ) in un formato ( csv, excel, html… qualunque ) così da poterlo inviare per E-Mail.

Il problema è:

  • Se la gridview è parzializzata come faccio a recuperare i dati, o meglio il dataprovider con i criteri di ricerca applicati per passarlo al module EExcelview?

Scusate ma sono nuovo di Yii… e ci sto letteralmente impazzendo…

Grazie