2011-02-24 13 views
13

HY! Ho un'applicazione per moduli in Visual Studio 2010 e voglio creare un report con il visualizzatore di report e aggiungere alcuni parametri. Ho provato ad aggiungere parametri dal codice ma non ha funzionato. Ho questo errore:come aggiungere parametri nel visualizzatore di report?

Espressione di espressione di filtro per la Tablix 'Tablix1' si riferisce al campo 'datastart'. Le espressioni delle voci del report possono fare riferimento solo ai campi all'interno dello scope del set di dati corrente o, se all'interno di un aggregato, allo scope del set di dati specificato. Report2.rdlc: errore rsParameterReference: l'espressione FilterValue per Tablix 'Tablix1' fa riferimento a un parametro del rapporto non esistente 'datastart'.

Nel mio codice di fare questo:

private void SetReportParameters() 
    { 
     ReportParameter[] parameters = new ReportParameter[2]; 
     parameters[0] = new ReportParameter("datastart", dateTimePickerStartRaport.Text); 
     parameters[1] = new ReportParameter("dataStop", dateTimePickerStopRaport.Text); 
     this.reportViewer1.LocalReport.SetParameters(parameters); 
    } 

e dopo aver chiamato questo metodo di fare un aggiornamento sul visualizzatore di report

reportViewer1.RefreshReport();   

Ho anche guardare in altri forum e ho visto che ho per aggiungere i parametri al rapporto, ma non ho risolto come devo fare questo. Ho anche provato ad aggiungere, nelle proprietà finestre della relazione, alcuni filtri con valore

=Parameters!datastart.Value  

ma questo lavoro anche didn `t.

risposta

16

L'errore che si ottiene è perché si tenta di specificare il parametro come un campo. Nell'espression-designer hai una categoria speciale chiamata "Parametri". Da lì puoi accedere ai tuoi parametri. La sintassi è =Parameters![FieldName].Value. Nel tuo caso ad esempio =Parameters!datastart.Value.

Inoltre, si noti che i parametri devono essere dichiarati nella finestra "Dati report" sotto "Parametri". È la stessa finestra utilizzata per dichiarare i recordset, tuttavia esiste anche una categoria speciale per i parametri. Ci sono anche alcune opzioni per il tipo di dati e se la specifica del parametro è obbligatoria.

+1

E dov'è la finestra Dati rapporto? – user599977

+10

In ViewMenu di Visual Studio, l'ultima voce di menu: "Report Data" – HCL

+0

* La finestra Report Data * è disponibile anche in combinazione ** Ctrl ** + ** Alt ** + ** D **. Dovrebbe aiutare se non riesci a trovarlo nel menu. –

2

Quindi quando si crea una definizione di report (file rdl o rdlc) è necessario aggiungere parametri con esattamente gli stessi nomi. Quindi per il tuo caso devi aggiungere i parametri datastart e dataStop. Per farlo basta fare clic su Parametri nella finestra Report Data e fare clic su aggiungi nuovo.

Problemi correlati