2011-09-23 14 views
20

Ho un rapporto SSRS (SQL Server 2008 R2) con diversi parametri. Sto riscontrando un problema in cui uno dei parametri non sceglie in modo coerente il valore predefinito quando viene caricato per la prima volta il report.Problema di ridistribuzione dei parametri predefiniti aggiornati nel rapporto SSRS

In particolare, funziona in BIDS ma funziona in modo intermittente (funziona su un server ma non su un altro) una volta distribuito su IIS e visualizzato in IE. A intermittenza, intendo, funziona sul server a cui lo distribuisco, ma quando copio il file RDS su un altro server, il comportamento predefinito per il mio parametro è interrotto.

dettagli

Il parametro ha una serie di valori specificati (costante) interi specificati nella sezione Valori disponibili, che rappresentano una selezione dei periodi di riferimento fissi. I valori predefiniti hanno un singolo valore specificato, che corrisponde a uno dei valori disponibili.

Opzioni: tipo di dati intero, nessun valore null, nessun valore multiplo, parametro visibile, determina automaticamente quando aggiornare.

Qualche idea del perché sto vedendo questo comportamento?

+5

** Ho scoperto la mia risposta a questa domanda. ** Sono dettagliato qui per chiunque altro new-ish per SSRS che potrebbe essere confuso dallo stesso comportamento. I parametri possono essere gestiti separatamente dal file RDL e i valori predefiniti possono essere sovrascritti una volta distribuito il report sul server. Per gestire i parametri sul server: 1. Fare clic sul collegamento del nome del report in alto a sinistra nella pagina del browser. 2. Fare clic sulla scheda Parametri a sinistra. 3. Gestire i parametri secondo necessità (ad es. Impostare il valore predefinito). 4. Fare clic su Applica. 5. Fare clic sul collegamento del nome del report (grande testo in grassetto in alto) per tornare al report. –

+0

Se sei ancora in giro, potrebbe essere una buona idea contrassegnare la soluzione come "accettata" –

risposta

23

Questo è vero, una volta distribuito il report sul server, i parametri vengono controllati a livello del server.
Una volta l'elemento da notare tuttavia è se si ridistribuisce il rapporto con le modifiche ai valori predefiniti NON VERRANNO modificati sul server !!! Il report deve essere eliminato e implementato affinché le nuove impostazioni predefinite abbiano effetto.
Se non si desidera eliminare il report, modificare manualmente i valori predefiniti sul server di report.

+0

Grazie. Questo è esattamente ciò che ho scoperto. Naturalmente, non avevo modo di sapere che il server manteneva il suo valore predefinito, quindi questo era un esempio di ciò che di solito definisco "comportamento misterioso", qualcosa che devi solo sapere altrimenti il ​​comportamento apparente è molto controintuitivo . –

+0

Grazie, elimina e ridistribuisci ha fatto il lavoro. – kmria

+0

Giusto per essere chiari - sono SOLO le impostazioni predefinite per i parametri che non vengono sovrascritte sulla distribuzione. Tutto sarà rinfrescato, credo. – NReilingh

10

Ho scoperto la mia risposta a questa domanda. Sto specificando qui per chiunque altro new-ish per SSRS che potrebbe essere confuso dallo stesso comportamento. I parametri possono essere gestiti separatamente dal file RDL e i valori predefiniti possono essere sovrascritti una volta distribuito il report sul server. Per gestire i parametri sul server:

  1. Fare clic sul collegamento del nome del report in alto a sinistra nella pagina del browser.
  2. Fare clic sulla scheda Parametri a sinistra.
  3. Gestire i parametri secondo necessità (ad esempio, impostare il valore predefinito).
  4. Fare clic su Applica.
  5. Fare clic sul collegamento del nome del report (testo in grassetto grande in alto) per tornare al report.
1

Un'altra soluzione senza dover eliminare i report (il problema quando si elimina il report vengono cancellati anche i registri) consiste nell'aprire il nuovo report distribuito con ReportBuilder (Modifier dans le Générateur de rapports).

Basta salvare il report e i valori di default verranno modificati.

0

consente di dire che il nome del report è xyz.rdl se si è impostato il parametro predefinito e lo si è implementato sul server ora, non verrà modificato sul server. suggerisco 3 opzioni 1. modificare il valore del parametro 'Predefinito' sul server, facendo clic con il tasto destro sul report 2. eliminare il report sul server e ridistribuirlo 3. distribuire un report fittizio o report versione precedente con lo stesso nome pronunciare 'xyz.rdl' che non ha questo parametro, facendo ciò cancellerà i parametri del report sul server, il report rimane intatto.quindi distribuire il nuovo rapporto sulla versione con il parametro predefinito, ora dovrebbe funzionare.

0

Ho avuto un problema simile. Quando un report è stato distribuito sul server "Senza" Predefinito, e successivamente si modifica questo report in Visual Studio e si modifica lo stesso parametro per avere un valore predefinito, il server non rileverà che il report di modifica ha ora un valore predefinito.

La mia soluzione a questo dilemma era di creare un parametro fittizio e metterlo in cima alla lista. Ho quindi ridistribuito il rapporto con il nuovo parametro dummy e lo stesso modificato con un parametro predefinito. Questa volta il server ha rilevato che il parametro a cui ero interessato aveva un valore predefinito. Ho quindi proceduto all'eliminazione del parametro dummy in Visual Studio e ridistribuito il report. Il parametro a cui ero interessato rimaneva come un valore predefinito.

ho impedito la cancellazione della relazione e l'aggiunta di abbonamenti ad esso se avessi andato questa strada al fine di risolvere il mio dilemma.

+0

Funziona davvero? Ho provato tutti i trucchi che potevo inventare: creare e rimuovere parametri fittizi all'inizio e alla fine del report, sia nascosti che visibili, cambiando il prompt del parametro con il nuovo valore predefinito ecc. E il valore predefinito non viene visualizzato . –

0

Ci vuole un po 'di lavoro per gestire correttamente tutti i vari scenari, ma è (almeno per quanto di SQL Server 2012) possibile aggiornare i parametri da uno script caricando il file RDL come file XML , e confrontandolo con le varie impostazioni disponibili dal metodo della SSRS management web service

sulla base di tale confronto ReportingService2010.GetItemParameters, è possibile aggiornare i parametri sul server SSRS utilizzando il metodo ReportingService2010.SetItemParameters.

Infine, esiste un problema di connessione "Report parameter defaults not updated during deployment" che è un po 'più limitato nell'ambito per consentire solo l'aggiornamento automatico dei valori predefiniti dei parametri.

Problemi correlati